ImageEditor.st
author Claus Gittinger <cg@exept.de>
Fri, 24 Aug 2018 18:33:41 +0200
changeset 3592 149f58a2a522
parent 3586 87081b50bb22
child 3598 76dd8e2f2fd8
permissions -rw-r--r--
#FEATURE by cg class: ImageEditor added: #makeSelectedColorSlightlyBrighter #makeSelectedColorSlightlyDarker class: ImageEditor class changed: #colorMapMenu
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
3550
b31b44c04a3e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3546
diff changeset
    23
		LastNumThresholdGrayColors LastMagnifyTo LastMagnifyBy
b31b44c04a3e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3546
diff changeset
    24
		LastMagnifySmoothing'
929
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
    25
	poolDictionaries:''
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
    26
	category:'Interface-UIPainter'
400
228524287573 intitial checkin
tz
parents:
diff changeset
    27
!
228524287573 intitial checkin
tz
parents:
diff changeset
    28
228524287573 intitial checkin
tz
parents:
diff changeset
    29
!ImageEditor class methodsFor:'documentation'!
228524287573 intitial checkin
tz
parents:
diff changeset
    30
228524287573 intitial checkin
tz
parents:
diff changeset
    31
copyright
228524287573 intitial checkin
tz
parents:
diff changeset
    32
"
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
    33
 COPYRIGHT (c) 1997-1998 by eXept Software AG
400
228524287573 intitial checkin
tz
parents:
diff changeset
    34
              All Rights Reserved
228524287573 intitial checkin
tz
parents:
diff changeset
    35
228524287573 intitial checkin
tz
parents:
diff changeset
    36
 This software is furnished under a license and may be used
228524287573 intitial checkin
tz
parents:
diff changeset
    37
 only in accordance with the terms of that license and with the
405
8546da96ab11 widgets rearranged for different fonts
tz
parents: 401
diff changeset
    38
 inclusion of the above copyright notice. This software may not
400
228524287573 intitial checkin
tz
parents:
diff changeset
    39
 be provided or otherwise made available to, or used by, any
405
8546da96ab11 widgets rearranged for different fonts
tz
parents: 401
diff changeset
    40
 other person. No title to or ownership of the software is
400
228524287573 intitial checkin
tz
parents:
diff changeset
    41
 hereby transferred.
228524287573 intitial checkin
tz
parents:
diff changeset
    42
"
228524287573 intitial checkin
tz
parents:
diff changeset
    43
!
228524287573 intitial checkin
tz
parents:
diff changeset
    44
228524287573 intitial checkin
tz
parents:
diff changeset
    45
documentation
228524287573 intitial checkin
tz
parents:
diff changeset
    46
"
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
    47
    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
    48
    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
    49
    bitmaps in expecco.
400
228524287573 intitial checkin
tz
parents:
diff changeset
    50
3530
e26aace861c6 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3526
diff changeset
    51
    The actual drawing functionality is found in ImageEditView;
e26aace861c6 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3526
diff changeset
    52
    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
    53
400
228524287573 intitial checkin
tz
parents:
diff changeset
    54
    [start with:]
228524287573 intitial checkin
tz
parents:
diff changeset
    55
        ImageEditor open
941
6d75430a8120 fixed start call in docu
tz
parents: 937
diff changeset
    56
        ImageEditor openOnClass:Icon andSelector:#startIcon
3466
2d5ea09863c6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3465
diff changeset
    57
        (Image fromFile:'../../goodies/bitmaps/gifImages/garfield.gif') edit
2d5ea09863c6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3465
diff changeset
    58
        (Image fromScreen:(0@0 corner:100@100)) edit
400
228524287573 intitial checkin
tz
parents:
diff changeset
    59
228524287573 intitial checkin
tz
parents:
diff changeset
    60
    [see also:]
228524287573 intitial checkin
tz
parents:
diff changeset
    61
        ImageEditView Image
228524287573 intitial checkin
tz
parents:
diff changeset
    62
228524287573 intitial checkin
tz
parents:
diff changeset
    63
    [author:]
544
8fa6ee20c3cd help menu item aligned to the right
tz
parents: 535
diff changeset
    64
        Thomas Zwick, eXept Software AG
1806
2d642633ff7b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1799
diff changeset
    65
        Claus Gittinger, eXept Software AG
400
228524287573 intitial checkin
tz
parents:
diff changeset
    66
"
228524287573 intitial checkin
tz
parents:
diff changeset
    67
! !
228524287573 intitial checkin
tz
parents:
diff changeset
    68
228524287573 intitial checkin
tz
parents:
diff changeset
    69
!ImageEditor class methodsFor:'instance creation'!
228524287573 intitial checkin
tz
parents:
diff changeset
    70
3357
97c7ed5950e5 #FEATURE by stefan
Stefan Vogel <sv@exept.de>
parents: 3356
diff changeset
    71
openLoadingImageWith:aBlock modal:modalBoolean
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
    72
    "opens an Image Editor on anImage.
3427
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
    73
     Returns the editor (to access its attributes)"
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
    74
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
    75
    |editor|
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
    76
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
    77
    editor := self new.
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
    78
    editor allButOpen.
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
    79
    aBlock value:editor.
3357
97c7ed5950e5 #FEATURE by stefan
Stefan Vogel <sv@exept.de>
parents: 3356
diff changeset
    80
    modalBoolean ifTrue:[
97c7ed5950e5 #FEATURE by stefan
Stefan Vogel <sv@exept.de>
parents: 3356
diff changeset
    81
        editor openWindowModal.
97c7ed5950e5 #FEATURE by stefan
Stefan Vogel <sv@exept.de>
parents: 3356
diff changeset
    82
    ] ifFalse:[
97c7ed5950e5 #FEATURE by stefan
Stefan Vogel <sv@exept.de>
parents: 3356
diff changeset
    83
        editor openWindow.
97c7ed5950e5 #FEATURE by stefan
Stefan Vogel <sv@exept.de>
parents: 3356
diff changeset
    84
    ].
2764
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
    85
    ^ editor
3427
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
    86
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
    87
    "Modified (comment): / 07-03-2017 / 16:36:16 / cg"
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
    88
!
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
    89
400
228524287573 intitial checkin
tz
parents:
diff changeset
    90
openModalOnClass: aClass andSelector: aSelector
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
    91
    "opens a modal Image Editor on aClass and aSelector.
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
    92
     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
    93
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
    94
    |imageEditor imageEditView className resourceClass resourceSelector| 
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
    95
400
228524287573 intitial checkin
tz
parents:
diff changeset
    96
    imageEditor := self new.
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
    97
900
5dd8303a9bb5 opens an Image Editor in any case
tz
parents: 899
diff changeset
    98
    aClass isClass  ifTrue: [className := aClass name].
5dd8303a9bb5 opens an Image Editor in any case
tz
parents: 899
diff changeset
    99
    aClass isString ifTrue: [className := aClass].      
903
63203d996e61 openModal bug fixed
tz
parents: 901
diff changeset
   100
    aClass isNil    ifTrue: [className := ''].      
400
228524287573 intitial checkin
tz
parents:
diff changeset
   101
2764
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   102
    imageEditor postOpenAction: [
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   103
            imageEditView := imageEditor imageEditView. 
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   104
            imageEditor loadFromOrPrepareForClass: aClass andSelector: aSelector
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   105
        ].
400
228524287573 intitial checkin
tz
parents:
diff changeset
   106
    imageEditor openModal.
228524287573 intitial checkin
tz
parents:
diff changeset
   107
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
   108
    resourceClass := imageEditView resourceClass.
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
   109
    resourceSelector := imageEditView resourceSelector.
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
   110
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
   111
    (resourceClass isNil or:[resourceSelector isNil]) ifTrue:[^ nil].
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
   112
    ^ Array with:resourceClass with:resourceSelector
1966
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
    "
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   115
     self openModalOnClass: self andSelector: #leftMouseKeyIcon
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   116
    "
400
228524287573 intitial checkin
tz
parents:
diff changeset
   117
!
228524287573 intitial checkin
tz
parents:
diff changeset
   118
3357
97c7ed5950e5 #FEATURE by stefan
Stefan Vogel <sv@exept.de>
parents: 3356
diff changeset
   119
openModalOnFile:aFileName
3427
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   120
    "opens an Image Editor on aFileName.
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   121
     Returns the editor (to access its attributes)"
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   122
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   123
    ^ self openOnFile:aFileName modal:true
3357
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
    "
97c7ed5950e5 #FEATURE by stefan
Stefan Vogel <sv@exept.de>
parents: 3356
diff changeset
   126
     self openModalOnFile: '../../goodies/bitmaps/gifImages/back.gif'
97c7ed5950e5 #FEATURE by stefan
Stefan Vogel <sv@exept.de>
parents: 3356
diff changeset
   127
    "
3411
fd6472405fd0 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3409
diff changeset
   128
3427
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   129
    "Modified: / 07-03-2017 / 16:36:32 / cg"
3357
97c7ed5950e5 #FEATURE by stefan
Stefan Vogel <sv@exept.de>
parents: 3356
diff changeset
   130
!
97c7ed5950e5 #FEATURE by stefan
Stefan Vogel <sv@exept.de>
parents: 3356
diff changeset
   131
2764
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   132
openModalOnImage:anImage
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   133
    "opens a modal Image Editor on an image.
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   134
     Returns the modified image or nil if unsaved/unchanged"
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   135
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   136
    |imageEditor imageEditView newImage| 
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   137
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   138
    imageEditor := self new.
2767
9db214621639 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
   139
    imageEditor allowedToChangeImageDimensionAndDepth:false.
2764
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   140
    imageEditor postOpenAction: [
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   141
            imageEditView := imageEditor imageEditView. 
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   142
            imageEditor loadFromImage: anImage
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   143
        ].
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   144
    imageEditor openModal.
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   145
2766
88fa6c4bf6d3 changed: #openModalOnImage:
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   146
    newImage := imageEditor savedImage.
2764
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   147
    ^ newImage
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   148
!
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   149
1966
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   150
openOnClass:aClass andSelector:aSelector
3427
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   151
    "opens an Image Editor on aClass and aSelector.
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   152
     Returns the editor (to access its attributes)"
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   153
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   154
    ^ self openOnClass:aClass andSelector:aSelector modal:false
1057
36f9d47e1249 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1054
diff changeset
   155
1966
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   156
    "
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   157
     self openOnClass:self andSelector:#leftMouseKeyIcon
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   158
     self openOnClass:self andSelector:nil
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   159
    "
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   160
3427
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   161
    "Modified: / 07-03-2017 / 16:36:58 / cg"
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
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   164
openOnClass:aClass andSelector:aSelector modal:modal
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   165
    "opens an Image Editor on aClass and aSelector.
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   166
     Returns the editor (to access its attributes)"
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   167
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   168
    ^ self 
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   169
        openLoadingImageWith:[:editor | 
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   170
            editor loadFromClass:(aClass theNonMetaclass) andSelector:aSelector
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   171
        ] 
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   172
        modal:modal.
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   173
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   174
    "
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   175
     self openOnClass:self andSelector:#leftMouseKeyIcon modal:true
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   176
     self openOnClass:self andSelector:nil
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
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   179
    "Created: / 07-03-2017 / 16:34:36 / cg"
400
228524287573 intitial checkin
tz
parents:
diff changeset
   180
!
228524287573 intitial checkin
tz
parents:
diff changeset
   181
1966
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   182
openOnFile:aFileName
3427
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   183
    "opens an Image Editor on aFileName.
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   184
     Returns the editor (to access its attributes)"
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   185
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   186
    ^ self openOnFile:aFileName modal:false   
1057
36f9d47e1249 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1054
diff changeset
   187
1966
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   188
    "
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
   189
     self openOnFile: '../../goodies/bitmaps/gifImages/back.gif'
1966
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   190
    "
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   191
3427
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   192
    "Modified: / 07-03-2017 / 16:37:33 / cg"
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
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   195
openOnFile:aFileName modal:modal
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   196
    "opens an Image Editor on aFileName.
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   197
     Returns the editor (to access its attributes)"
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   198
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   199
    ^ self 
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   200
        openLoadingImageWith:[:editor | 
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   201
            editor loadFromFile:aFileName.
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   202
        ] 
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   203
        modal:modal.
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   204
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   205
    "
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   206
     self openOnFile: '../../goodies/bitmaps/gifImages/back.gif' modal:false
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   207
     self openOnFile: '../../goodies/bitmaps/gifImages/back.gif' modal:true
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
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   210
    "Created: / 07-03-2017 / 16:33:12 / cg"
400
228524287573 intitial checkin
tz
parents:
diff changeset
   211
!
228524287573 intitial checkin
tz
parents:
diff changeset
   212
1966
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   213
openOnImage:anImage
3427
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   214
    "opens an Image Editor on anImage.
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   215
     Returns the editor (to access its attributes)"
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   216
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   217
    ^ self 
3375
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
   218
        openLoadingImageWith:[:editor | editor loadFromImage: anImage ] 
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
   219
        modal:false
1053
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
   220
1966
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   221
    "
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   222
     self openOnImage: Icon startIcon
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   223
    "
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
   224
3427
4c2297e8a454 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3426
diff changeset
   225
    "Modified: / 07-03-2017 / 16:37:57 / cg"
400
228524287573 intitial checkin
tz
parents:
diff changeset
   226
! !
228524287573 intitial checkin
tz
parents:
diff changeset
   227
228524287573 intitial checkin
tz
parents:
diff changeset
   228
!ImageEditor class methodsFor:'accessing'!
228524287573 intitial checkin
tz
parents:
diff changeset
   229
228524287573 intitial checkin
tz
parents:
diff changeset
   230
listOfColorMaps
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
   231
    "returns the list of default color maps for a new image"
400
228524287573 intitial checkin
tz
parents:
diff changeset
   232
228524287573 intitial checkin
tz
parents:
diff changeset
   233
    |colorMap|
898
d2ae6ce33fec bugs fixed in undo/mask and pasting
tz
parents: 895
diff changeset
   234
400
228524287573 intitial checkin
tz
parents:
diff changeset
   235
    (colorMap := OrderedCollection new)
228524287573 intitial checkin
tz
parents:
diff changeset
   236
        add: Color black;
228524287573 intitial checkin
tz
parents:
diff changeset
   237
        add: Color white;
228524287573 intitial checkin
tz
parents:
diff changeset
   238
        add: Color red;
228524287573 intitial checkin
tz
parents:
diff changeset
   239
        add: Color green;
228524287573 intitial checkin
tz
parents:
diff changeset
   240
        add: Color blue;
228524287573 intitial checkin
tz
parents:
diff changeset
   241
        add: Color cyan;
228524287573 intitial checkin
tz
parents:
diff changeset
   242
        add: Color yellow;
228524287573 intitial checkin
tz
parents:
diff changeset
   243
        add: Color magenta;
898
d2ae6ce33fec bugs fixed in undo/mask and pasting
tz
parents: 895
diff changeset
   244
        add: (Color redByte: 127 greenByte:   0 blueByte:   0);
d2ae6ce33fec bugs fixed in undo/mask and pasting
tz
parents: 895
diff changeset
   245
        add: (Color redByte:   0 greenByte: 127 blueByte:   0);
d2ae6ce33fec bugs fixed in undo/mask and pasting
tz
parents: 895
diff changeset
   246
        add: (Color redByte:   0 greenByte:   0 blueByte: 127);
d2ae6ce33fec bugs fixed in undo/mask and pasting
tz
parents: 895
diff changeset
   247
        add: (Color redByte:   0 greenByte: 127 blueByte: 127);
d2ae6ce33fec bugs fixed in undo/mask and pasting
tz
parents: 895
diff changeset
   248
        add: (Color redByte: 127 greenByte: 127 blueByte:   0);
d2ae6ce33fec bugs fixed in undo/mask and pasting
tz
parents: 895
diff changeset
   249
        add: (Color redByte: 127 greenByte:   0 blueByte: 127);
d2ae6ce33fec bugs fixed in undo/mask and pasting
tz
parents: 895
diff changeset
   250
        add: (Color redByte: 127 greenByte: 127 blueByte: 127);
d2ae6ce33fec bugs fixed in undo/mask and pasting
tz
parents: 895
diff changeset
   251
        add: (Color redByte: 170 greenByte: 170 blueByte: 170).
d2ae6ce33fec bugs fixed in undo/mask and pasting
tz
parents: 895
diff changeset
   252
3346
15a3fc3d13d9 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3344
diff changeset
   253
    0 to: 5 do: [:r|                                                    
15a3fc3d13d9 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3344
diff changeset
   254
        0 to: 5 do: [:g|
15a3fc3d13d9 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3344
diff changeset
   255
            0 to: 5 do: [:b|
898
d2ae6ce33fec bugs fixed in undo/mask and pasting
tz
parents: 895
diff changeset
   256
                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
   257
            ]
228524287573 intitial checkin
tz
parents:
diff changeset
   258
        ]
228524287573 intitial checkin
tz
parents:
diff changeset
   259
    ].
228524287573 intitial checkin
tz
parents:
diff changeset
   260
3346
15a3fc3d13d9 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3344
diff changeset
   261
    1 to: 25 do: [:g|                             
898
d2ae6ce33fec bugs fixed in undo/mask and pasting
tz
parents: 895
diff changeset
   262
        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
   263
    ].
228524287573 intitial checkin
tz
parents:
diff changeset
   264
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   265
    ^ Dictionary new
2571
8b182cc4cac7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2567
diff changeset
   266
        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
   267
        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
   268
        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
   269
        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
   270
        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
   271
        at: #depth8  put: colorMap;
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   272
        at: #masked8 put: colorMap;
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   273
        at: #depth4  put: (colorMap copyFrom: 1 to: 16);
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   274
        at: #masked4 put: (colorMap copyFrom: 1 to: 16);
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   275
        at: #depth2  put: (colorMap copyFrom: 1 to: 4);
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   276
        at: #masked2 put: (colorMap copyFrom: 1 to: 4);
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   277
        at: #depth1  put: (colorMap copyFrom: 1 to: 2);
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   278
        at: #masked1 put: (colorMap copyFrom: 1 to: 2);
400
228524287573 intitial checkin
tz
parents:
diff changeset
   279
        yourself
228524287573 intitial checkin
tz
parents:
diff changeset
   280
!
228524287573 intitial checkin
tz
parents:
diff changeset
   281
228524287573 intitial checkin
tz
parents:
diff changeset
   282
listOfDefaultSizes
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
   283
    "returns the list of default sizes for a new image"
400
228524287573 intitial checkin
tz
parents:
diff changeset
   284
1960
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
   285
    ^ #('8x8' '16x16' '22x22' '32x32' '48x48' '64x64')
932
7111238cda23 fixed dimension of new-image dialog.
Claus Gittinger <cg@exept.de>
parents: 930
diff changeset
   286
7111238cda23 fixed dimension of new-image dialog.
Claus Gittinger <cg@exept.de>
parents: 930
diff changeset
   287
    "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
   288
!
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   289
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   290
namesOfColorMaps
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   291
    ^ Dictionary new
2571
8b182cc4cac7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2567
diff changeset
   292
        at: #depth32 put: '32-plane (rgba)';
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   293
        at: #depth24 put: '24-plane';
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   294
        at: #masked24 put: '24-plane + mask';
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   295
        at: #depth16 put: '16-plane';
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   296
        at: #masked16 put: '16-plane + mask';
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   297
        at: #depth8  put: ' 8-plane';
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   298
        at: #masked8 put: ' 8-plane + mask';
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   299
        at: #depth4  put: ' 4-plane';
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   300
        at: #masked4 put: ' 4-plane + mask';
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   301
        at: #depth2  put: ' 2-plane';
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   302
        at: #masked2 put: ' 2-plane + mask';
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   303
        at: #depth1  put: ' 1-plane';
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   304
        at: #masked1 put: ' 1-plane + mask' ;
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
   305
        yourself
400
228524287573 intitial checkin
tz
parents:
diff changeset
   306
! !
228524287573 intitial checkin
tz
parents:
diff changeset
   307
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   308
!ImageEditor class methodsFor:'help specs'!
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   309
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   310
helpPairs
2871
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   311
    "This resource specification was automatically generated
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   312
     by the UIHelpTool of ST/X."
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   313
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   314
    "Do not manually edit this!! If it is corrupted,
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   315
     the UIHelpTool may not be able to read the specification."
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   316
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   317
    "
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   318
     UIHelpTool openOnClass:ImageEditor
2871
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   319
    "
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   320
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   321
    <resource: #help>
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   322
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   323
    ^ #(
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   324
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   325
#autoCropAll
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   326
'Find and remove all borders'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   327
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   328
#autoCropBottom
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   329
'Find and remove bottom border'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   330
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   331
#autoCropLeft
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   332
'Find and remove left border'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   333
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   334
#autoCropRight
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   335
'Find and remove right border'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   336
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   337
#autoCropTop
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   338
'Find and remove top border'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   339
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   340
#colorMap
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   341
'ColorMap functions'
929
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
   342
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
   343
#colorMap1
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   344
'Convert to depth-1 image'
929
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
   345
986
4361ba4dbbdc added crob operations.
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
   346
#colorMap1M
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   347
'Convert to depth-1 image plus mask'
986
4361ba4dbbdc added crob operations.
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
   348
929
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
   349
#colorMap2
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   350
'Convert to depth-2 image'
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   351
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   352
#colorMap24
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   353
'Convert to depth-24 image (rgb)'
929
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
   354
986
4361ba4dbbdc added crob operations.
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
   355
#colorMap2M
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   356
'Convert to depth-2 image plus mask'
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   357
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   358
#colorMap32
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   359
'Convert to depth-32 image (rgba)'
986
4361ba4dbbdc added crob operations.
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
   360
929
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
   361
#colorMap4
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   362
'Convert to depth-4 image'
929
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
   363
986
4361ba4dbbdc added crob operations.
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
   364
#colorMap4M
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   365
'Convert to depth-4 image plus mask'
986
4361ba4dbbdc added crob operations.
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
   366
929
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
   367
#colorMap8
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   368
'Convert to depth-8 image'
929
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
   369
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
   370
#colorMap8M
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   371
'Convert to depth-8 image plus mask'
2571
8b182cc4cac7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2567
diff changeset
   372
986
4361ba4dbbdc added crob operations.
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
   373
#colorMapTable
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   374
'Shows a list of used colors of the image'
986
4361ba4dbbdc added crob operations.
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
   375
929
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
   376
#compressColormap
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   377
'Remove unneeded entries from the colorMap'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   378
1045
c387bcacdf37 renamed - crob -> crop
Claus Gittinger <cg@exept.de>
parents: 1033
diff changeset
   379
#cropAll
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   380
'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
   381
1045
c387bcacdf37 renamed - crob -> crop
Claus Gittinger <cg@exept.de>
parents: 1033
diff changeset
   382
#cropBottom
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   383
'Cut off the specified number of pixels at the bottom'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   384
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   385
#cropBySelectingArea
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   386
'Select new area in the right detail view.'
986
4361ba4dbbdc added crob operations.
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
   387
1045
c387bcacdf37 renamed - crob -> crop
Claus Gittinger <cg@exept.de>
parents: 1033
diff changeset
   388
#cropLeft
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   389
'Cut off the specified number of pixels at the left'
986
4361ba4dbbdc added crob operations.
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
   390
1045
c387bcacdf37 renamed - crob -> crop
Claus Gittinger <cg@exept.de>
parents: 1033
diff changeset
   391
#cropManual
986
4361ba4dbbdc added crob operations.
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
   392
'Specify border(s) to remove.'
4361ba4dbbdc added crob operations.
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
   393
1045
c387bcacdf37 renamed - crob -> crop
Claus Gittinger <cg@exept.de>
parents: 1033
diff changeset
   394
#cropRight
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   395
'Cut off the specified number of pixels at the right'
986
4361ba4dbbdc added crob operations.
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
   396
1045
c387bcacdf37 renamed - crob -> crop
Claus Gittinger <cg@exept.de>
parents: 1033
diff changeset
   397
#cropTop
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   398
'Cut off the specified number of pixels at the top'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   399
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   400
#cropubImage
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   401
'Select a subarea as the image''s new dimension'
487
6c336c183330 info bar as subSpec to class ToolApplicationModel moved
tz
parents: 475
diff changeset
   402
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   403
#drawModeBox
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   404
'Rectangle Drawing Mode'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   405
2375
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
   406
#drawModeCircle
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   407
'Circle Drawing Mode'
2375
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
   408
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   409
#drawModeCopy
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   410
'Area Copy Mode'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   411
3423
1b9fb486b83c #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3422
diff changeset
   412
#drawModeCropSubImage
1b9fb486b83c #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3422
diff changeset
   413
'Select and extract a subimage'
1b9fb486b83c #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3422
diff changeset
   414
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   415
#drawModeFill
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   416
'Flood Fill Mode'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   417
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   418
#drawModeFilledBox
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   419
'Filled Rectangle Drawing Mode'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   420
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   421
#drawModeFilledCircle
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   422
'Filled Circle Drawing Mode'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   423
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   424
#drawModeMaskOutsideCircle
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   425
'Mask everything outside a Circle'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   426
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   427
#drawModeMaskOutsideRectangle
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   428
'Mask everything outside a Rectangle'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   429
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   430
#drawModePaste
3512
36cd31bca6a4 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3506
diff changeset
   431
'Paste-Over Mode (only paste pixels; keep mask as is)'
914
b4f32d092c8b added paste-under;
Claus Gittinger <cg@exept.de>
parents: 911
diff changeset
   432
3562
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
   433
#drawModePasteMasked
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
   434
'Paste-Under Mode (only paste previously masked pixels)'
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
   435
914
b4f32d092c8b added paste-under;
Claus Gittinger <cg@exept.de>
parents: 911
diff changeset
   436
#drawModePasteUnder
3561
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
   437
'Paste-Under Mode (only paste previously masked pixels where the new pixel is also masked)'
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
   438
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   439
#drawModePasteWithMask
3512
36cd31bca6a4 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3506
diff changeset
   440
'Paste-with-Mask Mode (both pixel and mask are pasted)'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   441
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   442
#drawModePoint
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   443
'Point Drawing Mode'
2375
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
   444
1639
8f2059cc287c checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1637
diff changeset
   445
#drawModeSpecial
2871
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   446
'Special operations (select rectangle, then choose operation)'
1639
8f2059cc287c checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1637
diff changeset
   447
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   448
#drawModeSpray
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   449
'Spray Drawing Mode'
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   450
3562
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
   451
#drawingAlpha
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
   452
'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'
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
   453
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
   454
#drawingColor1
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
   455
'The color associated to the left mouse button.\Also the color used in fill operations'
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
   456
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
   457
#drawingColor2
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
   458
'The color associated to the right mouse button.\Also the second color used in gradient fill operations'
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
   459
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   460
#edit3DProjection
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   461
'Generate a 3D projection'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   462
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   463
#editFlipHorizontal
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   464
'Flip the image horizontally'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   465
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   466
#editFlipVertical
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   467
'Flip the image vertically'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   468
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   469
#editMagnifyImage
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   470
'Magnify the image'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   471
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   472
#editNegate
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   473
'Invert the images colors'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   474
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   475
#editResize
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   476
'Resize the image (preserving the old image)'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   477
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   478
#editRotate
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   479
'Rotate the image'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   480
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   481
#fileEditMask
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   482
'Load Mask from a File'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   483
2701
5abe05ebb370 added: grabWindowImage (menu)
Claus Gittinger <cg@exept.de>
parents: 2663
diff changeset
   484
#fileGrabImageFromScreen
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   485
'Pick an image from the screen (specify area)'
2701
5abe05ebb370 added: grabWindowImage (menu)
Claus Gittinger <cg@exept.de>
parents: 2663
diff changeset
   486
5abe05ebb370 added: grabWindowImage (menu)
Claus Gittinger <cg@exept.de>
parents: 2663
diff changeset
   487
#fileGrabImageFromWindow
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   488
'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
   489
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   490
#fileLoadFromClass
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   491
'Select and load an image from a resource method'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   492
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   493
#fileLoadFromFile
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   494
'Select and load an image from a file'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   495
2796
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
   496
#fileLoadFromURL
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
   497
'Load an image from the net, given its URL'
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
   498
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   499
#fileNewImage
914
b4f32d092c8b added paste-under;
Claus Gittinger <cg@exept.de>
parents: 911
diff changeset
   500
'Create a new image'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   501
3200
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
   502
#fileNewImageFromClipboard
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
   503
'Create a new image and initialize it from the clipboard'
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
   504
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
   505
#fileNewMaskFromClipboard
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
   506
'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
   507
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   508
#filePrint
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   509
'Print the image on a postscript printer'
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   510
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   511
#filePrint
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   512
'Print'
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   513
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   514
#fileSave
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   515
'Save the image'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   516
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   517
#fileSaveAs
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   518
'Save the image to a file'
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   519
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   520
#fileSaveButtonImageAs
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   521
'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
   522
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   523
#fileSaveMaskAs
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   524
'Save the mask of the image to a file'
1613
1d4f11252d3b saveAsButtonImage added
ca
parents: 1611
diff changeset
   525
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   526
#fileSaveMethod
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   527
'Save the image as resource method in the current class and selector'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   528
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   529
#fileSaveMethodAs
2765
c74bcf69878b changed: #helpSpec
Claus Gittinger <cg@exept.de>
parents: 2764
diff changeset
   530
'Save the image as resource method in a class'
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   531
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   532
#floodFillMaxError
3433
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
   533
'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
   534
3562
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
   535
#hueShift
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
   536
''
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
   537
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
   538
#lightFactor
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
   539
''
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
   540
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   541
#magnificationNumber
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   542
'Shows the current magnification'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   543
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   544
#magnifyImageDown
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   545
'Decrease magnification'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   546
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   547
#magnifyImageUp
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   548
'Increase magnification'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   549
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   550
#mouseKeyColorMode
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   551
'Toggle between left and right mouse button color'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   552
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   553
#nextImageInSequence
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   554
'Go to the next image in the animated gif image sequence.'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   555
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   556
#previewView
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   557
'Shows a preview of the image'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   558
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   559
#previousImageInSequence
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   560
'Go to the previous image in the animated gif image sequence.'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   561
3562
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
   562
#resetHueShift
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
   563
'Reset the hue shift to zero (for unchanged hue)'
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
   564
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
   565
#resetLightFactor
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
   566
'Reset the light factor to 1 (for unchanged brightness)'
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
   567
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
   568
#resetSaturationFactor
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
   569
'Reset the saturation factor to 1 (for unchanged saturation)'
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
   570
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
   571
#saturationFactor
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
   572
''
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
   573
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   574
#settingsGridMagnification
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   575
'Change the grid magnification of the edit view'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   576
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   577
#xdrawModeBox
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   578
'Rectangle'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   579
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   580
#xdrawModeCopy
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   581
'Copy'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   582
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   583
#xdrawModeFill
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   584
'Flood-fill'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   585
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   586
#xdrawModeFilledBox
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   587
'Filled rectangle'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   588
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   589
#xdrawModePaste
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   590
'Paste'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   591
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   592
#xdrawModePasteUnder
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   593
'Paste under'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   594
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   595
#xdrawModePasteWithMask
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   596
'Paste with Mask'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   597
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   598
#xdrawModePoint
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   599
'Point'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   600
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   601
#xfileGrabImage
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   602
'Pick from screen'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   603
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   604
#xfileLoadFromClass
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   605
'Load from method...'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   606
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   607
#xfileLoadFromFile
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   608
'Load from file...'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   609
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   610
#xfileNewImage
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   611
'New image'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   612
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   613
#xfileSaveAs
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   614
'Save to file...'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   615
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   616
#xfileSaveMaskAs
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   617
'Save mask to file...'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   618
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   619
#xfileSaveMethod
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   620
'Save as method'
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   621
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   622
#xfileSaveMethodAs
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
   623
'Save as Method...'
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   624
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   625
)
2871
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   626
3562
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
   627
    "Modified: / 27-05-2018 / 12:16:51 / Claus Gittinger"
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   628
!
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   629
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   630
helpSpec
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   631
    <resource: #programHelp>
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   632
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   633
    ^super helpSpec addPairsFrom:(self helpPairs)
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   634
3513
79c3eab8cb2f #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3512
diff changeset
   635
    "Modified: / 16-02-2017 / 12:30:55 / cg"
460
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   636
! !
9d141cb07d5e help texts added
tz
parents: 450
diff changeset
   637
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
   638
!ImageEditor class methodsFor:'image specs'!
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
   639
3419
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   640
brighterIcon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   641
    "This resource specification was automatically generated
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   642
     by the ImageEditor of ST/X."
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   643
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   644
    "Do not manually edit this!! If it is corrupted,
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   645
     the ImageEditor may not be able to read the specification."
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   646
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   647
    "
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   648
     self brighterIcon inspect
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   649
     ImageEditor openOnClass:self andSelector:#brighterIcon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   650
     Icon flushCachedIcons
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   651
    "
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   652
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   653
    <resource: #image>
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   654
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   655
    ^Icon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   656
        constantNamed:'ImageEditor class brighterIcon'
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   657
        ifAbsentPut:[(Depth8Image width:14 height:14) bits:(ByteArray fromPackedString:'
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   658
@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
   659
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
   660
;><A@PDA@PDA@PDA@PDA@P@a')
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   661
            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
   662
            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
   663
!
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   664
2272
d1923697d456 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2260
diff changeset
   665
circleIcon
d1923697d456 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2260
diff changeset
   666
    "This resource specification was automatically generated
d1923697d456 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2260
diff changeset
   667
     by the ImageEditor of ST/X."
3442
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
   668
2272
d1923697d456 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2260
diff changeset
   669
    "Do not manually edit this!! If it is corrupted,
d1923697d456 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2260
diff changeset
   670
     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
   671
2272
d1923697d456 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2260
diff changeset
   672
    "
d1923697d456 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2260
diff changeset
   673
     self circleIcon inspect
d1923697d456 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2260
diff changeset
   674
     ImageEditor openOnClass:self andSelector:#circleIcon
3442
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
   675
     Icon flushCachedIcons
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
   676
    "
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
   677
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
   678
    <resource: #image>
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
   679
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
   680
    ^Icon
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
   681
        constantNamed:'ImageEditor class circleIcon'
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
   682
        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
   683
            colorMapFromArray:#[0 0 0 127 127 127]
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
   684
            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
   685
!
d1923697d456 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2260
diff changeset
   686
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   687
copyIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   688
    <resource: #image>
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   689
    "This resource specification was automatically generated
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   690
     by the ImageEditor of ST/X."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   691
    "Do not manually edit this!! If it is corrupted,
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   692
     the ImageEditor may not be able to read the specification."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   693
    "
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   694
     self copyIcon inspect
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   695
     ImageEditor openOnClass:self andSelector:#copyIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   696
     Icon flushCachedIcons"
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   697
    
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   698
    ^ Icon constantNamed:'ImageEditor class copyIcon'
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   699
        ifAbsentPut:[
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   700
            (Depth2Image new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   701
                width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   702
                height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   703
                photometric:(#palette);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   704
                bitsPerSample:(#( 2 ));
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   705
                samplesPerPixel:(1);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   706
                bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   707
                            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
   708
                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
   709
                mask:((ImageMask new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   710
                            width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   711
                            height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   712
                            bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   713
                                        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
   714
                            yourself);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   715
                yourself
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   716
        ]
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   717
!
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   718
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   719
cropSubImageIcon
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   720
    "This resource specification was automatically generated
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   721
     by the ImageEditor of ST/X."
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   722
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   723
    "Do not manually edit this!! If it is corrupted,
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   724
     the ImageEditor may not be able to read the specification."
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   725
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   726
    "
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   727
     self cropSubImageIcon inspect
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   728
     ImageEditor openOnClass:self andSelector:#cropSubImageIcon
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   729
     Icon flushCachedIcons
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   730
    "
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   731
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   732
    <resource: #image>
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   733
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   734
    ^Icon
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   735
        constantNamed:'ImageEditor class cropSubImageIcon'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   736
        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
   737
            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
   738
            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
   739
!
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
   740
3419
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   741
darkerIcon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   742
    "This resource specification was automatically generated
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   743
     by the ImageEditor of ST/X."
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   744
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   745
    "Do not manually edit this!! If it is corrupted,
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   746
     the ImageEditor may not be able to read the specification."
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   747
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   748
    "
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   749
     self darkerIcon inspect
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   750
     ImageEditor openOnClass:self andSelector:#darkerIcon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   751
     Icon flushCachedIcons
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   752
    "
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
    <resource: #image>
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   755
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   756
    ^Icon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   757
        constantNamed:'ImageEditor class darkerIcon'
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   758
        ifAbsentPut:[(Depth8Image width:14 height:14) bits:(ByteArray fromPackedString:'
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   759
@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
   760
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
   761
9^TA@PDA@PDA@PDA@PDA@P@a')
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   762
            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
   763
            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
   764
!
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   765
2155
bfc839d08928 Add #defaultIcon
Stefan Vogel <sv@exept.de>
parents: 2136
diff changeset
   766
defaultIcon
bfc839d08928 Add #defaultIcon
Stefan Vogel <sv@exept.de>
parents: 2136
diff changeset
   767
    <resource: #programImage>
bfc839d08928 Add #defaultIcon
Stefan Vogel <sv@exept.de>
parents: 2136
diff changeset
   768
bfc839d08928 Add #defaultIcon
Stefan Vogel <sv@exept.de>
parents: 2136
diff changeset
   769
    ^ ToolbarIconLibrary startImageEditorIcon
bfc839d08928 Add #defaultIcon
Stefan Vogel <sv@exept.de>
parents: 2136
diff changeset
   770
!
bfc839d08928 Add #defaultIcon
Stefan Vogel <sv@exept.de>
parents: 2136
diff changeset
   771
3419
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   772
editIcon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   773
    "This resource specification was automatically generated
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   774
     by the ImageEditor of ST/X."
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   775
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   776
    "Do not manually edit this!! If it is corrupted,
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   777
     the ImageEditor may not be able to read the specification."
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   778
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   779
    "
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   780
     self editIcon inspect
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   781
     ImageEditor openOnClass:self andSelector:#editIcon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   782
     Icon flushCachedIcons
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   783
    "
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   784
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   785
    <resource: #image>
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   786
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   787
    ^Icon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   788
        constantNamed:'ImageEditor class editIcon'
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   789
        ifAbsentPut:[(Depth8Image width:15 height:16) bits:(ByteArray fromPackedString:'
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   790
@@@@@@@3V41AJ0T@@@@@@@@@@B1(TD4>EP@@@@@@@@@@@CA!!S4X2D@@@@@@@@@@@LV)XTTHX@@@@@@@@@@@@K6UTS$LR@@@@@@@@@@@9OE9VRQ8@@@@@@@@@
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   791
@@@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
   792
@@ IDP@@@@@@@@@@@@@@@@\K@@@@@@@@@@@@@@@@@A,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@')
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   793
            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
   794
            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
   795
!
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
   796
3418
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   797
emptyIcon
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   798
    "This resource specification was automatically generated
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   799
     by the ImageEditor of ST/X."
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   800
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   801
    "Do not manually edit this!! If it is corrupted,
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   802
     the ImageEditor may not be able to read the specification."
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   803
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
     self emptyIcon inspect
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   806
     ImageEditor openOnClass:self andSelector:#emptyIcon
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   807
     Icon flushCachedIcons
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   808
    "
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
    <resource: #image>
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   811
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   812
    ^Icon
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   813
        constantNamed:'ImageEditor class emptyIcon'
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   814
        ifAbsentPut:[(Depth4Image width:14 height:14) bits:(ByteArray fromPackedString:'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   815
@@@@@@@@@@@b')
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   816
            colorMapFromArray:#[0 0 0]
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   817
            mask:((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
   818
!
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   819
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   820
emptyIcon2
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   821
    "This resource specification was automatically generated
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   822
     by the ImageEditor of ST/X."
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   823
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   824
    "Do not manually edit this!! If it is corrupted,
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   825
     the ImageEditor may not be able to read the specification."
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   826
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   827
    "
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   828
     self emptyIcon2 inspect
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   829
     ImageEditor openOnClass:self andSelector:#emptyIcon2
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   830
     Icon flushCachedIcons
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   831
    "
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   832
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   833
    <resource: #image>
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   834
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   835
    ^Icon
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   836
        constantNamed:'ImageEditor class emptyIcon2'
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   837
        ifAbsentPut:[(Depth4Image width:28 height:14) bits:(ByteArray fromPackedString:'
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   838
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   839
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   840
@@@@@@@@@@@@@@@@@@@@@@@a')
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   841
            colorMapFromArray:#[0 0 0]
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   842
            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
   843
!
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   844
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   845
fillCircleIcon
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   846
    "This resource specification was automatically generated
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   847
     by the ImageEditor of ST/X."
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   848
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   849
    "Do not manually edit this!! If it is corrupted,
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   850
     the ImageEditor may not be able to read the specification."
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   851
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   852
    "
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   853
     self fillCircleIcon inspect
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   854
     ImageEditor openOnClass:self andSelector:#fillCircleIcon
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   855
     Icon flushCachedIcons
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   856
    "
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   857
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   858
    <resource: #image>
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   859
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   860
    ^Icon
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   861
        constantNamed:'ImageEditor class fillCircleIcon'
3443
b9d9eb4b34f9 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3442
diff changeset
   862
        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
   863
            colorMapFromArray:#[0 0 0 127 127 127]
b9d9eb4b34f9 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3442
diff changeset
   864
            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
   865
!
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
   866
3418
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   867
fillDiagonalGradientRectIcon
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   868
    "This resource specification was automatically generated
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   869
     by the ImageEditor of ST/X."
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   870
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   871
    "Do not manually edit this!! If it is corrupted,
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   872
     the ImageEditor may not be able to read the specification."
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   873
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   874
    "
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   875
     self fillDiagonalGradientRectIcon inspect
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   876
     ImageEditor openOnClass:self andSelector:#fillDiagonalGradientRectIcon
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   877
     Icon flushCachedIcons
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   878
    "
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   879
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   880
    <resource: #image>
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   881
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   882
    ^Icon
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   883
        constantNamed:'ImageEditor class fillDiagonalGradientRectIcon'
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   884
        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
   885
@@@@@@@@@@@b')
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   886
            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
   887
            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
   888
!
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   889
2871
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   890
fillGradientRectIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   891
    <resource: #image>
2871
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   892
    "This resource specification was automatically generated
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   893
     by the ImageEditor of ST/X."
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   894
    "Do not manually edit this!! If it is corrupted,
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   895
     the ImageEditor may not be able to read the specification."
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   896
    "
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   897
     self fillGradientRectIcon inspect
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   898
     ImageEditor openOnClass:self andSelector:#fillGradientRectIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   899
     Icon flushCachedIcons"
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   900
    
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   901
    ^ Icon constantNamed:'ImageEditor class fillGradientRectIcon'
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   902
        ifAbsentPut:[
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   903
            (Depth4Image new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   904
                width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   905
                height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   906
                photometric:(#palette);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   907
                bitsPerSample:(#[ 4 ]);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   908
                samplesPerPixel:(1);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   909
                bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   910
                            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
   911
@@@@@@@@@@@b');
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   912
                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
   913
                mask:((ImageMask new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   914
                            width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   915
                            height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   916
                            bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   917
                                        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
   918
                            yourself);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   919
                yourself
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   920
        ]
2871
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   921
!
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   922
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   923
fillHorizontalGradientRectIcon
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   924
    "This resource specification was automatically generated
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   925
     by the ImageEditor of ST/X."
3418
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   926
2871
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   927
    "Do not manually edit this!! If it is corrupted,
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   928
     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
   929
2871
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   930
    "
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   931
     self fillHorizontalGradientRectIcon inspect
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   932
     ImageEditor openOnClass:self andSelector:#fillHorizontalGradientRectIcon
3418
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   933
     Icon flushCachedIcons
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   934
    "
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   935
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   936
    <resource: #image>
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   937
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   938
    ^Icon
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   939
        constantNamed:'ImageEditor class fillHorizontalGradientRectIcon'
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   940
        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
   941
@@@@@@@@@@@b')
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
   942
            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
   943
            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
   944
!
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
   945
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   946
fillIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   947
    <resource: #image>
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   948
    "This resource specification was automatically generated
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   949
     by the ImageEditor of ST/X."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   950
    "Do not manually edit this!! If it is corrupted,
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   951
     the ImageEditor may not be able to read the specification."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   952
    "
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   953
     self fillIcon inspect
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   954
     ImageEditor openOnClass:self andSelector:#fillIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   955
     Icon flushCachedIcons"
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   956
    
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   957
    ^ Icon constantNamed:'ImageEditor class fillIcon'
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   958
        ifAbsentPut:[
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   959
            (Depth2Image new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   960
                width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   961
                height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   962
                photometric:(#palette);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   963
                bitsPerSample:(#( 2 ));
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   964
                samplesPerPixel:(1);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   965
                bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   966
                            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
   967
                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
   968
                mask:((ImageMask new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   969
                            width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   970
                            height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   971
                            bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   972
                                        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
   973
                            yourself);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   974
                yourself
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   975
        ]
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   976
!
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   977
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   978
fillRectIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   979
    <resource: #image>
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   980
    "This resource specification was automatically generated
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   981
     by the ImageEditor of ST/X."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   982
    "Do not manually edit this!! If it is corrupted,
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   983
     the ImageEditor may not be able to read the specification."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   984
    "
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   985
     self fillRectIcon inspect
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
   986
     ImageEditor openOnClass:self andSelector:#fillRectIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   987
     Icon flushCachedIcons"
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   988
    
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   989
    ^ Icon constantNamed:'ImageEditor class fillRectIcon'
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   990
        ifAbsentPut:[
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   991
            (Depth1Image new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   992
                width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   993
                height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   994
                photometric:(#palette);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   995
                bitsPerSample:(#( 1 ));
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   996
                samplesPerPixel:(1);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   997
                bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   998
                            fromPackedString:'@@@@@@@A@@@@@@@@@@@@@@@@@@@@@@@@@@D@@@@a');
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
   999
                colorMapFromArray:#[ 0 0 0 255 0 0 ];
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1000
                mask:((ImageMask new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1001
                            width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1002
                            height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1003
                            bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1004
                                        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
  1005
                            yourself);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1006
                yourself
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1007
        ]
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1008
!
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1009
2871
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
  1010
fillVerticalGradientRectIcon
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
  1011
    "This resource specification was automatically generated
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
  1012
     by the ImageEditor of ST/X."
3418
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  1013
2871
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
  1014
    "Do not manually edit this!! If it is corrupted,
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
  1015
     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
  1016
2871
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
  1017
    "
3418
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  1018
     self fillVerticalGradientRectIcon inspect
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  1019
     ImageEditor openOnClass:self andSelector:#fillVerticalGradientRectIcon
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  1020
     Icon flushCachedIcons
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  1021
    "
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  1022
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  1023
    <resource: #image>
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  1024
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  1025
    ^Icon
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  1026
        constantNamed:'ImageEditor class fillVerticalGradientRectIcon'
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  1027
        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
  1028
@@@@@@@@@@@b')
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  1029
            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
  1030
            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
  1031
!
23c3bb9d51be #localHelpTexts
Claus Gittinger <cg@exept.de>
parents: 2870
diff changeset
  1032
2837
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1033
flipHorizontalIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1034
    <resource: #image>
2837
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1035
    "This resource specification was automatically generated
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1036
     by the ImageEditor of ST/X."
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1037
    "Do not manually edit this!! If it is corrupted,
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1038
     the ImageEditor may not be able to read the specification."
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1039
    "
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1040
     self flipHorizontalIcon inspect
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1041
     ImageEditor openOnClass:self andSelector:#flipHorizontalIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1042
     Icon flushCachedIcons"
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1043
    
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1044
    ^ Icon constantNamed:'ImageEditor class flipHorizontalIcon'
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1045
        ifAbsentPut:[
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1046
            (Depth1Image new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1047
                width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1048
                height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1049
                photometric:(#palette);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1050
                bitsPerSample:(#( 1 ));
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1051
                samplesPerPixel:(1);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1052
                bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1053
                            fromPackedString:'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a');
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1054
                colorMapFromArray:#[ 0 0 0 ];
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1055
                mask:((ImageMask new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1056
                            width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1057
                            height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1058
                            bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1059
                                        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
  1060
                            yourself);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1061
                yourself
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1062
        ]
2837
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1063
!
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1064
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1065
flipVerticalIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1066
    <resource: #image>
2837
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1067
    "This resource specification was automatically generated
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1068
     by the ImageEditor of ST/X."
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1069
    "Do not manually edit this!! If it is corrupted,
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1070
     the ImageEditor may not be able to read the specification."
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1071
    "
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1072
     self flipVerticalIcon inspect
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1073
     ImageEditor openOnClass:self andSelector:#flipVerticalIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1074
     Icon flushCachedIcons"
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1075
    
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1076
    ^ Icon constantNamed:'ImageEditor class flipVerticalIcon'
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1077
        ifAbsentPut:[
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1078
            (Depth1Image new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1079
                width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1080
                height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1081
                photometric:(#palette);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1082
                bitsPerSample:(#( 1 ));
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1083
                samplesPerPixel:(1);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1084
                bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1085
                            fromPackedString:'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a');
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1086
                colorMapFromArray:#[ 0 0 0 ];
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1087
                mask:((ImageMask new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1088
                            width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1089
                            height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1090
                            bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1091
                                        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
  1092
                            yourself);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1093
                yourself
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1094
        ]
2837
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1095
!
Claus Gittinger <cg@exept.de>
parents: 2827
diff changeset
  1096
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1097
leftMouseKeyIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1098
    <resource: #image>
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1099
    "This resource specification was automatically generated
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1100
     by the ImageEditor of ST/X."
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1101
    "Do not manually edit this!! If it is corrupted,
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1102
     the ImageEditor may not be able to read the specification."
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1103
    "
1405
0b2e421db465 images compactified
Claus Gittinger <cg@exept.de>
parents: 1403
diff changeset
  1104
     self leftMouseKeyIcon inspect
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1105
     ImageEditor openOnClass:self andSelector:#leftMouseKeyIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1106
     Icon flushCachedIcons"
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1107
    
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1108
    ^ Icon constantNamed:'ImageEditor class leftMouseKeyIcon'
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1109
        ifAbsentPut:[
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1110
            (Depth2Image new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1111
                width:16;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1112
                height:16;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1113
                photometric:(#palette);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1114
                bitsPerSample:(#( 2 ));
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1115
                samplesPerPixel:(1);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1116
                bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1117
                            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
  1118
                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
  1119
                mask:((ImageMask new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1120
                            width:16;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1121
                            height:16;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1122
                            bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1123
                                        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
  1124
                            yourself);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1125
                yourself
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1126
        ]
1433
df38b2a5d335 checkin from browser
martin
parents: 1424
diff changeset
  1127
!
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1128
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1129
maskOutsideCircleIcon
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 maskOutsideCircleIcon inspect
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1138
     ImageEditor openOnClass:self andSelector:#maskOutsideCircleIcon
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 maskOutsideCircleIcon'
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1146
        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
  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
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1151
maskOutsideRectangleIcon
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1152
    "This resource specification was automatically generated
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1153
     by the ImageEditor of ST/X."
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1154
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1155
    "Do not manually edit this!! If it is corrupted,
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1156
     the ImageEditor may not be able to read the specification."
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1157
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1158
    "
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1159
     self maskOutsideRectangleIcon inspect
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1160
     ImageEditor openOnClass:self andSelector:#maskOutsideRectangleIcon
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1161
     Icon flushCachedIcons
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1162
    "
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1163
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1164
    <resource: #image>
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1165
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1166
    ^Icon
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1167
        constantNamed:'ImageEditor class maskOutsideRectangleIcon'
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1168
        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
  1169
            colorMapFromArray:#[0 0 0 255 127 127]
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1170
            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
  1171
!
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  1172
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1173
pasteIcon
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1174
    "This resource specification was automatically generated
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1175
     by the ImageEditor of ST/X."
3561
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1176
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1177
    "Do not manually edit this!! If it is corrupted,
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1178
     the ImageEditor may not be able to read the specification."
3561
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1179
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1180
    "
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1181
     self pasteIcon inspect
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1182
     ImageEditor openOnClass:self andSelector:#pasteIcon
3561
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1183
     Icon flushCachedIcons
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1184
    "
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1185
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1186
    <resource: #image>
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1187
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1188
    ^Icon
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1189
        constantNamed:'ImageEditor class pasteIcon'
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1190
        ifAbsentPut:[(Depth8Image width:14 height:14) bits:(ByteArray fromPackedString:'
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1191
:N#(:N#(:N#(:N#(:N#(:N#(:O#8:N#(:N#(:N#5>^#8:N#8:OW9:N#(:O''(=/[6=/[6:OW(:N#(=^#(:N#(:N#(>^#(:N#9=_''5>_W9=_''5:N#(:@DA@PDA
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1192
@PDA=_''(@@C(@_[6= @@@@@@@@@@@N A=/[6@@XFA XFA @@:@G6=/X@A X@@@XF@@C(@_[6= @F@@@@@@X@@N A=/[6@@XF@@@FA @@@@DA@PD@A XFA XF
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1193
@@@@@@@@@@@@@@@@@@@@@@@a')
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1194
            colorMapFromArray:#[0 0 0 0 0 128 128 128 0 128 128 128 212 208 200 255 255 0 255 255 255 0 0 51 0 0 102 0 0 153 0 0 204 0 0 255 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 0 0 255 51 0 255 102 0 255 153 0 255 204 0 255 255 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 0 255 0 51 255 0 102 255 0 153 255 0 204 255 0 255 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 9 9 9 19 19 19 29 29 29 39 39 39 49 49 49 58 58 58 68 68 68 78 78 78 88 88 88 98 98 98 107 107 107 117 117 117 127 127 127 137 137 137 147 147 147 156 156 156 166 166 166 176 176 176 186 186 186 196 196 196 205 205 205 215 215 215 225 225 225 235 235 235 245 245 245 191 191 191 233 231 227 127 127 127 255 255 127 191 191 127]
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1195
            mask:((ImageMask width:14 height:14) bits:(ByteArray fromPackedString:'C0A?8O?0??C?<O?0??C?>O?8??#?>O?8_? G>@@a'); yourself); yourself]
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1196
!
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1197
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1198
pasteMaskedIcon
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1199
    "This resource specification was automatically generated
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1200
     by the ImageEditor of ST/X."
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1201
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1202
    "Do not manually edit this!! If it is corrupted,
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1203
     the ImageEditor may not be able to read the specification."
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1204
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1205
    "
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1206
     self pasteMaskedIcon inspect
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1207
     ImageEditor openOnClass:self andSelector:#pasteMaskedIcon
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1208
     Icon flushCachedIcons
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1209
    "
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1210
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1211
    <resource: #image>
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1212
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1213
    ^Icon
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1214
        constantNamed:'ImageEditor class pasteMaskedIcon'
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1215
        ifAbsentPut:[(Depth8Image width:14 height:14) bits:(ByteArray fromPackedString:'
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1216
:N#(:N#(:N#(:N#(:N#(:N#(:O#8:N#(:N#(:N#5>^#8:N#8:OW9:N#(:O''(=/[6=/[6:OW(:N#(=^#(:N#(:N#(>^#(:N#9=_''5>_W9=_''5:N#(:@DA@PDA
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1217
@PDA=_''(@@C(@_[6=/[6= D@@@@@@N A=/[6= XFA XFA @@:@G6=/[6A X@@@XF@@C(@_[6=/XF= @@@@X@@N A=/[6= XF@@@FA @@@@DA@PDA@PDAA XF
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1218
@@@@@@@@@@@@@@@@@@@@@@@a')
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1219
            colorMapFromArray:#[0 0 0 0 0 128 128 128 0 128 128 128 212 208 200 255 255 0 255 255 255 0 0 51 0 0 102 0 0 153 0 0 204 0 0 255 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 0 0 255 51 0 255 102 0 255 153 0 255 204 0 255 255 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 0 255 0 51 255 0 102 255 0 153 255 0 204 255 0 255 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 9 9 9 19 19 19 29 29 29 39 39 39 49 49 49 58 58 58 68 68 68 78 78 78 88 88 88 98 98 98 107 107 107 117 117 117 127 127 127 137 137 137 147 147 147 156 156 156 166 166 166 176 176 176 186 186 186 196 196 196 205 205 205 215 215 215 225 225 225 235 235 235 245 245 245 191 191 191 233 231 227 127 127 127 255 255 127 191 191 127]
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1220
            mask:((ImageMask width:14 height:14) bits:(ByteArray fromPackedString:'C0A?8O?0??C?<O?0??C?>O?8??#?>O?8_? G>@@a'); yourself); yourself]
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1221
!
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1222
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1223
pasteUnderIcon
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1224
    "This resource specification was automatically generated
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1225
     by the ImageEditor of ST/X."
3561
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1226
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1227
    "Do not manually edit this!! If it is corrupted,
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1228
     the ImageEditor may not be able to read the specification."
3561
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1229
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1230
    "
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1231
     self pasteUnderIcon inspect
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1232
     ImageEditor openOnClass:self andSelector:#pasteUnderIcon
3561
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1233
     Icon flushCachedIcons
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1234
    "
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1235
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1236
    <resource: #image>
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1237
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1238
    ^Icon
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1239
        constantNamed:'ImageEditor class pasteUnderIcon'
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1240
        ifAbsentPut:[(Depth8Image width:14 height:14) bits:(ByteArray fromPackedString:'
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1241
:N#(:N#(:N#(:N#(:N#(:N#(:O#8:N#(:N#(:N#5>^#8:N#8:OW9:N#(:O''(=/[6=/[6:OW(:N#(=^#(:N#(:N#(>^#(:N#9=_''5>_W9=_''5:N#(:@DA@PDA
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1242
@PDA=_''(@@C(@_K2</K2< D@@@@@@N A</K2</K2@PXFA @@:@G2</K2</H@@@XF@@C(@_K2</K2@@@@@@X@@N A</K2</K2@@@FA @@@@DA@PDA@PDAA XF
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1243
@@@@@@@@@@@@@@@@@@@@@@@a')
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1244
            colorMapFromArray:#[0 0 0 0 0 128 128 128 0 128 128 128 212 208 200 255 255 0 255 255 255 0 0 51 0 0 102 0 0 153 0 0 204 0 0 255 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 0 0 255 51 0 255 102 0 255 153 0 255 204 0 255 255 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 0 255 0 51 255 0 102 255 0 153 255 0 204 255 0 255 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 9 9 9 19 19 19 29 29 29 39 39 39 49 49 49 58 58 58 68 68 68 78 78 78 88 88 88 98 98 98 107 107 107 117 117 117 127 127 127 137 137 137 147 147 147 156 156 156 166 166 166 176 176 176 186 186 186 196 196 196 205 205 205 215 215 215 225 225 225 235 235 235 245 245 245 191 191 191 233 231 227 127 127 127 255 255 127 191 191 127]
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1245
            mask:((ImageMask width:14 height:14) bits:(ByteArray fromPackedString:'C0A?8O?0??C?<O?0??C?>O?8??#?>O?8_? G>@@a'); yourself); yourself]
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1246
!
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1247
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1248
pasteWithMaskIcon
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1249
    "This resource specification was automatically generated
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1250
     by the ImageEditor of ST/X."
3561
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1251
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1252
    "Do not manually edit this!! If it is corrupted,
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1253
     the ImageEditor may not be able to read the specification."
3561
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1254
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1255
    "
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1256
     self pasteWithMaskIcon inspect
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1257
     ImageEditor openOnClass:self andSelector:#pasteWithMaskIcon
3561
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1258
     Icon flushCachedIcons
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1259
    "
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1260
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1261
    <resource: #image>
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1262
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1263
    ^Icon
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1264
        constantNamed:'ImageEditor class pasteWithMaskIcon'
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1265
        ifAbsentPut:[(Depth8Image width:14 height:14) bits:(ByteArray fromPackedString:'
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1266
:N#(:N#(:N#(:N#(:N#(:N#(:O#8:N#(:N#(:N#5>^#8:N#8:OW9:N#(:O''(=/[6=/[6:OW(:N#(=^#(:N#(:N#(>^#(:N#9=_''5>_W9=_''5:N#(:@DA@PDA
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1267
@PDA=_''(@@C(@_C0<OC0<O@@@@@@@N A<OC0<@XFA XFA @@:@G0<OC0A [0@@XF@@C(@_C0<O@F<O@@@@X@@N A<OC0<@XF<@@FA @@@@DA@PD@A XFA XF
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1268
@@@@@@@@@@@@@@@@@@@@@@@a')
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1269
            colorMapFromArray:#[0 0 0 0 0 128 128 128 0 128 128 128 212 208 200 255 255 0 255 255 255 0 0 51 0 0 102 0 0 153 0 0 204 0 0 255 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 0 0 255 51 0 255 102 0 255 153 0 255 204 0 255 255 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 0 255 0 51 255 0 102 255 0 153 255 0 204 255 0 255 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 9 9 9 19 19 19 29 29 29 39 39 39 49 49 49 58 58 58 68 68 68 78 78 78 88 88 88 98 98 98 107 107 107 117 117 117 127 127 127 137 137 137 147 147 147 156 156 156 166 166 166 176 176 176 186 186 186 196 196 196 205 205 205 215 215 215 225 225 225 235 235 235 245 245 245 191 191 191 233 231 227 127 127 127 255 255 127 191 191 127]
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  1270
            mask:((ImageMask width:14 height:14) bits:(ByteArray fromPackedString:'C0A?8O?0??C?<O?0??C?>O?8??#?>O?8_? G>@@a'); yourself); yourself]
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1271
!
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1272
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1273
pointIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1274
    <resource: #image>
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1275
    "This resource specification was automatically generated
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1276
     by the ImageEditor of ST/X."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1277
    "Do not manually edit this!! If it is corrupted,
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1278
     the ImageEditor may not be able to read the specification."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1279
    "
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1280
     self pointIcon inspect
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1281
     ImageEditor openOnClass:self andSelector:#pointIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1282
     Icon flushCachedIcons"
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1283
    
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1284
    ^ Icon constantNamed:'ImageEditor class pointIcon'
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1285
        ifAbsentPut:[
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1286
            (Depth1Image new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1287
                width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1288
                height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1289
                photometric:(#palette);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1290
                bitsPerSample:(#( 1 ));
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1291
                samplesPerPixel:(1);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1292
                bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1293
                            fromPackedString:'@@@@@@@A@@@@@@@@@@@@@@@C@@@@@@@@@@@@@@@a');
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1294
                colorMapFromArray:#[ 0 0 0 255 255 255 ];
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1295
                mask:((ImageMask 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
                            bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1299
                                        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
  1300
                            yourself);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1301
                yourself
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1302
        ]
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1303
!
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1304
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1305
rectIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1306
    <resource: #image>
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1307
    "This resource specification was automatically generated
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1308
     by the ImageEditor of ST/X."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1309
    "Do not manually edit this!! If it is corrupted,
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1310
     the ImageEditor may not be able to read the specification."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1311
    "
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1312
     self rectIcon inspect
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1313
     ImageEditor openOnClass:self andSelector:#rectIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1314
     Icon flushCachedIcons"
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1315
    
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1316
    ^ Icon constantNamed:'ImageEditor class rectIcon'
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1317
        ifAbsentPut:[
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1318
            (Depth1Image new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1319
                width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1320
                height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1321
                photometric:(#palette);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1322
                bitsPerSample:(#( 1 ));
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1323
                samplesPerPixel:(1);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1324
                bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1325
                            fromPackedString:'@@@@@@@A@@@@@@@@@@@@@@@C@@@@@@@@@@@@@@@a');
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1326
                colorMapFromArray:#[ 0 0 0 255 0 0 ];
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1327
                mask:((ImageMask new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1328
                            width:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1329
                            height:14;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1330
                            bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1331
                                        fromPackedString:'@@@@@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
  1332
                            yourself);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1333
                yourself
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1334
        ]
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1335
!
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1336
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1337
rightMouseKeyIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1338
    <resource: #image>
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1339
    "This resource specification was automatically generated
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1340
     by the ImageEditor of ST/X."
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1341
    "Do not manually edit this!! If it is corrupted,
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1342
     the ImageEditor may not be able to read the specification."
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1343
    "
1405
0b2e421db465 images compactified
Claus Gittinger <cg@exept.de>
parents: 1403
diff changeset
  1344
     self rightMouseKeyIcon inspect
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1345
     ImageEditor openOnClass:self andSelector:#rightMouseKeyIcon
3121
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1346
     Icon flushCachedIcons"
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1347
    
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1348
    ^ Icon constantNamed:'ImageEditor class rightMouseKeyIcon'
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1349
        ifAbsentPut:[
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1350
            (Depth2Image new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1351
                width:16;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1352
                height:16;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1353
                photometric:(#palette);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1354
                bitsPerSample:(#( 2 ));
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1355
                samplesPerPixel:(1);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1356
                bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1357
                            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
  1358
                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
  1359
                mask:((ImageMask new)
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1360
                            width:16;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1361
                            height:16;
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1362
                            bits:(ByteArray 
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1363
                                        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
  1364
                            yourself);
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1365
                yourself
b88abf599041 Use ImageMask instead of Depth1Image for masks
Stefan Vogel <sv@exept.de>
parents: 3103
diff changeset
  1366
        ]
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1367
!
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1368
3419
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1369
slightlyBrighterIcon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1370
    "This resource specification was automatically generated
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1371
     by the ImageEditor of ST/X."
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1372
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1373
    "Do not manually edit this!! If it is corrupted,
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1374
     the ImageEditor may not be able to read the specification."
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1375
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1376
    "
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1377
     self slightlyBrighterIcon inspect
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1378
     ImageEditor openOnClass:self andSelector:#slightlyBrighterIcon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1379
     Icon flushCachedIcons
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1380
    "
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1381
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1382
    <resource: #image>
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
    ^Icon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1385
        constantNamed:'ImageEditor class slightlyBrighterIcon'
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1386
        ifAbsentPut:[(Depth8Image width:14 height:14) bits:(ByteArray fromPackedString:'
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1387
@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
  1388
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
  1389
;><A@PDA@PDA@PDA@PDA@P@a')
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1390
            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
  1391
            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
  1392
!
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1393
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1394
slightlyDarkerIcon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1395
    "This resource specification was automatically generated
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1396
     by the ImageEditor of ST/X."
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1397
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1398
    "Do not manually edit this!! If it is corrupted,
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1399
     the ImageEditor may not be able to read the specification."
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1400
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1401
    "
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1402
     self slightlyDarkerIcon inspect
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1403
     ImageEditor openOnClass:self andSelector:#slightlyDarkerIcon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1404
     Icon flushCachedIcons
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1405
    "
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1406
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1407
    <resource: #image>
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1408
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1409
    ^Icon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1410
        constantNamed:'ImageEditor class slightlyDarkerIcon'
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1411
        ifAbsentPut:[(Depth8Image width:14 height:14) bits:(ByteArray fromPackedString:'
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1412
@PDA@PDA@PDA@PDA@PG/;>?/;>?/@@@@@@@@@N?/;>?/;><@@@@@@@@@;>?/;>?/;0@@@@@@@@C/;>?/;>?/@@@@@@@@@N?/;>?/;><@@@@@@@@@;>?/A XF
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1413
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
  1414
@@@A@PDA@PDA@PDA@PDA@P@a')
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1415
            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
  1416
            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
  1417
!
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1418
3191
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1419
smoothIcon
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1420
    "This resource specification was automatically generated
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1421
     by the ImageEditor of ST/X."
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1422
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1423
    "Do not manually edit this!! If it is corrupted,
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1424
     the ImageEditor may not be able to read the specification."
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1425
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1426
    "
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1427
     self smoothIcon inspect
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1428
     ImageEditor openOnClass:self andSelector:#smoothIcon
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1429
     Icon flushCachedIcons
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1430
    "
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1431
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1432
    <resource: #image>
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1433
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1434
    ^Icon
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1435
        constantNamed:'ImageEditor smoothIcon'
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1436
        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
  1437
@@@@@@@@@@@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
  1438
!
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1439
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  1440
specialCircleIcon
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  1441
    "This resource specification was automatically generated
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  1442
     by the ImageEditor of ST/X."
3442
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
  1443
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  1444
    "Do not manually edit this!! If it is corrupted,
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  1445
     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
  1446
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  1447
    "
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  1448
     self specialCircleIcon inspect
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  1449
     ImageEditor openOnClass:self andSelector:#specialCircleIcon
3442
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
  1450
     Icon flushCachedIcons
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
  1451
    "
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
  1452
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
  1453
    <resource: #image>
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
  1454
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
  1455
    ^Icon
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
  1456
        constantNamed:'ImageEditor class specialCircleIcon'
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
  1457
        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
  1458
            colorMapFromArray:#[0 0 0 255 0 0 127 127 127]
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
  1459
            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
  1460
!
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  1461
3419
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1462
specialRectangleIcon
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1463
    "This resource specification was automatically generated
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1464
     by the ImageEditor of ST/X."
3419
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1465
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1466
    "Do not manually edit this!! If it is corrupted,
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1467
     the ImageEditor may not be able to read the specification."
3419
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1468
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  1469
    "
3419
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1470
     self specialRectangleIcon inspect
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1471
     ImageEditor openOnClass:self andSelector:#specialRectangleIcon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1472
     Icon flushCachedIcons
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1473
    "
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1474
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1475
    <resource: #image>
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1476
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1477
    ^Icon
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  1478
        constantNamed:'ImageEditor class specialRectangleIcon'
3442
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
  1479
        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
  1480
            colorMapFromArray:#[0 0 0 255 0 0 127 127 127]
01fc9215d9c2 #UI_ENHANCEMENT by expecco
Claus Gittinger <cg@exept.de>
parents: 3441
diff changeset
  1481
            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
  1482
!
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  1483
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  1484
sprayIcon
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  1485
    "This resource specification was automatically generated
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  1486
     by the ImageEditor of ST/X."
3191
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1487
2375
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  1488
    "Do not manually edit this!! If it is corrupted,
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  1489
     the ImageEditor may not be able to read the specification."
3191
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1490
2375
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  1491
    "
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  1492
     self sprayIcon inspect
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  1493
     ImageEditor openOnClass:self andSelector:#sprayIcon
3191
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1494
     Icon flushCachedIcons
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1495
    "
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1496
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1497
    <resource: #image>
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1498
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1499
    ^Icon
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1500
        constantNamed:'ImageEditor sprayIcon'
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  1501
        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
  1502
@@@@@@@@@@@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
  1503
! !
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1504
400
228524287573 intitial checkin
tz
parents:
diff changeset
  1505
!ImageEditor class methodsFor:'interface specs'!
228524287573 intitial checkin
tz
parents:
diff changeset
  1506
1650
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1507
changeHLSDialogSpec
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1508
    "This resource specification was automatically generated
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1509
     by the UIPainter of ST/X."
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1510
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1511
    "Do not manually edit this!! If it is corrupted,
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1512
     the UIPainter may not be able to read the specification."
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1513
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1514
    "
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1515
     UIPainter new openOnClass:ImageEditor andSelector:#changeHLSDialogSpec
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1516
     ImageEditor new openInterface:#changeHLSDialogSpec
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1517
    "
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1518
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1519
    <resource: #canvas>
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1520
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1521
    ^ 
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1522
    #(FullSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1523
       name: changeHLSDialogSpec
3562
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1524
       uuid: 'b5dfeb64-6197-11e8-a86d-b8f6b1108e05'
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1525
       window: 
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1526
      (WindowSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1527
         label: 'HLS Edit Dialog'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1528
         name: 'HLS Edit Dialog'
3562
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1529
         uuid: '3787f3b8-6194-11e8-a86d-b8f6b1108e05'
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1530
         min: (Point 10 10)
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1531
         bounds: (Rectangle 0 0 378 312)
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1532
       )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1533
       component: 
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1534
      (SpecCollection
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1535
         collection: (
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1536
          (LabelSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1537
             label: 'Hue-Shift:'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1538
             name: 'HueLabel'
3562
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1539
             layout: (LayoutFrame 4 0 21 0 171 0 43 0)
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1540
             activeHelpKey: hueShift
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1541
             uuid: '3787f638-6194-11e8-a86d-b8f6b1108e05'
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1542
             translateLabel: true
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1543
             adjust: right
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1544
           )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1545
          (InputFieldSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1546
             name: 'HueShiftEntryField'
3562
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1547
             layout: (LayoutFrame 172 0 21 0 243 0 43 0)
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1548
             activeHelpKey: hueShift
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1549
             uuid: '3787f84a-6194-11e8-a86d-b8f6b1108e05'
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1550
             tabable: true
3562
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1551
             model: hueShiftHolder
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1552
             type: numberInRange
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1553
             minValue: 0
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1554
             maxValue: 360
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1555
             acceptChannel: acceptChannel
3562
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1556
             acceptOnPointerLeave: true
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1557
           )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1558
          (ThumbWheelSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1559
             name: 'HueWheel'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1560
             layout: (LayoutFrame 246 0 22 0 363 0 42 0)
3562
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1561
             activeHelpKey: hueShift
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1562
             uuid: '3787fafc-6194-11e8-a86d-b8f6b1108e05'
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1563
             model: hueShiftHolder
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1564
             orientation: horizontal
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1565
             step: 1
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1566
             endlessRotation: true
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1567
           )
3562
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1568
          (ActionButtonSpec
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1569
             name: 'resetHueShift'
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1570
             layout: (LayoutFrame -10 1 27 0 0 1 37 0)
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1571
             activeHelpKey: resetHueShift
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1572
             uuid: 'e8c1e754-6196-11e8-a86d-b8f6b1108e05'
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1573
             translateLabel: true
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1574
             model: resetHueShift
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1575
           )
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1576
          (LabelSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1577
             label: 'Light Factor:'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1578
             name: 'LightLabel'
3562
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1579
             layout: (LayoutFrame 4 0 50 0 171 0 72 0)
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1580
             activeHelpKey: lightFactor
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1581
             uuid: '3787fda4-6194-11e8-a86d-b8f6b1108e05'
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1582
             translateLabel: true
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1583
             adjust: right
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1584
           )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1585
          (InputFieldSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1586
             name: 'LightEntryField'
3562
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1587
             layout: (LayoutFrame 172 0 50 0 243 0 72 0)
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1588
             activeHelpKey: lightFactor
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1589
             uuid: '3787feee-6194-11e8-a86d-b8f6b1108e05'
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1590
             tabable: true
3562
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1591
             model: lightFactorHolder
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1592
             type: numberInRange
3562
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1593
             minValue: 0.0
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1594
             maxValue: 10.0
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1595
             acceptChannel: acceptChannel
3562
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1596
             acceptOnPointerLeave: true
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1597
           )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1598
          (ThumbWheelSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1599
             name: 'LightWheel'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1600
             layout: (LayoutFrame 246 0 51 0 363 0 71 0)
3562
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1601
             activeHelpKey: lightFactor
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1602
             uuid: '378800d8-6194-11e8-a86d-b8f6b1108e05'
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1603
             model: lightFactorHolder
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1604
             orientation: horizontal
3562
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1605
             start: 0.0
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1606
             stop: 10.0
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1607
             step: 0.001
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1608
           )
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1609
          (ActionButtonSpec
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1610
             name: 'Button3'
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1611
             layout: (LayoutFrame -10 1 56 0 0 1 66 0)
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1612
             activeHelpKey: resetLightFactor
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1613
             uuid: 'e8c1eb50-6196-11e8-a86d-b8f6b1108e05'
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1614
             translateLabel: true
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1615
             model: resetLightFactor
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1616
           )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1617
          (LabelSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1618
             label: 'Saturation Factor:'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1619
             name: 'SaturationLabel'
3562
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1620
             layout: (LayoutFrame 4 0 79 0 171 0 101 0)
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1621
             activeHelpKey: saturationFactor
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1622
             uuid: '3788022c-6194-11e8-a86d-b8f6b1108e05'
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1623
             translateLabel: true
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1624
             adjust: right
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1625
           )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1626
          (InputFieldSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1627
             name: 'SaturationEntryField'
3562
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1628
             layout: (LayoutFrame 172 0 79 0 243 0 101 0)
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1629
             activeHelpKey: saturationFactor
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1630
             uuid: '37880358-6194-11e8-a86d-b8f6b1108e05'
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1631
             tabable: true
3562
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1632
             model: saturationFactorHolder
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1633
             type: numberInRange
3562
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1634
             minValue: 0.0
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1635
             maxValue: 10.0
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1636
             acceptChannel: acceptChannel
3562
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1637
             acceptOnPointerLeave: true
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1638
           )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1639
          (ThumbWheelSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1640
             name: 'SaturationWheel'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1641
             layout: (LayoutFrame 246 0 80 0 363 0 100 0)
3562
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1642
             activeHelpKey: saturationFactor
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1643
             uuid: '3788051a-6194-11e8-a86d-b8f6b1108e05'
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1644
             model: saturationFactorHolder
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1645
             orientation: horizontal
3562
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1646
             start: 0.0
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1647
             stop: 10.0
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1648
             step: 0.001
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1649
           )
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1650
          (ActionButtonSpec
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1651
             name: 'Button4'
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1652
             layout: (LayoutFrame -10 1 85 0 0 1 95 0)
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1653
             activeHelpKey: resetSaturationFactor
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1654
             uuid: 'e8c1efce-6196-11e8-a86d-b8f6b1108e05'
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1655
             translateLabel: true
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1656
             model: resetSaturationFactor
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1657
           )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1658
          (LabelSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1659
             label: 'Color Shift'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1660
             name: 'Label2'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1661
             layout: (LayoutFrame 5 0 127 0 -15 0.5 149 0)
3562
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1662
             uuid: '37880650-6194-11e8-a86d-b8f6b1108e05'
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1663
             translateLabel: true
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1664
           )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1665
          (LabelSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1666
             name: 'HueColorLabel'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1667
             layout: (LayoutFrame 18 0.0 150 0 -41 0.5 234 0)
3562
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1668
             uuid: '37880768-6194-11e8-a86d-b8f6b1108e05'
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1669
             level: -1
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1670
             backgroundChannel: hlsColor
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1671
             translateLabel: true
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1672
           )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1673
          (LabelSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1674
             label: 'Preview'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1675
             name: 'Label3'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1676
             layout: (LayoutFrame 5 0.5 127 0 -5 1 149 0)
3562
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1677
             uuid: '37880894-6194-11e8-a86d-b8f6b1108e05'
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1678
             translateLabel: true
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1679
           )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1680
          (LabelSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1681
             name: 'PreviewLabel'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1682
             layout: (LayoutFrame 36 0.5 150 0 -23 1.0 234 0)
3562
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1683
             uuid: '378809ac-6194-11e8-a86d-b8f6b1108e05'
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1684
             level: -1
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1685
             translateLabel: true
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1686
             labelChannel: previewImageHolder
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1687
           )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1688
          (HorizontalPanelViewSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1689
             name: 'HorizontalPanel1'
3562
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1690
             layout: (LayoutFrame 0 0.0 -30 1 -16 1.0 0 1)
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1691
             uuid: '37880ace-6194-11e8-a86d-b8f6b1108e05'
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1692
             horizontalLayout: fitSpace
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1693
             verticalLayout: center
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1694
             horizontalSpace: 3
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1695
             verticalSpace: 3
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1696
             reverseOrderIfOKAtLeft: true
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1697
             component: 
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1698
            (SpecCollection
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1699
               collection: (
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1700
                (ActionButtonSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1701
                   label: 'Cancel'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1702
                   name: 'Button1'
3562
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1703
                   uuid: '37880cd6-6194-11e8-a86d-b8f6b1108e05'
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1704
                   translateLabel: true
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1705
                   tabable: true
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1706
                   model: cancel
3562
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1707
                   extent: (Point 175 28)
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  1708
                 )
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1709
                (ActionButtonSpec
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1710
                   label: 'OK'
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1711
                   name: 'Button2'
3562
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1712
                   uuid: '37880ee8-6194-11e8-a86d-b8f6b1108e05'
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1713
                   translateLabel: true
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1714
                   tabable: true
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1715
                   model: accept
3562
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1716
                   extent: (Point 175 28)
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1717
                 )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1718
                )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1719
              
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1720
             )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1721
             keepSpaceForOSXResizeHandleH: true
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  1722
           )
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1723
          )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1724
        
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1725
       )
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  1726
     )
3562
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1727
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  1728
    "Modified: / 27-05-2018 / 12:27:58 / Claus Gittinger"
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  1729
!
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  1730
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1731
cropSpec
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  1732
    "This resource specification was automatically generated
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  1733
     by the UIPainter of ST/X."
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  1734
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  1735
    "Do not manually edit this!! If it is corrupted,
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  1736
     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
  1737
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  1738
    "
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1739
     UIPainter new openOnClass:ImageEditor andSelector:#cropSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1740
     ImageEditor new openInterface:#cropSpec
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  1741
    "
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  1742
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  1743
    <resource: #canvas>
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  1744
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  1745
    ^ 
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1746
    #(FullSpec
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1747
       name: cropSpec
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1748
       window: 
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1749
      (WindowSpec
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1750
         label: 'Crop Border(s)'
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1751
         name: 'Crop Border(s)'
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1752
         min: (Point 10 10)
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  1753
         bounds: (Rectangle 0 0 364 312)
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1754
       )
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1755
       component: 
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1756
      (SpecCollection
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1757
         collection: (
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1758
          (LabelSpec
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1759
             label: 'Left:'
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1760
             name: 'CropLeftLabel'
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1761
             layout: (LayoutFrame 14 0 24 0 90 0 46 0)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1762
             activeHelpKey: cropLeft
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1763
             translateLabel: true
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  1764
             adjust: left
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1765
           )
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1766
          (InputFieldSpec
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1767
             name: 'CropLeftEntryField'
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  1768
             layout: (LayoutFrame 95 0 24 0 125 0 46 0)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1769
             activeHelpKey: cropLeft
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1770
             tabable: true
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1771
             model: cropLeftAmount
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1772
             type: number
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1773
             acceptChannel: acceptChannel
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1774
             acceptOnPointerLeave: false
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1775
           )
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1776
          (ActionButtonSpec
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1777
             label: 'Crop Now'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1778
             name: 'CropLeftNowButton'
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1779
             layout: (LayoutFrame 133 0 21 0 229 0 50 0)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1780
             activeHelpKey: cropLeft
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1781
             translateLabel: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1782
             resizeForLabel: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1783
             tabable: true
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1784
             model: cropLeftNow
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1785
             autoRepeat: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1786
             usePreferredWidth: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1787
           )
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1788
          (ActionButtonSpec
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1789
             label: 'Auto'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1790
             name: 'Button6'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1791
             layout: (LayoutFrame 236 0 21 0 289 0 50 0)
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1792
             activeHelpKey: autoCropLeft
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1793
             translateLabel: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1794
             resizeForLabel: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1795
             tabable: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1796
             model: autoCropLeft
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1797
             autoRepeat: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1798
             usePreferredWidth: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1799
           )
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1800
          (LabelSpec
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1801
             label: 'Right:'
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1802
             name: 'CropRightLabel'
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1803
             layout: (LayoutFrame 14 0 55 0 90 0 77 0)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1804
             activeHelpKey: cropRight
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1805
             translateLabel: true
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  1806
             adjust: left
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1807
           )
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1808
          (InputFieldSpec
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1809
             name: 'CropRightEntryField'
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  1810
             layout: (LayoutFrame 95 0 55 0 125 0 77 0)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1811
             activeHelpKey: cropRight
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1812
             tabable: true
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1813
             model: cropRightAmount
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1814
             type: number
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1815
             acceptChannel: acceptChannel
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1816
             acceptOnPointerLeave: false
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1817
           )
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1818
          (ActionButtonSpec
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1819
             label: 'Crop Now'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1820
             name: 'CropRightButton'
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1821
             layout: (LayoutFrame 133 0 51 0 229 0 80 0)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1822
             activeHelpKey: cropRight
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1823
             translateLabel: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1824
             resizeForLabel: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1825
             tabable: true
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1826
             model: cropRightNow
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1827
             autoRepeat: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1828
             usePreferredWidth: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1829
           )
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1830
          (ActionButtonSpec
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1831
             label: 'Auto'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1832
             name: 'Button7'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1833
             layout: (LayoutFrame 236 0 51 0 289 0 80 0)
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1834
             activeHelpKey: autoCropRight
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1835
             translateLabel: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1836
             resizeForLabel: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1837
             tabable: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1838
             model: autoCropRight
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1839
             autoRepeat: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1840
             usePreferredWidth: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1841
           )
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1842
          (LabelSpec
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1843
             label: 'Top:'
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1844
             name: 'CropTopLabel'
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1845
             layout: (LayoutFrame 14 0 85 0 90 0 107 0)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1846
             activeHelpKey: cropTop
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1847
             translateLabel: true
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  1848
             adjust: left
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1849
           )
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1850
          (InputFieldSpec
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1851
             name: 'CropTopEntryField'
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  1852
             layout: (LayoutFrame 95 0 85 0 125 0 107 0)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1853
             activeHelpKey: cropTop
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1854
             tabable: true
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1855
             model: cropTopAmount
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1856
             type: number
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1857
             acceptChannel: acceptChannel
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1858
             acceptOnPointerLeave: false
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1859
           )
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1860
          (ActionButtonSpec
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1861
             label: 'Crop Now'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1862
             name: 'CropTopButton'
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1863
             layout: (LayoutFrame 133 0 81 0 229 0 110 0)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1864
             activeHelpKey: cropTop
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1865
             translateLabel: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1866
             resizeForLabel: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1867
             tabable: true
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1868
             model: cropTopNow
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1869
             autoRepeat: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1870
             usePreferredWidth: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1871
           )
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1872
          (ActionButtonSpec
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1873
             label: 'Auto'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1874
             name: 'Button8'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1875
             layout: (LayoutFrame 236 0 81 0 289 0 110 0)
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1876
             activeHelpKey: autoCropTop
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1877
             translateLabel: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1878
             resizeForLabel: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1879
             tabable: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1880
             model: autoCropTop
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1881
             autoRepeat: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1882
             usePreferredWidth: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1883
           )
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1884
          (LabelSpec
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1885
             label: 'Bottom:'
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1886
             name: 'CropBottomLabel'
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1887
             layout: (LayoutFrame 14 0 115 0 90 0 137 0)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1888
             activeHelpKey: cropBottom
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1889
             translateLabel: true
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  1890
             adjust: left
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1891
           )
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1892
          (InputFieldSpec
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1893
             name: 'CropBottomEntryField'
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  1894
             layout: (LayoutFrame 95 0 115 0 125 0 137 0)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1895
             activeHelpKey: cropBottom
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1896
             tabable: true
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1897
             model: cropBottomAmount
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1898
             type: number
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1899
             acceptChannel: acceptChannel
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1900
             acceptOnPointerLeave: false
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1901
           )
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1902
          (ActionButtonSpec
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1903
             label: 'Crop Now'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1904
             name: 'CropBottomButton'
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1905
             layout: (LayoutFrame 133 0 111 0 229 0 140 0)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1906
             activeHelpKey: cropBottom
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1907
             translateLabel: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1908
             resizeForLabel: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1909
             tabable: true
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1910
             model: cropBottomNow
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1911
             autoRepeat: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1912
             usePreferredWidth: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1913
           )
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  1914
          (ActionButtonSpec
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1915
             label: 'Auto'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1916
             name: 'Button9'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1917
             layout: (LayoutFrame 236 0 111 0 289 0 140 0)
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1918
             activeHelpKey: autoCropBottom
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1919
             translateLabel: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1920
             resizeForLabel: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1921
             tabable: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1922
             model: autoCropBottom
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1923
             autoRepeat: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1924
             usePreferredWidth: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1925
           )
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1926
          (ActionButtonSpec
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1927
             label: 'All'
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  1928
             name: 'Button4'
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1929
             layout: (LayoutFrame 133 0 148 0 229 0 176 0)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1930
             activeHelpKey: cropAll
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  1931
             translateLabel: true
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  1932
             resizeForLabel: true
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  1933
             tabable: true
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  1934
             model: applyCropAction
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  1935
           )
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1936
          (HorizontalPanelViewSpec
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1937
             name: 'HorizontalPanel1'
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1938
             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
  1939
             visibilityChannel: cropBoxIsDialog
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1940
             horizontalLayout: fitSpace
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1941
             verticalLayout: center
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1942
             horizontalSpace: 3
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1943
             verticalSpace: 3
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1944
             reverseOrderIfOKAtLeft: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1945
             component: 
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1946
            (SpecCollection
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1947
               collection: (
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1948
                (ActionButtonSpec
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1949
                   label: 'Cancel'
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1950
                   name: 'Button1'
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1951
                   translateLabel: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1952
                   resizeForLabel: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1953
                   tabable: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1954
                   model: cancel
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1955
                   extent: (Point 116 28)
1650
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1956
                 )
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1957
                (ActionButtonSpec
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1958
                   label: 'Apply'
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1959
                   name: 'Button3'
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1960
                   translateLabel: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1961
                   resizeForLabel: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1962
                   tabable: true
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  1963
                   model: applyCropAction
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1964
                   extent: (Point 116 28)
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1965
                 )
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1966
                (ActionButtonSpec
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1967
                   label: 'OK'
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1968
                   name: 'Button2'
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1969
                   translateLabel: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1970
                   resizeForLabel: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1971
                   tabable: true
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1972
                   model: accept
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  1973
                   extent: (Point 116 28)
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1974
                 )
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1975
                )
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1976
              
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1977
             )
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  1978
           )
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1979
          (ActionButtonSpec
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1980
             label: 'All'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1981
             name: 'Button10'
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1982
             layout: (LayoutFrame 236 0 148 0 289 0 176 0)
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1983
             activeHelpKey: autoCropAll
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1984
             translateLabel: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1985
             resizeForLabel: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1986
             tabable: true
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1987
             model: autoCropAll
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  1988
           )
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1989
          )
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1990
        
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1991
       )
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  1992
     )
1650
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1993
!
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  1994
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  1995
dialogSpecForNewImage
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1996
    "This resource specification was automatically generated
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1997
     by the UIPainter of ST/X."
519
085cf69fcd6c single lines in tool bar removed
tz
parents: 503
diff changeset
  1998
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  1999
    "Do not manually edit this!! If it is corrupted,
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  2000
     the UIPainter may not be able to read the specification."
519
085cf69fcd6c single lines in tool bar removed
tz
parents: 503
diff changeset
  2001
085cf69fcd6c single lines in tool bar removed
tz
parents: 503
diff changeset
  2002
    "
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2003
     UIPainter new openOnClass:ImageEditor andSelector:#dialogSpecForNewImage
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2004
     ImageEditor new openInterface:#dialogSpecForNewImage
519
085cf69fcd6c single lines in tool bar removed
tz
parents: 503
diff changeset
  2005
    "
085cf69fcd6c single lines in tool bar removed
tz
parents: 503
diff changeset
  2006
085cf69fcd6c single lines in tool bar removed
tz
parents: 503
diff changeset
  2007
    <resource: #canvas>
085cf69fcd6c single lines in tool bar removed
tz
parents: 503
diff changeset
  2008
1457
8c15098c3469 ok button is left in some viewStyles
Claus Gittinger <cg@exept.de>
parents: 1449
diff changeset
  2009
    ^ 
3494
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2010
    #(FullSpec
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2011
       name: dialogSpecForNewImage
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2012
       window: 
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2013
      (WindowSpec
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2014
         label: 'New Image'
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2015
         name: 'New Image'
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2016
         min: (Point 10 10)
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2017
         bounds: (Rectangle 0 0 301 119)
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2018
       )
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2019
       component: 
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2020
      (SpecCollection
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2021
         collection: (
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2022
          (ViewSpec
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2023
             name: 'View'
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2024
             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
  2025
             level: 1
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2026
             component: 
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2027
            (SpecCollection
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2028
               collection: (
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2029
                (FramedBoxSpec
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2030
                   label: 'Size'
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2031
                   name: 'framedBox1'
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2032
                   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
  2033
                   style: (FontDescription helvetica medium roman 12)
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2034
                   labelPosition: topLeft
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2035
                   translateLabel: true
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2036
                   component: 
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2037
                  (SpecCollection
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2038
                     collection: (
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2039
                      (ComboBoxSpec
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2040
                         name: 'defaultSizesComboBox'
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2041
                         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
  2042
                         model: selectionOfSize
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2043
                         type: string
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2044
                         acceptOnPointerLeave: false
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2045
                         comboList: listOfDefaultSizes
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2046
                         isFilenameBox: false
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2047
                       )
3494
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2048
                      )
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2049
                    
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2050
                   )
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2051
                 )
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2052
                (FramedBoxSpec
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2053
                   label: 'Color Map'
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2054
                   name: 'framedBox2'
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2055
                   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
  2056
                   style: (FontDescription helvetica medium roman 12)
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2057
                   labelPosition: topLeft
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2058
                   translateLabel: true
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2059
                   component: 
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2060
                  (SpecCollection
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2061
                     collection: (
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2062
                      (ComboListSpec
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2063
                         name: 'colorMapComboBox'
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2064
                         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
  2065
                         model: selectionOfColorMap
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2066
                         comboList: listOfColorMaps
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2067
                         useIndex: false
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2068
                         hidePullDownMenuButton: false
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2069
                       )
3494
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2070
                      )
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2071
                    
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2072
                   )
1457
8c15098c3469 ok button is left in some viewStyles
Claus Gittinger <cg@exept.de>
parents: 1449
diff changeset
  2073
                 )
3494
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2074
                )
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2075
              
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2076
             )
1457
8c15098c3469 ok button is left in some viewStyles
Claus Gittinger <cg@exept.de>
parents: 1449
diff changeset
  2077
           )
3494
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2078
          (UISubSpecification
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2079
             name: 'windowSpecForCommitWithoutChannels'
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2080
             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
  2081
             minorKey: windowSpecForCommitWithoutChannels
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2082
             keepSpaceForOSXResizeHandleH: true
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2083
           )
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2084
          )
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2085
        
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2086
       )
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  2087
     )
986
4361ba4dbbdc added crob operations.
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
  2088
!
4361ba4dbbdc added crob operations.
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
  2089
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2090
floodFillToleranceSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2091
    "This resource specification was automatically generated
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2092
     by the UIPainter of ST/X."
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2093
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2094
    "Do not manually edit this!! If it is corrupted,
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2095
     the UIPainter may not be able to read the specification."
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2096
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2097
    "
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2098
     UIPainter new openOnClass:ImageEditor andSelector:#floodFillToleranceSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2099
     ImageEditor new openInterface:#floodFillToleranceSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2100
    "
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2101
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2102
    <resource: #canvas>
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2103
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2104
    ^ 
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2105
    #(FullSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2106
       name: floodFillToleranceSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2107
       window: 
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2108
      (WindowSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2109
         label: 'Flood Fill Tolerance'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2110
         name: 'Flood Fill Tolerance'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2111
         min: (Point 10 10)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2112
         bounds: (Rectangle 0 0 364 312)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2113
       )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2114
       component: 
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2115
      (SpecCollection
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2116
         collection: (
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2117
          (LabelSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2118
             label: 'Flood Fill Tolerance:'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2119
             name: 'Label1'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2120
             layout: (LayoutFrame 14 0 10 0 242 0 32 0)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2121
             activeHelpKey: floodFillMaxError
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2122
             visibilityChannel: cropBoxIsNotDialog
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2123
             translateLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2124
             adjust: left
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2125
           )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2126
          (LabelSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2127
             label: 'Hue:'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2128
             name: 'Label2'
3440
4e18ffc36717 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3436
diff changeset
  2129
             layout: (LayoutFrame 29 0 38 0 127 0 60 0)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2130
             activeHelpKey: floodFillMaxError
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2131
             visibilityChannel: cropBoxIsNotDialog
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2132
             translateLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2133
             adjust: left
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
          (InputFieldSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2136
             name: 'EntryField2'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2137
             layout: (LayoutFrame 132 0 38 0 190 0 60 0)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2138
             activeHelpKey: floodFillMaxError
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2139
             visibilityChannel: cropBoxIsNotDialog
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2140
             tabable: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2141
             model: floodFillMaxHueError
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2142
             type: number
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2143
             acceptChannel: acceptChannel
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2144
             acceptOnPointerLeave: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2145
           )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2146
          (LabelSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2147
             label: 'Light:'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2148
             name: 'Label3'
3440
4e18ffc36717 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3436
diff changeset
  2149
             layout: (LayoutFrame 29 0 64 0 127 0 86 0)
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2150
             activeHelpKey: floodFillMaxError
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2151
             visibilityChannel: cropBoxIsNotDialog
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2152
             translateLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2153
             adjust: left
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2154
           )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2155
          (InputFieldSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2156
             name: 'EntryField3'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2157
             layout: (LayoutFrame 132 0 64 0 190 0 86 0)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2158
             activeHelpKey: floodFillMaxError
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2159
             visibilityChannel: cropBoxIsNotDialog
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2160
             tabable: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2161
             model: floodFillMaxLightError
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2162
             type: number
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2163
             acceptChannel: acceptChannel
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2164
             acceptOnPointerLeave: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2165
           )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2166
          (HorizontalPanelViewSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2167
             name: 'HorizontalPanel1'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2168
             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
  2169
             visibilityChannel: cropBoxIsDialog
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2170
             horizontalLayout: fitSpace
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2171
             verticalLayout: center
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2172
             horizontalSpace: 3
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2173
             verticalSpace: 3
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2174
             reverseOrderIfOKAtLeft: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2175
             component: 
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2176
            (SpecCollection
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2177
               collection: (
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2178
                (ActionButtonSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2179
                   label: 'Cancel'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2180
                   name: 'Button1'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2181
                   translateLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2182
                   resizeForLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2183
                   tabable: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2184
                   model: cancel
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2185
                   extent: (Point 116 28)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2186
                 )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2187
                (ActionButtonSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2188
                   label: 'Apply'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2189
                   name: 'Button3'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2190
                   translateLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2191
                   resizeForLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2192
                   tabable: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2193
                   model: applyCropAction
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2194
                   extent: (Point 116 28)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2195
                 )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2196
                (ActionButtonSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2197
                   label: 'OK'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2198
                   name: 'Button2'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2199
                   translateLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2200
                   resizeForLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2201
                   tabable: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2202
                   model: accept
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2203
                   extent: (Point 116 28)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2204
                 )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2205
                )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2206
              
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2207
             )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2208
           )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2209
          )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2210
        
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2211
       )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2212
     )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2213
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2214
1557
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2215
shiftDialogSpec
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2216
    "This resource specification was automatically generated
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2217
     by the UIPainter of ST/X."
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2218
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2219
    "Do not manually edit this!! If it is corrupted,
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2220
     the UIPainter may not be able to read the specification."
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2221
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2222
    "
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2223
     UIPainter new openOnClass:ImageEditor andSelector:#shiftDialogSpec
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2224
     ImageEditor new openInterface:#shiftDialogSpec
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2225
    "
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2226
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2227
    <resource: #canvas>
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2228
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2229
    ^ 
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2230
     #(FullSpec
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2231
        name: shiftDialogSpec
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2232
        window: 
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2233
       (WindowSpec
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2234
          label: 'Shift'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2235
          name: 'Shift'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2236
          min: (Point 10 10)
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2237
          bounds: (Rectangle 14 46 259 229)
1557
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2238
        )
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2239
        component: 
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2240
       (SpecCollection
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2241
          collection: (
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2242
           (LabelSpec
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2243
              label: 'Amount:'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2244
              name: 'AmountLabel'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2245
              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
  2246
              translateLabel: true
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2247
              adjust: right
1557
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2248
            )
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2249
           (InputFieldSpec
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2250
              name: 'AmountEntryField'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2251
              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
  2252
              tabable: true
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2253
              model: shiftAmount
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2254
              type: number
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2255
              acceptChannel: acceptChannel
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2256
              acceptOnPointerLeave: false
1557
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2257
            )
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2258
           (HorizontalPanelViewSpec
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2259
              name: 'HorizontalPanel1'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2260
              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
  2261
              horizontalLayout: fitSpace
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2262
              verticalLayout: center
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2263
              horizontalSpace: 3
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2264
              verticalSpace: 3
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2265
              reverseOrderIfOKAtLeft: true
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2266
              component: 
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2267
             (SpecCollection
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2268
                collection: (
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2269
                 (ActionButtonSpec
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2270
                    label: 'Cancel'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2271
                    name: 'Button1'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2272
                    translateLabel: true
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2273
                    tabable: true
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2274
                    model: cancel
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2275
                    extent: (Point 118 22)
1557
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2276
                  )
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2277
                 (ActionButtonSpec
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2278
                    label: 'OK'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2279
                    name: 'Button2'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2280
                    translateLabel: true
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2281
                    tabable: true
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2282
                    model: accept
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2283
                    extent: (Point 118 22)
1557
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2284
                  )
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2285
                 )
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2286
               
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2287
              )
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2288
            )
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2289
           (ArrowButtonSpec
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2290
              name: 'upArrowButton'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2291
              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
  2292
              model: shiftUpNow
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2293
              isTriggerOnDown: true
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2294
              autoRepeat: true
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2295
              actionValue: ''
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2296
              direction: up
1557
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2297
            )
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2298
           (ArrowButtonSpec
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2299
              name: 'leftArrowButton'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2300
              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
  2301
              model: shiftLeftNow
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2302
              isTriggerOnDown: true
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2303
              autoRepeat: true
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2304
              actionValue: ''
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2305
              direction: left
1557
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2306
            )
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2307
           (ArrowButtonSpec
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2308
              name: 'rightArrowButton'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2309
              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
  2310
              model: shiftRightNow
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2311
              isTriggerOnDown: true
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2312
              autoRepeat: true
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2313
              actionValue: ''
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2314
              direction: right
1557
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2315
            )
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2316
           (ArrowButtonSpec
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2317
              name: 'downArrowButton'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2318
              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
  2319
              model: shiftDownNow
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2320
              isTriggerOnDown: true
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2321
              autoRepeat: true
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2322
              actionValue: ''
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2323
              direction: down
1557
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2324
            )
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2325
           (CheckBoxSpec
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2326
              label: 'Wrap'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2327
              name: 'CheckBox1'
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2328
              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
  2329
              model: wrap
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  2330
              translateLabel: true
1713
088ff38c03a5 shift + wrap
Claus Gittinger <cg@exept.de>
parents: 1708
diff changeset
  2331
            )
1557
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2332
           )
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2333
         
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2334
        )
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2335
      )
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2336
!
78409b670c85 added shift operation
Claus Gittinger <cg@exept.de>
parents: 1556
diff changeset
  2337
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2338
uncropSpec
1480
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  2339
    "This resource specification was automatically generated
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  2340
     by the UIPainter of ST/X."
1796
e2c8c895443a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1793
diff changeset
  2341
1480
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  2342
    "Do not manually edit this!! If it is corrupted,
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  2343
     the UIPainter may not be able to read the specification."
1796
e2c8c895443a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1793
diff changeset
  2344
1480
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  2345
    "
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2346
     UIPainter new openOnClass:ImageEditor andSelector:#uncropSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2347
     ImageEditor new openInterface:#uncropSpec
1480
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  2348
    "
1796
e2c8c895443a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1793
diff changeset
  2349
e2c8c895443a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1793
diff changeset
  2350
    <resource: #canvas>
e2c8c895443a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1793
diff changeset
  2351
e2c8c895443a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1793
diff changeset
  2352
    ^ 
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2353
    #(FullSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2354
       name: uncropSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2355
       window: 
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2356
      (WindowSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2357
         label: 'Add Border(s)'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2358
         name: 'Add Border(s)'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2359
         min: (Point 10 10)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2360
         max: (Point 800 478)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2361
         bounds: (Rectangle 0 0 261 228)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2362
       )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2363
       component: 
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2364
      (SpecCollection
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2365
         collection: (
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2366
          (LabelSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2367
             label: 'Left:'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2368
             name: 'Label1'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2369
             layout: (LayoutFrame 14 0 21 0 90 0 43 0)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2370
             translateLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2371
             adjust: right
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2372
           )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2373
          (InputFieldSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2374
             name: 'EntryField1'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2375
             layout: (LayoutFrame 95 0 21 0 132 0 43 0)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2376
             model: cropLeftAmount
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2377
             type: number
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2378
             acceptOnPointerLeave: false
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2379
           )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2380
          (LabelSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2381
             label: 'Right:'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2382
             name: 'Label2'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2383
             layout: (LayoutFrame 14 0 51 0 90 0 73 0)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2384
             translateLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2385
             adjust: right
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2386
           )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2387
          (InputFieldSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2388
             name: 'EntryField2'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2389
             layout: (LayoutFrame 95 0 51 0 132 0 73 0)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2390
             model: cropRightAmount
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2391
             type: number
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2392
             acceptOnPointerLeave: false
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2393
           )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2394
          (LabelSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2395
             label: 'Top:'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2396
             name: 'Label3'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2397
             layout: (LayoutFrame 14 0 81 0 90 0 103 0)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2398
             translateLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2399
             adjust: right
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2400
           )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2401
          (InputFieldSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2402
             name: 'EntryField3'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2403
             layout: (LayoutFrame 95 0 81 0 132 0 103 0)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2404
             model: cropTopAmount
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2405
             type: number
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2406
             acceptOnPointerLeave: false
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2407
           )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2408
          (LabelSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2409
             label: 'Bottom:'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2410
             name: 'Label4'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2411
             layout: (LayoutFrame 14 0 111 0 90 0 133 0)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2412
             translateLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2413
             adjust: right
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2414
           )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2415
          (InputFieldSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2416
             name: 'EntryField4'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2417
             layout: (LayoutFrame 95 0 111 0 132 0 133 0)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2418
             model: cropBottomAmount
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2419
             type: number
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2420
             acceptOnPointerLeave: false
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2421
           )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2422
          (HorizontalPanelViewSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2423
             name: 'HorizontalPanel1'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2424
             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
  2425
             horizontalLayout: fitSpace
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2426
             verticalLayout: center
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2427
             horizontalSpace: 3
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2428
             verticalSpace: 3
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2429
             reverseOrderIfOKAtLeft: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2430
             component: 
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2431
            (SpecCollection
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2432
               collection: (
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2433
                (ActionButtonSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2434
                   label: 'Cancel'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2435
                   name: 'Button1'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2436
                   translateLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2437
                   model: cancel
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2438
                   extent: (Point 124 22)
1796
e2c8c895443a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1793
diff changeset
  2439
                 )
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2440
                (ActionButtonSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2441
                   label: 'OK'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2442
                   name: 'Button2'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2443
                   translateLabel: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2444
                   model: accept
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2445
                   extent: (Point 125 22)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2446
                 )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2447
                )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2448
              
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2449
             )
1796
e2c8c895443a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1793
diff changeset
  2450
           )
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2451
          )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2452
        
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2453
       )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2454
     )
1480
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  2455
!
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  2456
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2457
windowSpec
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2458
    "This resource specification was automatically generated
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2459
     by the UIPainter of ST/X."
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2460
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2461
    "Do not manually edit this!! If it is corrupted,
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2462
     the UIPainter may not be able to read the specification."
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2463
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2464
    "
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2465
     UIPainter new openOnClass:ImageEditor andSelector:#windowSpec
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2466
     ImageEditor new openInterface:#windowSpec
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2467
     ImageEditor open
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2468
    "
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2469
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2470
    <resource: #canvas>
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  2471
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  2472
    ^ 
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2473
    #(FullSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2474
       name: windowSpec
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  2475
       uuid: 'ea3a8340-1e4a-11b2-83b1-485b39758412'
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2476
       window: 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2477
      (WindowSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2478
         label: 'Image Editor'
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2479
         name: 'Image Editor'
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  2480
         uuid: 'ea3a8bec-1e4a-11b2-83b1-485b39758412'
3443
b9d9eb4b34f9 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3442
diff changeset
  2481
         min: (Point 800 400)
b9d9eb4b34f9 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3442
diff changeset
  2482
         bounds: (Rectangle 0 0 800 446)
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2483
         menu: menu
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2484
         icon: defaultIcon
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2485
       )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2486
       component: 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2487
      (SpecCollection
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2488
         collection: (
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2489
          (MenuPanelSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2490
             name: 'menuToolbarView'
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2491
             layout: (LayoutFrame 0 0.0 0 0 0 1.0 32 0)
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  2492
             style: (FontDescription helvetica medium roman 10 #'iso10646-1' nil nil)
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  2493
             uuid: 'ea3a98c6-1e4a-11b2-83b1-485b39758412'
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2494
             menu: menuToolbar
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2495
             showSeparatingLines: true
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2496
           )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2497
          (VariableHorizontalPanelSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2498
             name: 'mainPanel'
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2499
             layout: (LayoutFrame 0 0.0 34 0.0 0 1.0 -26 1.0)
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  2500
             uuid: 'ea3a9eca-1e4a-11b2-83b1-485b39758412'
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2501
             snapMode: both
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2502
             barLevel: 0
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2503
             component: 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2504
            (SpecCollection
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2505
               collection: (
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2506
                (ViewSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2507
                   name: 'leftView'
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  2508
                   uuid: 'ea3aa3d4-1e4a-11b2-83b1-485b39758412'
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2509
                   level: 1
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2510
                   component: 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2511
                  (SpecCollection
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2512
                     collection: (
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2513
                      (VariableVerticalPanelSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2514
                         name: 'verticalPanel'
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2515
                         layout: (LayoutFrame 0 0.0 0 0.0 0 1.0 0 1.0)
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  2516
                         uuid: 'ea3aa672-1e4a-11b2-83b1-485b39758412'
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2517
                         level: 0
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2518
                         snapMode: both
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2519
                         component: 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2520
                        (SpecCollection
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2521
                           collection: (
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2522
                            (ViewSpec
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  2523
                               name: 'ColorAnCropBox'
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  2524
                               uuid: 'ea3aa992-1e4a-11b2-83b1-485b39758412'
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2525
                               component: 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2526
                              (SpecCollection
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2527
                                 collection: (
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2528
                                  (TabViewSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2529
                                     name: 'TabHeader1'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2530
                                     layout: (LayoutFrame 0 0 0 0 0 1 36 0)
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  2531
                                     uuid: 'ea3aab9a-1e4a-11b2-83b1-485b39758412'
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2532
                                     model: colorCropTabSelectionIndexHolder
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2533
                                     menu: colorCropTabLabelList
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2534
                                     useIndex: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2535
                                     translateLabel: true
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
                                  (ViewSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2538
                                     name: 'ColorBox'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2539
                                     layout: (LayoutFrame 0 0 36 0 0 1 0 1)
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  2540
                                     uuid: 'ea3ab0ae-1e4a-11b2-83b1-485b39758412'
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2541
                                     visibilityChannel: colorBoxVisibleHolder
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2542
                                     component: 
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2543
                                    (SpecCollection
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2544
                                       collection: (
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2545
                                        (MenuPanelSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2546
                                           name: 'MouseButtonColorToolBar'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2547
                                           layout: (LayoutFrame 0 0.0 0 0 0 1.0 24 0)
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  2548
                                           uuid: 'ea3ab2d4-1e4a-11b2-83b1-485b39758412'
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2549
                                           level: 0
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2550
                                           menu: menuMouseButtonColors
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2551
                                         )
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2552
                                        (LabelSpec
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2553
                                           label: 'Label'
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2554
                                           name: 'Label1'
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2555
                                           layout: (LayoutFrame -160 1 0 0 -104 1 22 0)
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  2556
                                           activeHelpKey: drawingAlpha
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  2557
                                           uuid: 'ea3ab590-1e4a-11b2-83b1-485b39758412'
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  2558
                                           visibilityChannel: alphaVisibleHolder
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2559
                                           translateLabel: true
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2560
                                           labelChannel: alphaText
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2561
                                         )
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2562
                                        (InputFieldSpec
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2563
                                           name: 'EntryField1'
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2564
                                           layout: (LayoutFrame -106 1 2 0 -56 1 22 0)
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  2565
                                           activeHelpKey: drawingAlpha
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  2566
                                           uuid: 'ea3aba90-1e4a-11b2-83b1-485b39758412'
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  2567
                                           visibilityChannel: alphaVisibleHolder
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  2568
                                           model: alphaHolder
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  2569
                                           type: numberInRange
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2570
                                           acceptOnReturn: true
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2571
                                           acceptOnTab: true
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  2572
                                           numChars: 3
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  2573
                                           minValue: 0
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  2574
                                           maxValue: 100
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2575
                                           acceptOnPointerLeave: true
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  2576
                                         )
3421
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  2577
                                        (ViewSpec
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  2578
                                           name: 'Box1'
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  2579
                                           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
  2580
                                           activeHelpKey: drawingColor1
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  2581
                                           uuid: 'ea3ac1c0-1e4a-11b2-83b1-485b39758412'
3421
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  2582
                                           level: -1
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  2583
                                           backgroundChannel: drawingColor1Holder
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  2584
                                         )
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  2585
                                        (ViewSpec
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  2586
                                           name: 'Box2'
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  2587
                                           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
  2588
                                           activeHelpKey: drawingColor2
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  2589
                                           uuid: 'ea3ac418-1e4a-11b2-83b1-485b39758412'
3421
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  2590
                                           level: -1
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  2591
                                           backgroundChannel: drawingColor2Holder
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  2592
                                         )
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2593
                                        (DataSetSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2594
                                           name: 'colorDataSetView'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2595
                                           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
  2596
                                           activeHelpKey: colorMapTable
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  2597
                                           style: (FontDescription helvetica medium roman 10 #'iso10646-1' nil nil)
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  2598
                                           uuid: 'ea3ac652-1e4a-11b2-83b1-485b39758412'
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2599
                                           model: selectedColors
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  2600
                                           menu: colorMapMenuHolder
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2601
                                           hasHorizontalScrollBar: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2602
                                           hasVerticalScrollBar: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2603
                                           miniScrollerHorizontal: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2604
                                           miniScrollerVertical: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2605
                                           dataList: listOfColors
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2606
                                           has3Dseparators: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2607
                                           doubleClickSelector: doubleClickOnColor:
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2608
                                           columnHolder: colorTableColumns
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2609
                                           multipleSelectOk: true
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2610
                                           verticalSpacing: 1
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2611
                                           columnAdaptor: colorColumnAdaptor
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2612
                                         )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2613
                                        )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2614
                                      
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2615
                                     )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2616
                                   )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2617
                                  (ViewSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2618
                                     name: 'FloodFillBox'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2619
                                     layout: (LayoutFrame 0 0 36 0 0 1 0 1)
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  2620
                                     uuid: 'ea3acfda-1e4a-11b2-83b1-485b39758412'
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2621
                                     visibilityChannel: floodFillBoxVisibleHolder
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2622
                                     component: 
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2623
                                    (SpecCollection
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2624
                                       collection: (
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2625
                                        (UISubSpecification
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2626
                                           name: 'SubSpecification2'
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2627
                                           layout: (LayoutFrame 0 0 0 0 0 1 0 1)
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  2628
                                           uuid: 'ea3ad21e-1e4a-11b2-83b1-485b39758412'
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2629
                                           minorKey: floodFillToleranceSpec
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2630
                                         )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2631
                                        )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2632
                                      
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2633
                                     )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2634
                                   )
3400
3cd67963333d #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3393
diff changeset
  2635
                                  (ViewSpec
3cd67963333d #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3393
diff changeset
  2636
                                     name: 'CropBox'
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2637
                                     layout: (LayoutFrame 0 0 36 0 0 1 0 1)
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  2638
                                     uuid: 'ea3ad552-1e4a-11b2-83b1-485b39758412'
3400
3cd67963333d #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3393
diff changeset
  2639
                                     visibilityChannel: cropBoxVisibleHolder
3cd67963333d #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3393
diff changeset
  2640
                                     component: 
3cd67963333d #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3393
diff changeset
  2641
                                    (SpecCollection
3cd67963333d #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3393
diff changeset
  2642
                                       collection: (
3cd67963333d #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3393
diff changeset
  2643
                                        (UISubSpecification
3cd67963333d #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3393
diff changeset
  2644
                                           name: 'SubSpecification1'
3cd67963333d #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3393
diff changeset
  2645
                                           layout: (LayoutFrame 0 0 0 0 0 1 0 1)
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  2646
                                           uuid: 'ea3ad76e-1e4a-11b2-83b1-485b39758412'
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  2647
                                           minorKey: cropSpec
3400
3cd67963333d #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3393
diff changeset
  2648
                                         )
3cd67963333d #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3393
diff changeset
  2649
                                        )
3cd67963333d #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3393
diff changeset
  2650
                                      
3cd67963333d #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3393
diff changeset
  2651
                                     )
3cd67963333d #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3393
diff changeset
  2652
                                   )
3195
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
                               )
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  2656
                             )
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2657
                            (ArbitraryComponentSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2658
                               name: 'imagePreView'
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2659
                               activeHelpKey: previewView
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  2660
                               uuid: 'ea3ad9a8-1e4a-11b2-83b1-485b39758412'
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2661
                               menu: previewMenu
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2662
                               hasHorizontalScrollBar: true
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2663
                               hasVerticalScrollBar: true
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2664
                               miniScrollerHorizontal: false
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2665
                               miniScrollerVertical: false
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2666
                               hasBorder: false
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2667
                               component: ImageView
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2668
                             )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2669
                            )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2670
                          
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2671
                         )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2672
                         handles: (Any 0.5 1.0)
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  2673
                       )
3195
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
                   )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2677
                 )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2678
                (ViewSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2679
                   name: 'rightView'
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  2680
                   uuid: 'ea3ade8a-1e4a-11b2-83b1-485b39758412'
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2681
                   component: 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2682
                  (SpecCollection
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2683
                     collection: (
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2684
                      (MenuPanelSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2685
                         name: 'ToolBar1'
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2686
                         layout: (LayoutFrame 0 0 0 0.0 28 0 0 1.0)
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  2687
                         uuid: 'ea3ae0b0-1e4a-11b2-83b1-485b39758412'
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2688
                         level: 1
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2689
                         menu: toolsMenuToolbar
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2690
                         verticalLayout: true
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2691
                         centerItems: true
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2692
                         textDefault: true
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2693
                       )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2694
                      (ViewSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2695
                         name: 'editingView'
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2696
                         layout: (LayoutFrame 28 0.0 0 0.0 0 1.0 0 1.0)
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  2697
                         uuid: 'ea3ae3bc-1e4a-11b2-83b1-485b39758412'
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2698
                         level: 1
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2699
                         component: 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2700
                        (SpecCollection
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2701
                           collection: (
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2702
                            (ArbitraryComponentSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2703
                               name: 'imageEditView'
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2704
                               layout: (LayoutFrame 2 0.0 2 0.0 -2 1.0 -24 1.0)
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  2705
                               uuid: 'ea3ae5ec-1e4a-11b2-83b1-485b39758412'
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2706
                               hasHorizontalScrollBar: true
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2707
                               hasVerticalScrollBar: true
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2708
                               hasBorder: false
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2709
                               component: ImageEditView
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2710
                             )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2711
                            (LabelSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2712
                               name: 'coordLabel'
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2713
                               layout: (LayoutFrame 2 0.0 -22 1 -83 1.0 0 1.0)
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  2714
                               uuid: 'ea3ae8da-1e4a-11b2-83b1-485b39758412'
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2715
                               level: -1
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2716
                               translateLabel: true
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2717
                               labelChannel: imageInfoHolder
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2718
                               resizeForLabel: false
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2719
                               adjust: left
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  2720
                             )
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2721
                            (ArrowButtonSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2722
                               name: 'magnifyDownButton'
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2723
                               layout: (LayoutFrame -80 1 -22 1 -58 1 0 1)
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2724
                               activeHelpKey: magnifyImageDown
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  2725
                               uuid: 'ea3aebd2-1e4a-11b2-83b1-485b39758412'
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2726
                               translateLabel: true
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2727
                               model: doMagnifyDown
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2728
                               enableChannel: imageIsLoadedHolder
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2729
                               isTriggerOnDown: true
3479
8053bda07548 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3478
diff changeset
  2730
                               autoRepeat: true
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2731
                               direction: left
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2732
                             )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2733
                            (ArrowButtonSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2734
                               name: 'magnifyUpButton'
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2735
                               layout: (LayoutFrame -24 1 -22 1 -2 1 0 1)
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2736
                               activeHelpKey: magnifyImageUp
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  2737
                               uuid: 'ea3af26c-1e4a-11b2-83b1-485b39758412'
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2738
                               translateLabel: true
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2739
                               model: doMagnifyUp
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2740
                               enableChannel: imageIsLoadedHolder
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2741
                               isTriggerOnDown: true
3479
8053bda07548 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3478
diff changeset
  2742
                               autoRepeat: true
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2743
                               direction: right
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2744
                             )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2745
                            (InputFieldSpec
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2746
                               name: 'magnificationInputField'
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2747
                               layout: (LayoutFrame -57 1 -22 1 -26 1 0 1)
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2748
                               activeHelpKey: magnificationNumber
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  2749
                               uuid: 'ea3af62c-1e4a-11b2-83b1-485b39758412'
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2750
                               enableChannel: imageIsLoadedHolder
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2751
                               model: magnificationHolder
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2752
                               type: numberInRange
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2753
                               acceptOnReturn: true
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2754
                               acceptOnTab: true
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2755
                               numChars: 2
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2756
                               minValue: 1
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2757
                               maxValue: 99
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2758
                               acceptOnPointerLeave: true
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2759
                             )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2760
                            )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2761
                          
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2762
                         )
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  2763
                       )
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2764
                      )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2765
                    
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2766
                   )
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  2767
                 )
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2768
                )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2769
              
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2770
             )
3443
b9d9eb4b34f9 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3442
diff changeset
  2771
             handles: (Any 0.47999999999999998 1.0)
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  2772
           )
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2773
          (UISubSpecification
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2774
             name: 'infoBarSubSpec'
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2775
             layout: (LayoutFrame 0 0.0 -24 1 0 1.0 0 1.0)
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  2776
             uuid: 'ea3afaf0-1e4a-11b2-83b1-485b39758412'
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2777
             majorKey: ToolApplicationModel
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2778
             minorKey: windowSpecForInfoBar
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2779
           )
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
        
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2782
       )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2783
     )
519
085cf69fcd6c single lines in tool bar removed
tz
parents: 503
diff changeset
  2784
! !
085cf69fcd6c single lines in tool bar removed
tz
parents: 503
diff changeset
  2785
085cf69fcd6c single lines in tool bar removed
tz
parents: 503
diff changeset
  2786
!ImageEditor class methodsFor:'menu specs'!
085cf69fcd6c single lines in tool bar removed
tz
parents: 503
diff changeset
  2787
1053
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  2788
colorMapMenu
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  2789
    "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
  2790
     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
  2791
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  2792
    "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
  2793
     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
  2794
3592
149f58a2a522 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3586
diff changeset
  2795
1053
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  2796
    "
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2797
     MenuEditor new openOnClass:ImageEditor andSelector:#colorMapMenu
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2798
     (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
  2799
    "
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  2800
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  2801
    <resource: #menu>
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  2802
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2803
    ^ 
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2804
     #(Menu
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2805
        (
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2806
         (MenuItem
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  2807
            enabled: canAddColorToColormapHolder
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2808
            label: 'Add Color'
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2809
            itemValue: addColorToColormap
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2810
          )
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2811
         (MenuItem
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  2812
            enabled: canAddColorToColormapHolder
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  2813
            label: 'Add & Paste Color'
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  2814
            itemValue: addPastedColorToColormap
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  2815
          )
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  2816
         (MenuItem
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  2817
            enabled: canAddColorToColormapHolder
2539
3fa0fde65f75 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2520
diff changeset
  2818
            label: 'Pick and Add Color...'
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2819
            itemValue: pickAndAddColorToColormap
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2820
          )
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2821
         (MenuItem
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2822
            label: '-'
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2823
          )
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2824
         (MenuItem
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  2825
            enabled: hasColormapAndSingleColorSelectedHolder
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2826
            label: 'Cut Color'
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2827
            itemValue: cutColorFromColormap
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2828
            isVisible: false
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2829
          )
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2830
         (MenuItem
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2831
            enabled: hasSingleColorSelectedHolder
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2832
            label: 'Copy Color'
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2833
            itemValue: copyColorFromColormap
2841
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  2834
            shortcutKey: Copy
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2835
          )
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2836
         (MenuItem
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  2837
            enabled: hasColormapAndSingleWritableColorSelectedHolder
2539
3fa0fde65f75 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2520
diff changeset
  2838
            label: 'Pick and Paste Color...'
1933
2fe701f721ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1931
diff changeset
  2839
            itemValue: pickAndPasteColor
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2840
          )
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2841
         (MenuItem
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  2842
            enabled: canChangeColorInColormapHolder
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2843
            label: 'Paste Color'
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2844
            itemValue: pasteColorIntoColormap
2841
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  2845
            shortcutKey: Paste
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2846
          )
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2847
         (MenuItem
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2848
            label: '-'
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2849
          )
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  2850
         (MenuItem
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  2851
            enabled: hasColormapAndSingleWritableColorSelectedHolder
2539
3fa0fde65f75 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2520
diff changeset
  2852
            label: 'Edit Color...'
1931
34b208e7231f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1930
diff changeset
  2853
            itemValue: editSelectedColor
3592
149f58a2a522 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3586
diff changeset
  2854
          )
149f58a2a522 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3586
diff changeset
  2855
         (MenuItem
149f58a2a522 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3586
diff changeset
  2856
            enabled: hasColormapAndColorSelected
149f58a2a522 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3586
diff changeset
  2857
            label: 'Make Gray'
149f58a2a522 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3586
diff changeset
  2858
            itemValue: makeSelectedColorGray
149f58a2a522 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3586
diff changeset
  2859
          )
149f58a2a522 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3586
diff changeset
  2860
         (MenuItem
149f58a2a522 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3586
diff changeset
  2861
            enabled: hasColormapAndSingleWritableColorSelectedHolder
149f58a2a522 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3586
diff changeset
  2862
            label: 'Color Shift...'
149f58a2a522 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3586
diff changeset
  2863
            itemValue: makeSelectedColorShifted
149f58a2a522 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3586
diff changeset
  2864
          )
149f58a2a522 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3586
diff changeset
  2865
         (MenuItem
149f58a2a522 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3586
diff changeset
  2866
            label: '-'
149f58a2a522 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3586
diff changeset
  2867
          )
149f58a2a522 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3586
diff changeset
  2868
         (MenuItem
149f58a2a522 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3586
diff changeset
  2869
            enabled: hasColormapAndColorSelected
149f58a2a522 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3586
diff changeset
  2870
            label: 'Slightly Brighter'
149f58a2a522 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3586
diff changeset
  2871
            itemValue: makeSelectedColorSlightlyBrighter
149f58a2a522 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3586
diff changeset
  2872
          )
149f58a2a522 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3586
diff changeset
  2873
         (MenuItem
149f58a2a522 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3586
diff changeset
  2874
            enabled: hasColormapAndColorSelected
149f58a2a522 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3586
diff changeset
  2875
            label: 'Slightly Darker'
149f58a2a522 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3586
diff changeset
  2876
            itemValue: makeSelectedColorSlightlyDarker
1931
34b208e7231f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1930
diff changeset
  2877
          )
34b208e7231f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1930
diff changeset
  2878
         (MenuItem
3553
31631af8baf9 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3552
diff changeset
  2879
            enabled: hasColormapAndColorSelected
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2880
            label: 'Brighter'
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2881
            itemValue: makeSelectedColorBrighter
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2882
          )
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2883
         (MenuItem
3553
31631af8baf9 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3552
diff changeset
  2884
            enabled: hasColormapAndColorSelected
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2885
            label: 'Darker'
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2886
            itemValue: makeSelectedColorDarker
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2887
          )
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2888
         (MenuItem
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2889
            label: '-'
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2890
          )
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2891
         (MenuItem
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  2892
            enabled: hasSingleColorSelectedHolder
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2893
            label: 'Inspect Color'
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2894
            itemValue: inspectColor
2651
270672891645 changed: #colorMapMenu
Claus Gittinger <cg@exept.de>
parents: 2595
diff changeset
  2895
          )
270672891645 changed: #colorMapMenu
Claus Gittinger <cg@exept.de>
parents: 2595
diff changeset
  2896
         (MenuItem
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  2897
            enabled: imageHasColormapHolder
2651
270672891645 changed: #colorMapMenu
Claus Gittinger <cg@exept.de>
parents: 2595
diff changeset
  2898
            label: 'Inspect Colormap'
270672891645 changed: #colorMapMenu
Claus Gittinger <cg@exept.de>
parents: 2595
diff changeset
  2899
            itemValue: inspectColormap
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2900
          )
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2901
         )
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2902
        nil
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  2903
        nil
1053
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  2904
      )
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  2905
!
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  2906
400
228524287573 intitial checkin
tz
parents:
diff changeset
  2907
menu
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  2908
    "This resource specification was automatically generated
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  2909
     by the MenuEditor of ST/X."
400
228524287573 intitial checkin
tz
parents:
diff changeset
  2910
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  2911
    "Do not manually edit this!! If it is corrupted,
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  2912
     the MenuEditor may not be able to read the specification."
400
228524287573 intitial checkin
tz
parents:
diff changeset
  2913
228524287573 intitial checkin
tz
parents:
diff changeset
  2914
    "
228524287573 intitial checkin
tz
parents:
diff changeset
  2915
     MenuEditor new openOnClass:ImageEditor andSelector:#menu
228524287573 intitial checkin
tz
parents:
diff changeset
  2916
     (Menu new fromLiteralArrayEncoding:(ImageEditor menu)) startUp
228524287573 intitial checkin
tz
parents:
diff changeset
  2917
    "
228524287573 intitial checkin
tz
parents:
diff changeset
  2918
228524287573 intitial checkin
tz
parents:
diff changeset
  2919
    <resource: #menu>
228524287573 intitial checkin
tz
parents:
diff changeset
  2920
1124
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  2921
    ^ 
1882
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2922
     #(Menu
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2923
        (
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2924
         (MenuItem
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2925
            label: '&File'
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2926
            translateLabel: true
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  2927
            submenuChannel: menuFile
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2928
            "/ keepLinkedMenu: true
1124
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  2929
          )
1882
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2930
         (MenuItem
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2931
            label: 'Edit'
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2932
            translateLabel: true
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  2933
            submenuChannel: menuEdit
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2934
            "/ keepLinkedMenu: true
1124
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  2935
          )
1882
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2936
         (MenuItem
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2937
            label: 'Mode'
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2938
            translateLabel: true
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2939
            submenuChannel: modeMenu
3374
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  2940
            isVisible: modeMenuVisible
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  2941
          )
1882
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2942
         (MenuItem
3497
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  2943
            label: 'Image'
1882
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2944
            translateLabel: true
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2945
            submenuChannel: menuColors
1124
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  2946
          )
1882
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2947
         (MenuItem
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2948
            label: 'Settings'
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2949
            translateLabel: true
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2950
            submenuChannel: menuSettings
1124
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  2951
          )
1882
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2952
         (MenuItem
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2953
            label: 'History'
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2954
            translateLabel: true
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  2955
            isVisible: isStandAlone
1882
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2956
            submenuChannel: menuHistory
1124
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  2957
          )
1882
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2958
         (MenuItem
2136
bb10485fa455 support '?' as help (for now: controlled by resources)
Claus Gittinger <cg@exept.de>
parents: 2125
diff changeset
  2959
            label: 'MENU_Help'
1882
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2960
            translateLabel: true
2125
22ad4aa3e495 #conditionalRight
Claus Gittinger <cg@exept.de>
parents: 2073
diff changeset
  2961
            startGroup: conditionalRight
1882
80845a794f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1880
diff changeset
  2962
            submenuChannel: menuHelp
1124
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  2963
          )
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  2964
         )
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  2965
        nil
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  2966
        nil
400
228524287573 intitial checkin
tz
parents:
diff changeset
  2967
      )
3497
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  2968
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  2969
    "Modified: / 23-10-2017 / 10:39:43 / cg"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  2970
!
228524287573 intitial checkin
tz
parents:
diff changeset
  2971
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2972
menuColors
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2973
    "This resource specification was automatically generated
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2974
     by the MenuEditor of ST/X."
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2975
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2976
    "Do not manually edit this!! If it is corrupted,
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2977
     the MenuEditor may not be able to read the specification."
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2978
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  2979
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2980
    "
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2981
     MenuEditor new openOnClass:ImageEditor andSelector:#menuColors
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2982
     (Menu new fromLiteralArrayEncoding:(ImageEditor menuColors)) startUp
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2983
    "
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2984
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2985
    <resource: #menu>
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2986
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2987
    ^ 
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2988
     #(Menu
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2989
        (
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2990
         (MenuItem
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  2991
            enabled: imageIsLoaded
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2992
            label: 'Depth'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2993
            submenu: 
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2994
           (Menu
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2995
              (
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2996
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2997
                  activeHelpKey: colorMap1
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  2998
                  enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  2999
                  label: '1-Plane'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3000
                  itemValue: colorMapMode:
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3001
                  argument: depth1
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3002
                  choice: colorMapMode
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3003
                  choiceValue: depth1
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3004
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3005
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3006
                  activeHelpKey: colorMap1M
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3007
                  enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3008
                  label: '1-Plane + Mask'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3009
                  itemValue: colorMapMode:
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3010
                  argument: masked1
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3011
                  choice: colorMapMode
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3012
                  choiceValue: masked1
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3013
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3014
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3015
                  label: '-'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3016
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3017
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3018
                  activeHelpKey: colorMap2
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3019
                  enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3020
                  label: '2-Plane'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3021
                  itemValue: colorMapMode:
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3022
                  argument: depth2
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3023
                  choice: colorMapMode
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3024
                  choiceValue: depth2
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3025
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3026
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3027
                  activeHelpKey: colorMap2M
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3028
                  enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3029
                  label: '2-Plane + Mask'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3030
                  itemValue: colorMapMode:
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3031
                  argument: masked2
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3032
                  choice: colorMapMode
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3033
                  choiceValue: masked2
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3034
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3035
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3036
                  label: '-'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3037
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3038
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3039
                  activeHelpKey: colorMap4
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3040
                  enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3041
                  label: '4-Plane'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3042
                  itemValue: colorMapMode:
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3043
                  argument: depth4
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3044
                  choice: colorMapMode
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3045
                  choiceValue: depth4
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3046
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3047
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3048
                  activeHelpKey: colorMap4M
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3049
                  enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3050
                  label: '4-Plane + Mask'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3051
                  itemValue: colorMapMode:
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3052
                  argument: masked4
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3053
                  choice: colorMapMode
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3054
                  choiceValue: masked4
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3055
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3056
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3057
                  label: '-'
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
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3060
                  activeHelpKey: colorMap8
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3061
                  enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3062
                  label: '8-Plane'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3063
                  itemValue: colorMapMode:
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3064
                  argument: depth8
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3065
                  choice: colorMapMode
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3066
                  choiceValue: depth8
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3067
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3068
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3069
                  activeHelpKey: colorMap8M
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3070
                  enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3071
                  label: '8-Plane + Mask'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3072
                  itemValue: colorMapMode:
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3073
                  argument: masked8
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3074
                  choice: colorMapMode
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3075
                  choiceValue: masked8
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3076
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3077
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3078
                  label: '-'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3079
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3080
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3081
                  activeHelpKey: colorMap16
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3082
                  enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3083
                  label: '16-Plane'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3084
                  itemValue: colorMapMode:
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3085
                  argument: depth16
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3086
                  choice: colorMapMode
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3087
                  choiceValue: depth16
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3088
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3089
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3090
                  activeHelpKey: colorMap16M
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3091
                  enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3092
                  label: '16-Plane + Mask'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3093
                  itemValue: colorMapMode:
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3094
                  argument: masked16
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3095
                  choice: colorMapMode
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3096
                  choiceValue: masked16
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3097
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3098
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3099
                  label: '-'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3100
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3101
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3102
                  activeHelpKey: colorMap24
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3103
                  enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3104
                  label: '24-Plane'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3105
                  itemValue: colorMapMode:
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3106
                  argument: depth24
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3107
                  choice: colorMapMode
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3108
                  choiceValue: depth24
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3109
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3110
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3111
                  activeHelpKey: colorMap24M
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3112
                  enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3113
                  label: '24-Plane + Mask'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3114
                  itemValue: colorMapMode:
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3115
                  argument: masked24
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3116
                  choice: colorMapMode
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3117
                  choiceValue: masked24
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3118
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3119
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3120
                  label: '-'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3121
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3122
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3123
                  activeHelpKey: colorMap32
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3124
                  enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3125
                  label: '32-Plane (rgba)'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3126
                  itemValue: colorMapMode:
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3127
                  argument: depth32
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3128
                  choice: colorMapMode
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3129
                  choiceValue: depth32
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3130
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3131
               )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3132
              nil
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3133
              nil
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3134
            )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3135
          )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3136
         (MenuItem
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3137
            enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3138
            label: 'ColorMap'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3139
            submenu: 
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3140
           (Menu
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3141
              (
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3142
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3143
                  activeHelpKey: compressColormap
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3144
                  enabled: hasColormapHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3145
                  label: 'Compress Colormap'
2826
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3146
                  itemValue: #'menu_compressColorMap'
2585
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
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3149
                  enabled: hasColormapHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3150
                  label: 'Sort Colormap'
2826
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3151
                  itemValue: #'menu_sortColorMap'
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3152
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3153
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3154
                  label: 'Reduce Number of Colors by Rounding...'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3155
                  itemValue: reduceNumberOfColors2
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3156
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3157
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3158
                  label: 'Reduce Number of Colors by Masking Bits...'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3159
                  itemValue: reduceNumberOfColors
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  3160
                )
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
              nil
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
            )
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
         (MenuItem
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3167
            enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3168
            label: 'Process'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3169
            submenu: 
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3170
           (Menu
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3171
              (
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3172
               (MenuItem
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3173
                  label: 'Negative'
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3174
                  itemValue: makeNegative
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3175
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3176
               (MenuItem
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3177
                  label: 'Invert Pixel Bits'
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3178
                  itemValue: makeInvertedBits
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3179
                  isVisible: hasColormap
3458
159bab42fdbb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3443
diff changeset
  3180
                )
159bab42fdbb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3443
diff changeset
  3181
               (MenuItem
159bab42fdbb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3443
diff changeset
  3182
                  label: '-'
159bab42fdbb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3443
diff changeset
  3183
                )
159bab42fdbb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3443
diff changeset
  3184
               (MenuItem
2826
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3185
                  enabled: allowedToChangeImageDimensionAndDepth
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3186
                  label: 'Make dithered 8Bit Palette'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3187
                  itemValue: makeDitheredPaletteImage
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3188
                  isVisible: false
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3189
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3190
               (MenuItem
3458
159bab42fdbb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3443
diff changeset
  3191
                  label: 'Dither to Depth...'
159bab42fdbb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3443
diff changeset
  3192
                  itemValue: ditherToDepth
159bab42fdbb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3443
diff changeset
  3193
                )
159bab42fdbb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3443
diff changeset
  3194
               (MenuItem
3471
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  3195
                  label: 'Threshold to Depth...'
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  3196
                  itemValue: thresholdToDepth
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3197
                )
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3198
               (MenuItem
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3199
                  label: '-'
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3200
                )
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3201
               (MenuItem
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3202
                  label: 'Make Monochrome...'
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3203
                  itemValue: makeMonochromeImage
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3204
                )
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3205
               (MenuItem
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3206
                  label: 'Make GrayScale (same Depth)'
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3207
                  itemValue: makeGrayScaleImage
3471
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  3208
                )
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  3209
               (MenuItem
3460
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  3210
                  label: 'Make GrayScale with Depth (Dither)...'
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  3211
                  itemValue: ditherGrayToDepth
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  3212
                )
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  3213
               (MenuItem
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  3214
                  label: 'Make GrayScale with Depth (Threshold)...'
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  3215
                  itemValue: thresholdGrayToDepth
2826
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3216
                )
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3217
               (MenuItem
3497
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3218
                  label: 'Make GrayScale with N Gray Colors (Dither)...'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3219
                  itemValue: ditherToNumberOfGrayColors
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
               (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3222
                  label: 'Make GrayScale with N Gray Colors (Threshold)...'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3223
                  itemValue: thresholdToNumberOfGrayColors
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3224
                )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3225
               (MenuItem
2826
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3226
                  label: '-'
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3227
                )
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3228
               (MenuItem
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3229
                  label: 'Make Slightly Brighter'
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3230
                  itemValue: makeSlightlyBrighter
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3231
                )
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3232
               (MenuItem
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3233
                  label: 'Make Brighter'
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3234
                  itemValue: makeBrighter
2826
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3235
                )
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3236
               (MenuItem
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3237
                  label: 'Make Slightly Darker'
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3238
                  itemValue: makeSlightlyDarker
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3239
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3240
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3241
                  label: 'Make Darker'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3242
                  itemValue: makeDarker
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3243
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3244
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3245
                  label: '-'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3246
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3247
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3248
                  label: 'Change HLS...'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3249
                  itemValue: changeHLS
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3250
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3251
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3252
                  label: 'Colorize...'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3253
                  itemValue: colorize
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3254
                )
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3255
               (MenuItem
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3256
                  enabled: imageIsLoadedHolder
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3257
                  label: 'Brighten'
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3258
                  itemValue: doBrightenImage
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3259
                )
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3260
               (MenuItem
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3261
                  enabled: imageIsLoadedHolder
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3262
                  label: 'Darken'
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  3263
                  itemValue: doDarkenImage
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3264
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3265
               )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3266
              nil
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3267
              nil
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3268
            )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3269
          )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3270
         (MenuItem
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3271
            enabled: imageIsLoadedAndNotReadonlyHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3272
            label: 'Mask'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3273
            submenu: 
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3274
           (Menu
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3275
              (
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3276
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3277
                  activeHelpKey: copyMask
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3278
                  enabled: hasMask
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3279
                  label: 'Copy Mask'
2826
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3280
                  itemValue: #'menu_copyMask'
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3281
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3282
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3283
                  activeHelpKey: pasteMask
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3284
                  enabled: hasMask
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3285
                  label: 'Paste Mask'
2826
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3286
                  itemValue: #'menu_pasteMask'
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3287
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3288
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3289
                  enabled: hasMask
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3290
                  label: 'Clear Masked Pixels'
2826
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3291
                  itemValue: #'menu_clearMaskedPixels'
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  3292
                )
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  3293
               (MenuItem
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  3294
                  enabled: hasMask
2653
f0e64b82fa93 changed: #menuColors
Claus Gittinger <cg@exept.de>
parents: 2652
diff changeset
  3295
                  label: 'Clear Colormap Entry for Masked Pixels'
2826
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  3296
                  itemValue: #'menu_clearColormapEntry0AndMaskedPixels'
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3297
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3298
               )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3299
              nil
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3300
              nil
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3301
            )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3302
          )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3303
         )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3304
        nil
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3305
        nil
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3306
      )
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3307
3497
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3308
    "Modified: / 23-10-2017 / 11:18:58 / cg"
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3309
!
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3310
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3311
menuEdit
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3312
    "This resource specification was automatically generated
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3313
     by the MenuEditor of ST/X."
3497
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3314
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3315
    "Do not manually edit this!! If it is corrupted,
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3316
     the MenuEditor may not be able to read the specification."
3497
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3317
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3318
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3319
    "
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3320
     MenuEditor new openOnClass:ImageEditor andSelector:#menuEdit
3497
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3321
     (Menu new fromLiteralArrayEncoding:(ImageEditor menuEdit)) startUp
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3322
    "
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
    <resource: #menu>
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3325
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3326
    ^ 
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3327
     #(Menu
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: editUndo
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3331
            enabled: canUndoHolder
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3332
            label: 'Undo'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3333
            itemValue: doUndo
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3334
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3335
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3336
            label: '-'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3337
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3338
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3339
            enabled: imageIsLoadedHolder
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3340
            label: 'Copy to Clipboard'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3341
            itemValue: doCopyImageToClipboard
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3342
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3343
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3344
            label: '-'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3345
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3346
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3347
            activeHelpKey: editResize
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3348
            enabled: imageIsLoadedAndAllowedToChangeImageDimensionAndDepth
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3349
            label: 'Resize...'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3350
            itemValue: doResizeImage
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3351
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3352
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3353
            activeHelpKey: editMagnifyImage
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3354
            enabled: imageIsLoadedAndAllowedToChangeImageDimensionAndDepth
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3355
            label: 'Magnify...'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3356
            itemValue: doMagnifyImage
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3357
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3358
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3359
            activeHelpKey: editMagnifyImage
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3360
            enabled: imageIsLoadedAndAllowedToChangeImageDimensionAndDepth
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3361
            label: 'Magnify By...'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3362
            itemValue: doMagnifyImageBy
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: editRotate
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3366
            enabled: imageIsLoadedAndAllowedToChangeImageDimensionAndDepth
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3367
            label: 'Rotate...'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3368
            itemValue: doRotateImage
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
            activeHelpKey: edit3DProjection
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3372
            enabled: imageIsLoadedAndAllowedToChangeImageDimensionAndDepth
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3373
            label: '3D Projection...'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3374
            itemValue: do3DProjection
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3375
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3376
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3377
            enabled: imageIsLoadedAndAllowedToFlipHolder
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3378
            label: 'Flip'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3379
            submenu: 
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3380
           (Menu
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3381
              (
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3382
               (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3383
                  activeHelpKey: editFlipVertical
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3384
                  enabled: imageIsLoadedAndNotReadonlyHolder
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3385
                  label: 'Flip - Vertical'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3386
                  itemValue: doFlipVertical
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3387
                  labelImage: (ResourceRetriever ImageEditor flipVerticalIcon 'Flip - Vertical')
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
                  activeHelpKey: editFlipHorizontal
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3391
                  enabled: imageIsLoadedAndNotReadonlyHolder
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3392
                  label: 'Flip - Horizontal'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3393
                  itemValue: doFlipHorizontal
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3394
                  labelImage: (ResourceRetriever ImageEditor flipHorizontalIcon 'Flip - Horizontal')
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3395
                )
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
              nil
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3398
              nil
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3399
            )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3400
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3401
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3402
            label: '-'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3403
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3404
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3405
            enabled: imageIsLoadedAndAllowedToChangeImageDimension
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3406
            label: 'Crop'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3407
            submenu: 
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3408
           (Menu
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3409
              (
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3410
               (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3411
                  activeHelpKey: cropManual
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3412
                  label: 'Manual...'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3413
                  itemValue: doCropManual
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3414
                )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3415
               (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3416
                  label: '-'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3417
                  isVisible: false
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3418
                )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3419
               (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3420
                  activeHelpKey: autoCropAll
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3421
                  label: 'All'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3422
                  itemValue: autoCropAll
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3423
                )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3424
               (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3425
                  label: '-'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3426
                )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3427
               (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3428
                  activeHelpKey: autoCropLeft
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3429
                  label: 'Left'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3430
                  itemValue: autoCropLeft
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3431
                )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3432
               (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3433
                  activeHelpKey: autoCropRight
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3434
                  label: 'Right'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3435
                  itemValue: autoCropRight
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3436
                )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3437
               (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3438
                  activeHelpKey: autoCropTop
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3439
                  label: 'Top'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3440
                  itemValue: autoCropTop
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3441
                )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3442
               (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3443
                  activeHelpKey: autoCropBottom
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3444
                  label: 'Bottom'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3445
                  itemValue: autoCropBottom
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3446
                )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3447
               )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3448
              nil
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3449
              nil
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3450
            )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3451
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3452
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3453
            activeHelpKey: uncropManual
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3454
            enabled: imageIsLoadedAndAllowedToChangeImageDimensionAndDepth
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3455
            label: 'Uncrop (Add Border)...'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3456
            itemValue: doUnCropManual
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3457
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3458
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3459
            activeHelpKey: shiftManual
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3460
            enabled: imageIsLoadedAndAllowedToChangeImageDimension
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3461
            label: 'Shift...'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3462
            itemValue: doShiftManual
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3463
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3464
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3465
            label: '-'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3466
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3467
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3468
            activeHelpKey: fileEditMask
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3469
            enabled: hasMaskHolder
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3470
            label: 'Edit Mask'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3471
            itemValue: doEditMask
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3472
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3473
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3474
            enabled: imageIsLoadedAndNotReadonlyHolder
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3475
            label: 'Text...'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3476
            itemValue: doInsertTextFromUser
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3477
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3478
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3479
            label: '-'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3480
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3481
         (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3482
            enabled: imageIsLoadedHolder
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3483
            label: 'Animation Sequence'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3484
            submenu: 
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3485
           (Menu
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3486
              (
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3487
               (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3488
                  enabled: imageHasNextImageHolder
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3489
                  label: 'Next in Sequence'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3490
                  itemValue: nextImageInSequence
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3491
                )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3492
               (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3493
                  enabled: imageHasPreviousImageHolder
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3494
                  label: 'Previous in Sequence'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3495
                  itemValue: previousImageInSequence
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3496
                )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3497
               (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3498
                  label: '-'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3499
                )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3500
               (MenuItem
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3501
                  enabled: imageHasImageSequenceHolder
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3502
                  label: 'Edit each from Sequence'
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3503
                  itemValue: editEachImageFromSequence
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3504
                )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3505
               )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3506
              nil
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3507
              nil
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3508
            )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3509
          )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3510
         )
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3511
        nil
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3512
        nil
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  3513
      )
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3514
!
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3515
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3516
menuFile
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3517
    "This resource specification was automatically generated
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3518
     by the MenuEditor of ST/X."
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3519
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3520
    "Do not manually edit this!! If it is corrupted,
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3521
     the MenuEditor may not be able to read the specification."
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3522
3022
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  3523
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3524
    "
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3525
     MenuEditor new openOnClass:ImageEditor andSelector:#menuFile
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3526
     (Menu new fromLiteralArrayEncoding:(ImageEditor menuFile)) startUp
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3527
    "
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3528
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3529
    <resource: #menu>
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3530
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3531
    ^ 
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3532
     #(Menu
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3533
        (
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3534
         (MenuItem
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3535
            activeHelpKey: fileNewImageEditor
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3536
            label: 'New ImageEditor'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3537
            itemValue: doNewImageEditor
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3538
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3539
         (MenuItem
2876
3c7d06dab802 changed:
Claus Gittinger <cg@exept.de>
parents: 2871
diff changeset
  3540
            label: '-'
3c7d06dab802 changed:
Claus Gittinger <cg@exept.de>
parents: 2871
diff changeset
  3541
          )
3c7d06dab802 changed:
Claus Gittinger <cg@exept.de>
parents: 2871
diff changeset
  3542
         (MenuItem
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3543
            activeHelpKey: fileNewImage
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3544
            label: 'New...'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3545
            itemValue: doNewImage
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3546
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3547
         (MenuItem
3200
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  3548
            activeHelpKey: fileNewImageFromClipboard
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3549
            label: 'New from ClipBoard'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3550
            itemValue: doNewImageFromClipboard
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3551
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3552
         (MenuItem
3200
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  3553
            activeHelpKey: fileNewMaskFromClipboard
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  3554
            label: 'Mask from ClipBoard'
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  3555
            itemValue: doNewMaskFromClipboard
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  3556
          )
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  3557
         (MenuItem
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3558
            label: '-'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3559
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3560
         (MenuItem
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3561
            activeHelpKey: fileLoadFromClass
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3562
            label: 'Load...'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3563
            itemValue: doLoadFromClass
3374
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  3564
            isVisible: methodSaveAndLoadMenuItemsVisible
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3565
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3566
         (MenuItem
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3567
            activeHelpKey: fileLoadFromFile
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3568
            label: 'Load from File...'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3569
            itemValue: doLoadFromFile
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3570
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3571
         (MenuItem
2796
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  3572
            activeHelpKey: fileLoadFromURL
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  3573
            label: 'Load from URL...'
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  3574
            itemValue: doLoadFromURL
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  3575
          )
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  3576
         (MenuItem
2707
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3577
            label: 'Grab'
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3578
            submenu: 
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3579
           (Menu
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3580
              (
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3581
               (MenuItem
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3582
                  activeHelpKey: fileGrabImageFromScreen
2717
fac7e5156235 changed: #menuFile
Claus Gittinger <cg@exept.de>
parents: 2712
diff changeset
  3583
                  label: 'Grab from Screen Area...'
2707
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3584
                  itemValue: grabScreenImage
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3585
                )
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3586
               (MenuItem
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3587
                  activeHelpKey: fileGrabImageFromScreen
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3588
                  enabled: hasLastGrabScreenArea
2711
4700f54d0040 changed: #menuFile
Claus Gittinger <cg@exept.de>
parents: 2708
diff changeset
  3589
                  label: 'Grab again from same Screen Area'
2707
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3590
                  itemValue: grabScreenImageFromLastArea
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3591
                )
2771
244f8e53399b changed: #menuFile
Claus Gittinger <cg@exept.de>
parents: 2767
diff changeset
  3592
               (MenuItem
244f8e53399b changed: #menuFile
Claus Gittinger <cg@exept.de>
parents: 2767
diff changeset
  3593
                  label: '-'
244f8e53399b changed: #menuFile
Claus Gittinger <cg@exept.de>
parents: 2767
diff changeset
  3594
                )
244f8e53399b changed: #menuFile
Claus Gittinger <cg@exept.de>
parents: 2767
diff changeset
  3595
               (MenuItem
244f8e53399b changed: #menuFile
Claus Gittinger <cg@exept.de>
parents: 2767
diff changeset
  3596
                  activeHelpKey: fileGrabImageFromWindow
244f8e53399b changed: #menuFile
Claus Gittinger <cg@exept.de>
parents: 2767
diff changeset
  3597
                  label: 'Grab from Window...'
244f8e53399b changed: #menuFile
Claus Gittinger <cg@exept.de>
parents: 2767
diff changeset
  3598
                  itemValue: grabWindowImage
244f8e53399b changed: #menuFile
Claus Gittinger <cg@exept.de>
parents: 2767
diff changeset
  3599
                )
3422
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  3600
               (MenuItem
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  3601
                  activeHelpKey: fileGrabFullSreenImage
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  3602
                  label: 'Grab from whole Screen'
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  3603
                  itemValue: grabFullScreenImage
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  3604
                )
2707
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3605
               )
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3606
              nil
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3607
              nil
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  3608
            )
2701
5abe05ebb370 added: grabWindowImage (menu)
Claus Gittinger <cg@exept.de>
parents: 2663
diff changeset
  3609
          )
5abe05ebb370 added: grabWindowImage (menu)
Claus Gittinger <cg@exept.de>
parents: 2663
diff changeset
  3610
         (MenuItem
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3611
            label: '-'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3612
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3613
         (MenuItem
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3614
            activeHelpKey: fileSaveMethod
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3615
            enabled: imageIsLoadedAndClassDefined
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3616
            label: 'Save'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3617
            itemValue: doSaveMethod
3374
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  3618
            isVisible: methodSaveAndLoadMenuItemsVisible
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3619
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3620
         (MenuItem
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3621
            activeHelpKey: fileSaveMethodAs
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3622
            enabled: imageIsLoadedHolder
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3623
            label: 'Save As...'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3624
            itemValue: doSaveMethodAs
3374
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  3625
            isVisible: methodSaveAndLoadMenuItemsVisible
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3626
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3627
         (MenuItem
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3628
            activeHelpKey: fileSaveAs
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3629
            enabled: imageIsLoadedHolder
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3630
            label: 'Save to File...'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3631
            itemValue: doSaveImageFileAs
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3632
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3633
         (MenuItem
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3634
            activeHelpKey: fileSaveMaskAs
3411
fd6472405fd0 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3409
diff changeset
  3635
            enabled: hasMaskHolder
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3636
            label: 'Save Mask to File...'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3637
            itemValue: doSaveImageMaskFileAs
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3638
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3639
         (MenuItem
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3640
            activeHelpKey: fileSaveButtonImageAs
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3641
            enabled: imageIsLoadedHolder
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3642
            label: 'Save as Button to File...'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3643
            itemValue: doSaveButtonImageToFileAs
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3644
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3645
         (MenuItem
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3646
            label: '-'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3647
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3648
         (MenuItem
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3649
            activeHelpKey: filePrint
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3650
            enabled: imageIsLoadedHolder
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3651
            label: 'Print'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3652
            itemValue: doPrint
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3653
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3654
         (MenuItem
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3655
            label: '-'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3656
            isVisible: isStandAlone
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3657
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3658
         (MenuItem
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3659
            activeHelpKey: fileBrowseClass
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3660
            enabled: hasClassDefinedHolder
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3661
            label: 'Browse Class'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3662
            itemValue: doBrowseClass
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3663
            isVisible: isStandAlone
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3664
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3665
         (MenuItem
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3666
            enabled: imageIsLoadedHolder
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3667
            label: 'Inspect Image'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3668
            itemValue: doInspectImage
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3669
            isVisible: isStandAlone
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3670
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3671
         (MenuItem
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3672
            activeHelpKey: fileShowStoreString
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3673
            enabled: imageIsLoadedHolder
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3674
            label: 'Show storeString'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3675
            itemValue: doShowStoreString
3022
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  3676
          )
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  3677
         (MenuItem
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  3678
            activeHelpKey: fileShowStoreString
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  3679
            enabled: imageIsLoadedHolder
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  3680
            label: 'Show Pixel Array Literal String'
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  3681
            itemValue: doShowPixelArrayLiteralString
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3682
          )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3683
         (MenuItem
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3684
            label: '-'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3685
            isVisible: isStandAlone
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3686
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3687
         (MenuItem
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3688
            activeHelpKey: fileExit
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3689
            label: 'Exit'
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3690
            itemValue: closeRequest
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3691
            isVisible: isStandAlone
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3692
          )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3693
         )
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3694
        nil
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3695
        nil
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3696
      )
3411
fd6472405fd0 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3409
diff changeset
  3697
3422
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  3698
    "Modified: / 25-02-2017 / 12:40:30 / cg"
2196
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3699
!
7e4e066ca7f5 rotation; text input
Claus Gittinger <cg@exept.de>
parents: 2192
diff changeset
  3700
679
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3701
menuMouseButtonColors
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  3702
    "This resource specification was automatically generated
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  3703
     by the MenuEditor of ST/X."
679
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3704
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  3705
    "Do not manually edit this!! If it is corrupted,
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  3706
     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
  3707
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3708
    "
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3709
     MenuEditor new openOnClass:ImageEditor andSelector:#menuMouseButtonColors
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3710
     (Menu new fromLiteralArrayEncoding:(ImageEditor menuMouseButtonColors)) startUp
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3711
    "
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3712
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3713
    <resource: #menu>
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3714
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3715
    ^
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3716
     
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3717
       #(#Menu
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3718
          
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3719
           #(
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3720
             #(#MenuItem
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3721
                #label: 'Left Mouse Button'
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3722
                #nameKey: #leftMouseKeyButton
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3723
                #activeHelpKey: #mouseKeyColorMode
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3724
                #enabled: #imageIsLoadedHolder
679
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3725
                #labelImage: #(#ResourceRetriever nil #leftMouseKeyIcon)
975
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  3726
                #choice: #mouseKeyColorMode
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  3727
                #choiceValue: 1
679
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3728
            )
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3729
             #(#MenuItem
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3730
                #label: 'Right Mouse Button'
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3731
                #nameKey: #rightMouseKeyButton
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3732
                #activeHelpKey: #mouseKeyColorMode
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3733
                #enabled: #imageIsLoadedHolder
679
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3734
                #labelImage: #(#ResourceRetriever nil #rightMouseKeyIcon)
975
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  3735
                #choice: #mouseKeyColorMode
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  3736
                #choiceValue: 2
679
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3737
            )
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3738
          ) nil
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3739
          nil
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3740
      )
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3741
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3742
    "Modified: / 04-07-2010 / 10:17:37 / cg"
679
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3743
!
9cd2115ac627 mouse button color menu readded below the color map
tz
parents: 676
diff changeset
  3744
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3745
menuSettings
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3746
    "This resource specification was automatically generated
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3747
     by the MenuEditor of ST/X."
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3748
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3749
    "Do not manually edit this!! If it is corrupted,
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3750
     the MenuEditor may not be able to read the specification."
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3751
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  3752
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3753
    "
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3754
     MenuEditor new openOnClass:ImageEditor andSelector:#menuSettings
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3755
     (Menu new fromLiteralArrayEncoding:(ImageEditor menuSettings)) startUp
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3756
    "
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3757
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3758
    <resource: #menu>
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3759
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3760
    ^ 
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3761
     #(Menu
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3762
        (
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3763
         (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3764
            activeHelpKey: settingsGridMagnification
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3765
            label: 'Grid Magnification Limit...'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3766
            itemValue: doChangeGridMagnification
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3767
            translateLabel: true
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3768
          )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3769
         (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3770
            label: 'Pen'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3771
            translateLabel: true
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3772
            submenu: 
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3773
           (Menu
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3774
              (
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3775
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3776
                  label: '1'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3777
                  translateLabel: true
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  3778
                  choice: penWidthHolder
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  3779
                  choiceValue: 1
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3780
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3781
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3782
                  label: '5'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3783
                  translateLabel: true
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  3784
                  choice: penWidthHolder
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  3785
                  choiceValue: 5
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3786
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3787
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3788
                  label: '10'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3789
                  translateLabel: true
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  3790
                  choice: penWidthHolder
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  3791
                  choiceValue: 10
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3792
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3793
               )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3794
              nil
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3795
              nil
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3796
            )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3797
          )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3798
         (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3799
            label: 'Spray'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3800
            translateLabel: true
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3801
            submenu: 
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3802
           (Menu
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3803
              (
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3804
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3805
                  label: '4'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3806
                  translateLabel: true
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  3807
                  choice: spraySpotHolder
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  3808
                  choiceValue: 4
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3809
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3810
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3811
                  label: '8'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3812
                  translateLabel: true
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  3813
                  choice: spraySpotHolder
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  3814
                  choiceValue: 8
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3815
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3816
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3817
                  label: '16'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3818
                  translateLabel: true
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  3819
                  choice: spraySpotHolder
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  3820
                  choiceValue: 16
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3821
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3822
               (MenuItem
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3823
                  label: '32'
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3824
                  translateLabel: true
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  3825
                  choice: spraySpotHolder
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  3826
                  choiceValue: 32
2585
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3827
                )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3828
               )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3829
              nil
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3830
              nil
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3831
            )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3832
          )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3833
         )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3834
        nil
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3835
        nil
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3836
      )
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3837
!
c6150678bc9f menu reorg
Claus Gittinger <cg@exept.de>
parents: 2576
diff changeset
  3838
400
228524287573 intitial checkin
tz
parents:
diff changeset
  3839
menuToolbar
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  3840
    "This resource specification was automatically generated
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  3841
     by the MenuEditor of ST/X."
400
228524287573 intitial checkin
tz
parents:
diff changeset
  3842
737
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  3843
    "Do not manually edit this!! If it is corrupted,
ed5b109a0f91 user can define own fonts
tz
parents: 732
diff changeset
  3844
     the MenuEditor may not be able to read the specification."
400
228524287573 intitial checkin
tz
parents:
diff changeset
  3845
2876
3c7d06dab802 changed:
Claus Gittinger <cg@exept.de>
parents: 2871
diff changeset
  3846
400
228524287573 intitial checkin
tz
parents:
diff changeset
  3847
    "
228524287573 intitial checkin
tz
parents:
diff changeset
  3848
     MenuEditor new openOnClass:ImageEditor andSelector:#menuToolbar
228524287573 intitial checkin
tz
parents:
diff changeset
  3849
     (Menu new fromLiteralArrayEncoding:(ImageEditor menuToolbar)) startUp
228524287573 intitial checkin
tz
parents:
diff changeset
  3850
    "
228524287573 intitial checkin
tz
parents:
diff changeset
  3851
228524287573 intitial checkin
tz
parents:
diff changeset
  3852
    <resource: #menu>
228524287573 intitial checkin
tz
parents:
diff changeset
  3853
1196
e2ced3798ed5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1146
diff changeset
  3854
    ^ 
1820
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3855
     #(Menu
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3856
        (
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3857
         (MenuItem
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3858
            activeHelpKey: fileNewImage
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3859
            label: 'newImage'
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3860
            itemValue: doNewImage
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3861
            isButton: true
1883
577a267a87cb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1882
diff changeset
  3862
            labelImage: (ResourceRetriever ToolbarIconLibrary newImageIcon)
1196
e2ced3798ed5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1146
diff changeset
  3863
          )
1820
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3864
         (MenuItem
2876
3c7d06dab802 changed:
Claus Gittinger <cg@exept.de>
parents: 2871
diff changeset
  3865
            activeHelpKey: fileGrabImageFromScreen
3c7d06dab802 changed:
Claus Gittinger <cg@exept.de>
parents: 2871
diff changeset
  3866
            label: 'grabScreenImage'
3c7d06dab802 changed:
Claus Gittinger <cg@exept.de>
parents: 2871
diff changeset
  3867
            itemValue: grabScreenImage
3c7d06dab802 changed:
Claus Gittinger <cg@exept.de>
parents: 2871
diff changeset
  3868
            isButton: true
2877
1a7cd3e6eea1 changed: #menuToolbar
Claus Gittinger <cg@exept.de>
parents: 2876
diff changeset
  3869
            labelImage: (ResourceRetriever ToolbarIconLibrary snapshot24x24Icon)
2876
3c7d06dab802 changed:
Claus Gittinger <cg@exept.de>
parents: 2871
diff changeset
  3870
          )
3c7d06dab802 changed:
Claus Gittinger <cg@exept.de>
parents: 2871
diff changeset
  3871
         (MenuItem
1949
00defdb89630 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1943
diff changeset
  3872
            label: '-'
00defdb89630 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1943
diff changeset
  3873
          )
00defdb89630 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1943
diff changeset
  3874
         (MenuItem
1970
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3875
            activeHelpKey: fileLoadFromClass
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3876
            label: 'loadFromClass'
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3877
            itemValue: doLoadFromClass
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3878
            isButton: true
3374
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  3879
            isVisible: isStandAloneAndMethodSaveAndLoadMenuItemsVisible
1970
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3880
            submenuChannel: menuHistory
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3881
            labelImage: (ResourceRetriever XPToolbarIconLibrary loadImageFromMethodIcon)
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3882
            keepLinkedMenu: true
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3883
          )
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3884
         (MenuItem
2567
903843f8a824 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2556
diff changeset
  3885
            activeHelpKey: fileSaveMethodAs
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3886
            enabled: imageIsLoadedHolder
2567
903843f8a824 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2556
diff changeset
  3887
            label: 'fileSaveMethodAs'
1970
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3888
            itemValue: doSaveMethodAs
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3889
            isButton: true
3374
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  3890
            isVisible: isStandAloneAndMethodSaveAndLoadMenuItemsVisible
1970
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3891
            labelImage: (ResourceRetriever XPToolbarIconLibrary saveImageAsMethodAsIcon)
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3892
          )
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3893
         (MenuItem
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3894
            activeHelpKey: fileSaveMethod
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3895
            enabled: imageIsLoadedHolder
1970
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3896
            label: 'saveAsMethod'
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3897
            itemValue: doSaveMethod
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3898
            isButton: true
3374
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  3899
            isVisible: isNotStandAloneAndMethodSaveAndLoadMenuItemsVisible
2590
9f2cb061d07f changed: #menuToolbar
Claus Gittinger <cg@exept.de>
parents: 2585
diff changeset
  3900
            labelImage: (ResourceRetriever ToolbarIconLibrary saveImageAsMethodIcon)
1970
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3901
          )
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3902
         (MenuItem
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3903
            label: '-'
3374
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  3904
            isVisible: methodSaveAndLoadMenuItemsVisible
1970
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3905
          )
279cc79d6e27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1969
diff changeset
  3906
         (MenuItem
1820
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3907
            activeHelpKey: fileLoadFromFile
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3908
            label: 'loadFromFile'
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3909
            itemValue: doLoadFromFile
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3910
            isButton: true
1884
2c4d13ecd7ed *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1883
diff changeset
  3911
            labelImage: (ResourceRetriever ToolbarIconLibrary loadImageFromFileIcon)
1820
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3912
          )
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3913
         (MenuItem
3425
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  3914
            activeHelpKey: fileSave
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  3915
            enabled: imageIsLoadedHolder
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  3916
            label: 'save'
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  3917
            itemValue: doSaveImageFile
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  3918
            isButton: true
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  3919
            isVisible: saveButtonInToolbarVisibleHolder
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  3920
            labelImage: (ResourceRetriever ToolbarIconLibrary saveImageIcon)
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  3921
          )
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  3922
         (MenuItem
1820
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3923
            activeHelpKey: fileSaveAs
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3924
            enabled: imageIsLoadedHolder
1820
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3925
            label: 'saveAsFile'
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3926
            itemValue: doSaveImageFileAs
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3927
            isButton: true
1885
a09ede39c43f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1884
diff changeset
  3928
            labelImage: (ResourceRetriever ToolbarIconLibrary saveImageToFileAsIcon)
1820
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3929
          )
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3930
         (MenuItem
1949
00defdb89630 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1943
diff changeset
  3931
            label: '-'
1196
e2ced3798ed5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1146
diff changeset
  3932
          )
1820
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3933
         (MenuItem
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3934
            activeHelpKey: editUndo
1987
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  3935
            enabled: canUndoHolder
1820
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3936
            label: 'Undo'
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3937
            itemValue: doUndo
3d834d5e5bb4 toolbar icons & help texts
Claus Gittinger <cg@exept.de>
parents: 1806
diff changeset
  3938
            isButton: true
1883
577a267a87cb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1882
diff changeset
  3939
            labelImage: (ResourceRetriever ToolbarIconLibrary undoIcon)
1196
e2ced3798ed5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1146
diff changeset
  3940
          )
2812
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3941
         (MenuItem
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3942
            label: '-'
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3943
            isVisible: imageHasImageSequenceHolder
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3944
          )
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3945
         (MenuItem
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3946
            activeHelpKey: previousImageInSequence
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3947
            enabled: imageHasPreviousImageHolder
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3948
            label: 'Previous Image'
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3949
            itemValue: previousImageInSequence
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3950
            isVisible: imageHasImageSequenceHolder
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3951
            labelImage: (ResourceRetriever ToolbarIconLibrary leftArrow24x24Icon)
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3952
          )
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3953
         (MenuItem
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3954
            activeHelpKey: nextImageInSequence
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3955
            enabled: imageHasNextImageHolder
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3956
            label: 'Next Image'
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3957
            itemValue: nextImageInSequence
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3958
            isVisible: imageHasImageSequenceHolder
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3959
            labelImage: (ResourceRetriever ToolbarIconLibrary rightArrow24x24Icon)
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  3960
          )
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3961
         )
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3962
        nil
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3963
        nil
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3964
      )
3425
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  3965
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  3966
    "Modified: / 26-02-2017 / 23:03:40 / cg"
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3967
!
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3968
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3969
modeMenu
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3970
    "This resource specification was automatically generated
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3971
     by the MenuEditor of ST/X."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3972
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3973
    "Do not manually edit this!! If it is corrupted,
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3974
     the MenuEditor may not be able to read the specification."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3975
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3976
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3977
    "
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3978
     MenuEditor new openOnClass:ImageEditor andSelector:#modeMenu
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3979
     (Menu new fromLiteralArrayEncoding:(ImageEditor modeMenu)) startUp
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3980
    "
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3981
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3982
    <resource: #menu>
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3983
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  3984
    ^ 
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3985
     #(Menu
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3986
        (
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3987
         (MenuItem
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3988
            activeHelpKey: drawModePoint
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  3989
            enabled: imageIsLoadedHolder
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3990
            label: 'Point'
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3991
            labelImage: (ResourceRetriever ImageEditor pointIcon 'Point')
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3992
            choice: editMode
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3993
            choiceValue: point
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3994
          )
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3995
         (MenuItem
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3996
            label: '-'
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3997
          )
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  3998
         (MenuItem
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  3999
            activeHelpKey: drawModePoint
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4000
            enabled: imageIsLoadedHolder
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4001
            label: 'Spray'
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4002
            labelImage: (ResourceRetriever ImageEditor sprayIcon 'Spray')
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4003
            choice: editMode
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4004
            choiceValue: spray
1196
e2ced3798ed5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1146
diff changeset
  4005
          )
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4006
         (MenuItem
3191
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  4007
            activeHelpKey: drawModeSmooth
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  4008
            enabled: imageIsLoadedHolder
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  4009
            label: 'Smooth'
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  4010
            labelImage: (ResourceRetriever ImageEditor smoothIcon 'Smooth')
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  4011
            choice: editMode
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  4012
            choiceValue: smooth
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  4013
          )
ae97e9478128 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3188
diff changeset
  4014
         (MenuItem
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4015
            label: '-'
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4016
          )
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4017
         (MenuItem
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4018
            activeHelpKey: drawModeBox
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4019
            enabled: imageIsLoadedHolder
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4020
            label: 'Rect'
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4021
            labelImage: (ResourceRetriever ImageEditor rectIcon 'Rect')
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4022
            choice: editMode
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4023
            choiceValue: box
1196
e2ced3798ed5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1146
diff changeset
  4024
          )
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4025
         (MenuItem
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4026
            activeHelpKey: drawModeFilledBox
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4027
            enabled: imageIsLoadedHolder
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4028
            label: 'Filled Rectangle'
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4029
            labelImage: (ResourceRetriever ImageEditor fillRectIcon 'Filled Rectangle')
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4030
            choice: editMode
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4031
            choiceValue: filledBox
1196
e2ced3798ed5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1146
diff changeset
  4032
          )
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4033
         (MenuItem
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4034
            activeHelpKey: drawModeCircle
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4035
            enabled: imageIsLoadedHolder
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4036
            label: 'Circle'
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4037
            labelImage: (ResourceRetriever ImageEditor circleIcon 'Circle')
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4038
            choice: editMode
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4039
            choiceValue: circle
1196
e2ced3798ed5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1146
diff changeset
  4040
          )
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4041
         (MenuItem
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4042
            activeHelpKey: drawModeFilledCircle
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4043
            enabled: imageIsLoadedHolder
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4044
            label: 'Filled Circle'
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4045
            labelImage: (ResourceRetriever ImageEditor fillCircleIcon 'Filled Circle')
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4046
            choice: editMode
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4047
            choiceValue: filledCircle
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4048
          )
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4049
         (MenuItem
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4050
            activeHelpKey: drawModeFill
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4051
            enabled: imageIsLoadedHolder
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4052
            label: 'Fill'
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4053
            labelImage: (ResourceRetriever ImageEditor fillIcon 'Fill')
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4054
            choice: editMode
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4055
            choiceValue: fill
1196
e2ced3798ed5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1146
diff changeset
  4056
          )
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4057
         (MenuItem
3418
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  4058
            enabled: imageIsLoadedHolder
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  4059
            label: 'Gradient Fill'
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  4060
            isVisible: false
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  4061
            submenu: 
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  4062
           (Menu
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  4063
              (
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  4064
               (MenuItem
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  4065
                  activeHelpKey: drawModeFill
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  4066
                  enabled: imageIsLoadedHolder
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  4067
                  label: 'Horizontal'
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  4068
                  labelImage: (ResourceRetriever ImageEditor fillHorizontalGradientRectIcon 'Horizontal')
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  4069
                  choice: editMode
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  4070
                  choiceValue: fillHorizontalGradient
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  4071
                )
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  4072
               (MenuItem
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  4073
                  activeHelpKey: drawModeFill
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  4074
                  enabled: imageIsLoadedHolder
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  4075
                  label: 'Vertical'
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  4076
                  labelImage: (ResourceRetriever ImageEditor fillVerticalGradientRectIcon 'Vertical')
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  4077
                  choice: editMode
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  4078
                  choiceValue: fillVerticalGradient
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  4079
                )
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  4080
               (MenuItem
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  4081
                  activeHelpKey: drawModeFill
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  4082
                  enabled: imageIsLoadedHolder
3421
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4083
                  isVisible: false
3418
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  4084
                  label: 'Diagonal'
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  4085
                  labelImage: (ResourceRetriever ImageEditor fillDiagonalGradientRectIcon 'Diagonal')
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  4086
                  choice: editMode
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  4087
                  choiceValue: fillDiagonalGradient
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  4088
                )
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  4089
               )
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  4090
              nil
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  4091
              nil
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  4092
            )
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  4093
          )
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  4094
         (MenuItem
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4095
            label: '-'
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4096
          )
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4097
         (MenuItem
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4098
            activeHelpKey: drawModeMaskOutsideRectangle
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4099
            enabled: imageHasMaskAndIsNotReadOnlyHolder
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4100
            label: 'Mask Outside Rectangle'
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4101
            labelImage: (ResourceRetriever ImageEditor maskOutsideRectangleIcon 'Mask Outside Rectangle')
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4102
            choice: editMode
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4103
            choiceValue: maskOutsideRect
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4104
          )
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4105
         (MenuItem
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4106
            activeHelpKey: drawModeMaskOutsideCircle
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4107
            enabled: imageHasMaskAndIsNotReadOnlyHolder
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4108
            label: 'Mask Outside Circle'
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4109
            labelImage: (ResourceRetriever ImageEditor maskOutsideCircleIcon 'Mask Outside Circle')
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4110
            choice: editMode
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4111
            choiceValue: maskOutsideCircle
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4112
          )
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4113
         (MenuItem
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4114
            label: '-'
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4115
          )
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4116
         (MenuItem
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4117
            activeHelpKey: drawModeCopy
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4118
            enabled: imageIsLoadedHolder
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4119
            label: 'Copy'
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4120
            labelImage: (ResourceRetriever ImageEditor copyIcon 'Copy')
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4121
            choice: editMode
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4122
            choiceValue: copy
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4123
          )
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4124
         (MenuItem
3512
36cd31bca6a4 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3506
diff changeset
  4125
            activeHelpKey: drawModePasteWithMask
36cd31bca6a4 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3506
diff changeset
  4126
            enabled: imageIsLoadedHolder
36cd31bca6a4 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3506
diff changeset
  4127
            label: 'Paste with Mask'
36cd31bca6a4 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3506
diff changeset
  4128
            labelImage: (ResourceRetriever ImageEditor pasteWithMaskIcon 'Paste with Mask')
36cd31bca6a4 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3506
diff changeset
  4129
            choice: editMode
36cd31bca6a4 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3506
diff changeset
  4130
            choiceValue: pasteWithMask
36cd31bca6a4 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3506
diff changeset
  4131
          )
36cd31bca6a4 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3506
diff changeset
  4132
         (MenuItem
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4133
            activeHelpKey: drawModePaste
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4134
            enabled: imageIsLoadedHolder
3512
36cd31bca6a4 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3506
diff changeset
  4135
            label: 'Paste Over'
3561
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  4136
            labelImage: (ResourceRetriever ImageEditor pasteIcon 'Paste Over')
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4137
            choice: editMode
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4138
            choiceValue: paste
1196
e2ced3798ed5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1146
diff changeset
  4139
          )
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4140
         (MenuItem
3561
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  4141
            activeHelpKey: drawModePasteMasked
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  4142
            enabled: imageIsLoadedHolder
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  4143
            label: 'Paste Masked'
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  4144
            labelImage: (ResourceRetriever ImageEditor pasteIcon 'Paste Masked')
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  4145
            choice: editMode
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  4146
            choiceValue: pasteMasked
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  4147
          )
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  4148
         (MenuItem
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4149
            activeHelpKey: drawModePasteUnder
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4150
            enabled: imageIsLoadedHolder
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4151
            label: 'Paste Under'
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4152
            labelImage: (ResourceRetriever ImageEditor pasteUnderIcon 'Paste Under')
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4153
            choice: editMode
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4154
            choiceValue: pasteUnder
1196
e2ced3798ed5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1146
diff changeset
  4155
          )
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4156
         (MenuItem
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4157
            label: '-'
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4158
          )
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4159
         (MenuItem
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4160
            activeHelpKey: drawModeSpecial
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4161
            enabled: imageIsLoadedHolder
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4162
            label: 'Special'
3419
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  4163
            labelImage: (ResourceRetriever ImageEditor specialRectangleIcon 'Special')
2592
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4164
            choice: editMode
9f52f9ca9b93 changed:
Claus Gittinger <cg@exept.de>
parents: 2590
diff changeset
  4165
            choiceValue: specialOperation
1411
9daf7add7ea3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1406
diff changeset
  4166
          )
1196
e2ced3798ed5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1146
diff changeset
  4167
         )
e2ced3798ed5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1146
diff changeset
  4168
        nil
e2ced3798ed5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1146
diff changeset
  4169
        nil
400
228524287573 intitial checkin
tz
parents:
diff changeset
  4170
      )
3419
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  4171
3512
36cd31bca6a4 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3506
diff changeset
  4172
    "Modified: / 07-12-2017 / 15:30:46 / cg"
3561
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  4173
    "Modified: / 27-05-2018 / 10:41:20 / Claus Gittinger"
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4174
!
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4175
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4176
previewMenu
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4177
    "This resource specification was automatically generated
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4178
     by the MenuEditor of ST/X."
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4179
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4180
    "Do not manually edit this!! If it is corrupted,
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4181
     the MenuEditor may not be able to read the specification."
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4182
3489
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4183
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4184
    "
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4185
     MenuEditor new openOnClass:ImageEditor andSelector:#previewMenu
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4186
     (Menu new fromLiteralArrayEncoding:(ImageEditor previewMenu)) startUp
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4187
    "
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4188
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4189
    <resource: #menu>
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4190
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4191
    ^ 
1764
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4192
     #(Menu
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4193
        (
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4194
         (MenuItem
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4195
            label: 'TileMode'
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4196
            indication: tileModeHolder
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4197
          )
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4198
         (MenuItem
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4199
            label: '-'
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4200
          )
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4201
         (MenuItem
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4202
            label: 'Background Color'
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4203
            submenu: 
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4204
           (Menu
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4205
              (
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4206
               (MenuItem
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4207
                  label: 'Gray'
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4208
                  choice: previewBackgroundColorHolder
1764
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4209
                )
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4210
               (MenuItem
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4211
                  label: 'Black'
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4212
                  choice: previewBackgroundColorHolder
1764
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4213
                  choiceValue: black
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4214
                )
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4215
               (MenuItem
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4216
                  label: 'White'
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4217
                  choice: previewBackgroundColorHolder
1764
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4218
                  choiceValue: white
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4219
                )
1774
cb9832e71cae *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1770
diff changeset
  4220
               (MenuItem
cb9832e71cae *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1770
diff changeset
  4221
                  label: '-'
cb9832e71cae *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1770
diff changeset
  4222
                )
cb9832e71cae *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1770
diff changeset
  4223
               (MenuItem
cb9832e71cae *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1770
diff changeset
  4224
                  label: 'Red'
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4225
                  choice: previewBackgroundColorHolder
1774
cb9832e71cae *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1770
diff changeset
  4226
                  choiceValue: red
cb9832e71cae *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1770
diff changeset
  4227
                )
cb9832e71cae *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1770
diff changeset
  4228
               (MenuItem
cb9832e71cae *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1770
diff changeset
  4229
                  label: 'Green'
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4230
                  choice: previewBackgroundColorHolder
1774
cb9832e71cae *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1770
diff changeset
  4231
                  choiceValue: green
cb9832e71cae *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1770
diff changeset
  4232
                )
cb9832e71cae *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1770
diff changeset
  4233
               (MenuItem
cb9832e71cae *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1770
diff changeset
  4234
                  label: 'Blue'
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4235
                  choice: previewBackgroundColorHolder
1774
cb9832e71cae *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1770
diff changeset
  4236
                  choiceValue: blue
cb9832e71cae *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1770
diff changeset
  4237
                )
1764
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4238
               )
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4239
              nil
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4240
              nil
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  4241
            )
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4242
          )
3489
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4243
         (MenuItem
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4244
            label: '-'
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4245
          )
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4246
         (MenuItem
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4247
            label: 'Magnification'
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4248
            submenu: 
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4249
           (Menu
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4250
              (
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4251
               (MenuItem
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4252
                  label: '0.1'
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4253
                  choice: previewMagnificationHolder
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4254
                  choiceValue: 0.1
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4255
                )
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4256
               (MenuItem
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4257
                  label: '0.25'
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4258
                  choice: previewMagnificationHolder
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4259
                  choiceValue: 0.25
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4260
                )
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4261
               (MenuItem
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4262
                  label: '0.5'
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4263
                  choice: previewMagnificationHolder
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4264
                  choiceValue: 0.5
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4265
                )
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4266
               (MenuItem
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4267
                  label: '1'
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4268
                  choice: previewMagnificationHolder
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4269
                  choiceValue: 1
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4270
                )
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4271
               (MenuItem
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4272
                  label: '2'
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4273
                  choice: previewMagnificationHolder
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4274
                  choiceValue: 2
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4275
                )
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4276
               (MenuItem
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4277
                  label: '4'
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4278
                  choice: previewMagnificationHolder
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4279
                  choiceValue: 4
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4280
                )
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4281
               (MenuItem
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4282
                  label: '-'
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4283
                )
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4284
               (MenuItem
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4285
                  label: 'Choose...'
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4286
                  itemValue: changePreviewImageMagnification
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4287
                )
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4288
               )
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4289
              nil
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4290
              nil
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4291
            )
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4292
          )
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4293
         )
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4294
        nil
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4295
        nil
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  4296
      )
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4297
3489
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  4298
    "Modified: / 10-09-2017 / 14:54:41 / cg"
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4299
!
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4300
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4301
toolsMenuToolbar
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4302
    "This resource specification was automatically generated
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4303
     by the MenuEditor of ST/X."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4304
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4305
    "Do not manually edit this!! If it is corrupted,
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4306
     the MenuEditor may not be able to read the specification."
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4307
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4308
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4309
    "
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4310
     MenuEditor new openOnClass:ImageEditor andSelector:#toolsMenuToolbar
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4311
     (Menu new fromLiteralArrayEncoding:(ImageEditor toolsMenuToolbar)) startUp
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4312
    "
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4313
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4314
    <resource: #menu>
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4315
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4316
    ^ 
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4317
     #(Menu
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4318
        (
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4319
         (MenuItem
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4320
            activeHelpKey: drawModePoint
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  4321
            enabled: canDrawPointsHolder
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4322
            label: 'Point'
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4323
            translateLabel: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4324
            isButton: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4325
            labelImage: (ResourceRetriever ImageEditor pointIcon)
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4326
            choice: editMode
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4327
            choiceValue: point
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4328
          )
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4329
         (MenuItem
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4330
            activeHelpKey: drawModeSpray
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  4331
            enabled: canSprayHolder
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4332
            label: 'Spray'
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4333
            translateLabel: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4334
            isButton: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4335
            labelImage: (ResourceRetriever ImageEditor sprayIcon)
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4336
            choice: editMode
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4337
            choiceValue: spray
2375
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  4338
          )
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4339
         (MenuItem
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4340
            activeHelpKey: drawModeBox
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  4341
            enabled: canDrawRectsHolder
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4342
            label: 'Rect'
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4343
            translateLabel: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4344
            isButton: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4345
            labelImage: (ResourceRetriever ImageEditor rectIcon)
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4346
            choice: editMode
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4347
            choiceValue: box
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4348
          )
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4349
         (MenuItem
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4350
            activeHelpKey: drawModeFilledBox
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  4351
            enabled: canFillRectsHolder
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4352
            label: 'FillRect'
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4353
            translateLabel: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4354
            isButton: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4355
            labelImage: (ResourceRetriever ImageEditor fillRectIcon)
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4356
            choice: editMode
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4357
            choiceValue: filledBox
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4358
          )
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4359
         (MenuItem
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4360
            activeHelpKey: drawModeCircle
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  4361
            enabled: canDrawCirclesHolder
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4362
            label: 'Circle'
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4363
            translateLabel: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4364
            isButton: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4365
            labelImage: (ResourceRetriever ImageEditor circleIcon)
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4366
            choice: editMode
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4367
            choiceValue: circle
2375
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  4368
          )
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4369
         (MenuItem
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4370
            activeHelpKey: drawModeFill
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  4371
            enabled: canFloodFillHolder
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4372
            label: 'Fill'
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4373
            translateLabel: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4374
            isButton: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4375
            labelImage: (ResourceRetriever ImageEditor fillIcon)
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4376
            choice: editMode
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4377
            choiceValue: fill
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4378
          )
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4379
         (MenuItem
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4380
            activeHelpKey: drawModeCopy
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4381
            enabled: imageIsLoadedHolder
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4382
            label: 'Copy'
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4383
            translateLabel: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4384
            isButton: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4385
            labelImage: (ResourceRetriever ImageEditor copyIcon)
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4386
            choice: editMode
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4387
            choiceValue: copy
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4388
          )
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4389
         (MenuItem
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4390
            activeHelpKey: drawModePasteWithMask
3377
6177e2e703fb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3376
diff changeset
  4391
            enabled: imageIsLoadedAndNotReadonlyHolder
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4392
            label: 'Paste With Mask'
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4393
            translateLabel: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4394
            isButton: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4395
            labelImage: (ResourceRetriever ImageEditor pasteWithMaskIcon)
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4396
            choice: editMode
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4397
            choiceValue: pasteWithMask
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4398
          )
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4399
         (MenuItem
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4400
            activeHelpKey: drawModePaste
3377
6177e2e703fb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3376
diff changeset
  4401
            enabled: imageIsLoadedAndNotReadonlyHolder
3561
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  4402
            label: 'Paste Over'
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4403
            translateLabel: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4404
            isButton: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4405
            labelImage: (ResourceRetriever ImageEditor pasteIcon)
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4406
            choice: editMode
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4407
            choiceValue: paste
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4408
          )
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4409
         (MenuItem
3561
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  4410
            activeHelpKey: drawModePasteMasked
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  4411
            enabled: imageIsLoadedAndNotReadonlyHolder
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  4412
            label: 'Paste Masked'
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  4413
            translateLabel: true
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  4414
            isButton: true
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  4415
            labelImage: (ResourceRetriever ImageEditor pasteMaskedIcon)
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  4416
            choice: editMode
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  4417
            choiceValue: pasteMasked
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  4418
          )
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  4419
         (MenuItem
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4420
            activeHelpKey: drawModePasteUnder
3377
6177e2e703fb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3376
diff changeset
  4421
            enabled: imageIsLoadedAndNotReadonlyHolder
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4422
            label: 'Paste Under'
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4423
            translateLabel: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4424
            isButton: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4425
            labelImage: (ResourceRetriever ImageEditor pasteUnderIcon)
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4426
            choice: editMode
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4427
            choiceValue: pasteUnder
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4428
          )
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4429
         (MenuItem
3464
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  4430
            activeHelpKey: drawModeCropSubImage 
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  4431
            enabled: imageIsLoadedHolder
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  4432
            label: 'Crop SubImage'
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  4433
            translateLabel: true
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  4434
            isButton: true
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  4435
            labelImage: (ResourceRetriever ImageEditor cropSubImageIcon)
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  4436
            choice: editMode
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  4437
            choiceValue: cropSubImage
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  4438
          )
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  4439
         (MenuItem
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4440
            activeHelpKey: drawModeSpecial
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4441
            enabled: imageIsLoadedHolder
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4442
            label: 'Special'
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4443
            translateLabel: true
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4444
            isButton: true
3419
dda4a17fdefc #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3418
diff changeset
  4445
            labelImage: (ResourceRetriever ImageEditor specialRectangleIcon)
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4446
            choice: editMode
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  4447
            choiceValue: specialOperation
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4448
          )
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4449
         )
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4450
        nil
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4451
        nil
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  4452
      )
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  4453
3464
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  4454
    "Modified: / 24-08-2017 / 20:53:02 / cg"
3561
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  4455
    "Modified: / 27-05-2018 / 10:45:31 / Claus Gittinger"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  4456
! !
228524287573 intitial checkin
tz
parents:
diff changeset
  4457
1842
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4458
!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
  4459
1900
41ba86fb1087 cleanup
Claus Gittinger <cg@exept.de>
parents: 1899
diff changeset
  4460
colorTableColumns
1842
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4461
    "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
  4462
     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
  4463
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4464
    "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
  4465
     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
  4466
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4467
    "
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  4468
     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
  4469
    "
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4470
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4471
    <resource: #tableColumns>
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4472
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4473
    ^#(
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4474
      (DataSetColumnSpec
2174
7beca4d9c93a color-double-click
Claus Gittinger <cg@exept.de>
parents: 2155
diff changeset
  4475
         activeHelpKey: ''
1842
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4476
         labelButtonType: Button
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4477
         rendererType: rowSelector
2712
cddda688a9f2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2711
diff changeset
  4478
         backgroundSelector: theColorItself:
cddda688a9f2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2711
diff changeset
  4479
         selectedBackgroundSelector: theColorItself:
1842
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4480
         isResizeable: false
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4481
       )
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4482
      (DataSetColumnSpec
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4483
         label: 'R'
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4484
         labelAlignment: left
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4485
         labelButtonType: Button
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4486
         columnAlignment: right
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4487
         editorType: InputField
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4488
         type: number
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4489
         model: redFromColor:
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4490
         writeSelector: redAtColor:put:
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4491
         selectSelector: canSelectRedInColor:
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4492
       )
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4493
      (DataSetColumnSpec
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4494
         label: 'G'
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4495
         labelAlignment: left
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4496
         labelButtonType: Button
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4497
         columnAlignment: right
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4498
         editorType: InputField
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4499
         type: number
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4500
         model: greenFromColor:
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4501
         writeSelector: greenAtColor:put:
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4502
         selectSelector: canSelectGreenInColor:
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4503
       )
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4504
      (DataSetColumnSpec
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4505
         label: 'B'
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4506
         labelAlignment: left
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4507
         labelButtonType: Button
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4508
         columnAlignment: right
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4509
         editorType: InputField
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4510
         type: number
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4511
         model: blueFromColor:
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4512
         writeSelector: blueAtColor:put:
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4513
         selectSelector: canSelectBlueInColor:
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4514
       )
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4515
      )
2174
7beca4d9c93a color-double-click
Claus Gittinger <cg@exept.de>
parents: 2155
diff changeset
  4516
7beca4d9c93a color-double-click
Claus Gittinger <cg@exept.de>
parents: 2155
diff changeset
  4517
    "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
  4518
! !
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  4519
400
228524287573 intitial checkin
tz
parents:
diff changeset
  4520
!ImageEditor methodsFor:'accessing'!
228524287573 intitial checkin
tz
parents:
diff changeset
  4521
228524287573 intitial checkin
tz
parents:
diff changeset
  4522
image
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  4523
    "returns the current editing image"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  4524
1376
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  4525
    ^ imageEditView image
400
228524287573 intitial checkin
tz
parents:
diff changeset
  4526
!
228524287573 intitial checkin
tz
parents:
diff changeset
  4527
228524287573 intitial checkin
tz
parents:
diff changeset
  4528
postOpenAction: anAction
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  4529
   "sets an action which is evaluated after opening"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  4530
228524287573 intitial checkin
tz
parents:
diff changeset
  4531
    postOpenAction := anAction
1381
30fedb56e7db *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1380
diff changeset
  4532
!
30fedb56e7db *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1380
diff changeset
  4533
30fedb56e7db *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1380
diff changeset
  4534
resourceClass:aClass
30fedb56e7db *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1380
diff changeset
  4535
    imageEditView resourceClass:aClass
3375
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
  4536
!
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
  4537
3379
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  4538
savedFile
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  4539
    "if user did a save to file, return the filename.
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  4540
     Otherwise, this returns nil"
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  4541
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  4542
    ^ savedFile
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  4543
!
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  4544
3375
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
  4545
savedImage
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
  4546
    "if user did a save, return what was saved last.
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
  4547
     Otherwise, this returns nil"
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
  4548
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
  4549
    ^ savedImage
400
228524287573 intitial checkin
tz
parents:
diff changeset
  4550
! !
228524287573 intitial checkin
tz
parents:
diff changeset
  4551
2767
9db214621639 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  4552
!ImageEditor methodsFor:'accessing-behavior'!
9db214621639 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  4553
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4554
allowedToChangeImageDimension
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4555
    "used to edit an existing image's contents only (Expecco)"
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4556
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4557
    ^ self allowedToChangeImageDimensionAndDepth
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4558
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4559
    "Created: / 16-02-2017 / 01:59:21 / cg"
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4560
!
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  4561
2767
9db214621639 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  4562
allowedToChangeImageDimensionAndDepth
9db214621639 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  4563
    "used to edit an existing image's contents only (Expecco)"
9db214621639 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  4564
3378
7225434f9d46 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3377
diff changeset
  4565
    self readOnly ifTrue:[^ false].
2767
9db214621639 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  4566
    ^ allowedToChangeImageDimensionAndDepth ? true
9db214621639 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  4567
!
9db214621639 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  4568
9db214621639 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  4569
allowedToChangeImageDimensionAndDepth:aBoolean
9db214621639 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  4570
    "used to edit an existing image's contents only (Expecco)"
9db214621639 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  4571
9db214621639 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  4572
    allowedToChangeImageDimensionAndDepth := aBoolean
9db214621639 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  4573
! !
9db214621639 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  4574
1398
284781677ae1 category changes
Claus Gittinger <cg@exept.de>
parents: 1393
diff changeset
  4575
!ImageEditor methodsFor:'accessing-views'!
400
228524287573 intitial checkin
tz
parents:
diff changeset
  4576
915
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  4577
colorDataSetView
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  4578
    "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
  4579
1597
b670ad8c30e1 builder componentAt: -> self componentAt:
Claus Gittinger <cg@exept.de>
parents: 1583
diff changeset
  4580
    ^(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
  4581
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  4582
    "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
  4583
!
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  4584
487
6c336c183330 info bar as subSpec to class ToolApplicationModel moved
tz
parents: 475
diff changeset
  4585
coordLabel
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  4586
    "returns the view the coord label"
487
6c336c183330 info bar as subSpec to class ToolApplicationModel moved
tz
parents: 475
diff changeset
  4587
1597
b670ad8c30e1 builder componentAt: -> self componentAt:
Claus Gittinger <cg@exept.de>
parents: 1583
diff changeset
  4588
    ^self componentAt: #coordLabel
487
6c336c183330 info bar as subSpec to class ToolApplicationModel moved
tz
parents: 475
diff changeset
  4589
!
6c336c183330 info bar as subSpec to class ToolApplicationModel moved
tz
parents: 475
diff changeset
  4590
400
228524287573 intitial checkin
tz
parents:
diff changeset
  4591
imageEditView
3376
c508738114fa #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3375
diff changeset
  4592
    "returns the editor view of the image"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  4593
1376
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  4594
    imageEditView isNil ifTrue:[
1597
b670ad8c30e1 builder componentAt: -> self componentAt:
Claus Gittinger <cg@exept.de>
parents: 1583
diff changeset
  4595
        imageEditView := (self componentAt: #imageEditView) scrolledView.
1376
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  4596
        imageEditView addDependent:self.
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  4597
    ].
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  4598
    ^ imageEditView
1345
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  4599
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  4600
    "Modified: / 10.2.2000 / 23:19:20 / cg"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  4601
!
228524287573 intitial checkin
tz
parents:
diff changeset
  4602
228524287573 intitial checkin
tz
parents:
diff changeset
  4603
imagePreView
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  4604
    "returns the preview of the image"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  4605
2339
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  4606
    |imagePreViewSubViews|
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  4607
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  4608
    imagePreViewSubViews := (self componentAt: #imagePreView) subViews.
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  4609
2043
a816ef2ce516 #imagePreView
sr
parents: 2042
diff changeset
  4610
    "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
  4611
    imagePreViewSubViews isEmptyOrNil ifTrue:[
2043
a816ef2ce516 #imagePreView
sr
parents: 2042
diff changeset
  4612
        ^ nil
a816ef2ce516 #imagePreView
sr
parents: 2042
diff changeset
  4613
    ].
a816ef2ce516 #imagePreView
sr
parents: 2042
diff changeset
  4614
2339
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  4615
    ^ imagePreViewSubViews first 
475
0d5a50fe59f4 default value of info label set
tz
parents: 468
diff changeset
  4616
! !
0d5a50fe59f4 default value of info label set
tz
parents: 468
diff changeset
  4617
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4618
!ImageEditor methodsFor:'actions'!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4619
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4620
applyCropAction
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4621
    self cropLeft:(self cropLeftAmount value) right:(self cropRightAmount value) 
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4622
         top:(self cropTopAmount value) bottom:(self cropBottomAmount value)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4623
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4624
    "Created: / 17-02-2017 / 14:34:35 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4625
    "Modified: / 19-02-2017 / 15:11:41 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4626
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4627
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4628
cropBottomNow
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4629
    self cropLeft:0 right:0 top:0 bottom:(self cropBottomAmount value)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4630
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4631
    "Created: / 19-02-2017 / 15:07:36 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4632
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4633
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4634
cropLeft:left right:right top:top bottom:bottom
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4635
    |img|
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4636
    
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4637
    img := imageEditView image.
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4638
    img isNil ifTrue:[^ self].
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4639
    
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4640
    true "firstChange" ifTrue:[
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4641
        imageEditView makeUndo.
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4642
        "/ firstChange := false.
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4643
    ].
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4644
    imageEditView
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4645
        makeSubImageX:left y:top 
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4646
        width:(img width - left - right)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4647
        height:(img height - top - bottom).
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
    self updateImagePreView.
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4650
    self updateInfoLabel
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4651
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4652
    "Created: / 19-02-2017 / 15:07:58 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4653
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4654
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4655
cropLeftNow
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4656
    self cropLeft:(self cropLeftAmount value) right:0 top:0 bottom:0
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4657
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4658
    "Created: / 19-02-2017 / 15:08:06 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4659
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4660
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4661
cropRightNow
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4662
    self cropLeft:0 right:(self cropRightAmount value) top:0 bottom:0
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4663
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4664
    "Created: / 19-02-2017 / 15:08:12 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4665
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4666
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4667
cropTopNow
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4668
    self cropLeft:0 right:0 top:(self cropTopAmount value) bottom:0
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:08:29 / 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
400
228524287573 intitial checkin
tz
parents:
diff changeset
  4673
!ImageEditor methodsFor:'aspects'!
228524287573 intitial checkin
tz
parents:
diff changeset
  4674
928
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  4675
activityInfoHolder
1987
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  4676
    ^ self infoLabelHolder
928
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  4677
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  4678
    "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
  4679
!
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  4680
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4681
alphaHolder
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4682
    |holder|
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4683
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4684
    (holder := builder bindingAt:#alphaHolder) isNil ifTrue:[
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4685
        builder aspectAt:#alphaHolder put:(holder := 100 asValue).
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4686
        holder onChangeEvaluate:[ imageEditView drawingAlpha:holder value ].
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4687
    ].
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4688
    ^ holder
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4689
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4690
    "Created: / 05-09-2017 / 00:38:14 / cg"
3488
e9655ba452c7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3487
diff changeset
  4691
    "Modified: / 05-09-2017 / 10:47:01 / cg"
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4692
!
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4693
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4694
alphaText
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4695
    ^ 'alpha:'
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4696
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4697
    "Created: / 05-09-2017 / 00:32:55 / cg"
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4698
!
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4699
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4700
alphaVisibleHolder
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4701
    |holder|
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4702
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4703
    (holder := builder bindingAt:#alphaVisibleHolder) isNil ifTrue:[
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4704
        builder aspectAt:#alphaVisibleHolder put:(holder := false asValue).
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4705
    ].
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4706
    ^ holder
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4707
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4708
    "Created: / 05-09-2017 / 00:35:36 / cg"
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4709
!
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  4710
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4711
canAddColorToColormap
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4712
    |img|
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4713
    
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4714
    img := self image.
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4715
    img isNil ifTrue:[^ false].
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4716
    img photometric == #blackIs0 ifTrue:[^ false].
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4717
    img photometric == #whiteIs0 ifTrue:[^ false].
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4718
    ^ true
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4719
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4720
    "Created: / 31-08-2017 / 18:32:27 / cg"
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4721
!
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4722
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4723
canAddColorToColormapHolder
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4724
    ^ [self canAddColorToColormap]
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4725
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4726
    "Created: / 31-08-2017 / 18:32:40 / cg"
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4727
!
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4728
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4729
canChangeColorInColormap
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4730
    |img|
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4731
    
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4732
    img := self image.
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4733
    img isNil ifTrue:[^ false].
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4734
    img photometric == #palette ifFalse:[^ false].
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4735
    ^ true
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4736
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4737
    "Created: / 31-08-2017 / 18:34:12 / cg"
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4738
!
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4739
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4740
canChangeColorInColormapHolder
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4741
    ^ [self canChangeColorInColormap]
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4742
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4743
    "Created: / 31-08-2017 / 18:34:18 / cg"
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4744
!
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4745
3378
7225434f9d46 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3377
diff changeset
  4746
canResizeImage
7225434f9d46 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3377
diff changeset
  4747
    ^ self imageIsLoadedAndNotReadonlyHolder
7225434f9d46 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3377
diff changeset
  4748
!
7225434f9d46 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3377
diff changeset
  4749
3393
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4750
colorBoxVisibleHolder
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4751
    |holder|
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4752
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4753
    (holder := builder bindingAt:#colorBoxVisibleHolder) isNil ifTrue:[
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4754
        builder aspectAt:#colorBoxVisibleHolder put:(holder := true asValue).
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4755
    ].
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4756
    ^ holder
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4757
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4758
    "Created: / 03-02-2017 / 11:20:21 / cg"
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4759
!
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4760
915
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  4761
colorColumnAdaptor
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  4762
    ^ self
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  4763
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  4764
    "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
  4765
!
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  4766
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4767
colorCropTabLabelList
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4768
    ^ resources array:(self colorCropTabSpecList collect:#first)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4769
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4770
    "Created: / 19-02-2017 / 14:58:25 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4771
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4772
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4773
colorCropTabSelectionIndexHolder
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4774
    |holder|
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4775
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4776
    (holder := builder bindingAt:#colorCropTabSelectionIndexHolder) isNil ifTrue:[
3415
b93299ad5142 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3413
diff changeset
  4777
        builder aspectAt:#colorCropTabSelectionIndexHolder put:(holder := self defaultEditTabIndex asValue).
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4778
        holder onChangeSend:#colorCropTabSelectionIndexChanged to:self.
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4779
    ].
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4780
    ^ holder
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4781
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4782
    "Created: / 19-02-2017 / 14:59:11 / cg"
3415
b93299ad5142 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3413
diff changeset
  4783
    "Modified: / 19-02-2017 / 23:33:39 / cg"
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4784
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4785
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4786
colorCropTabSpecList
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4787
    ^ #( 
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4788
        ('Colors' colors)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4789
        ('Crop'   crop)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4790
        ('Fill'   fill)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4791
    )
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4792
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4793
    "Created: / 19-02-2017 / 15:34:33 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4794
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4795
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4796
colorCropTabSymbolList
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4797
    ^ self colorCropTabSpecList collect:#second
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4798
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4799
    "Created: / 19-02-2017 / 15:34:54 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4800
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4801
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4802
cropBottomAmount
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4803
    ^ builder valueAspectFor:'cropBottomAmount' initialValue:1
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4804
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4805
    "Created: / 19-02-2017 / 15:09:09 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4806
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4807
3393
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4808
cropBoxIsDialog
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4809
    ^ false
3393
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4810
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4811
    "Created: / 03-02-2017 / 11:23:50 / cg"
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4812
    "Modified: / 19-02-2017 / 15:24:07 / cg"
3393
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4813
!
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4814
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4815
cropBoxIsNotDialog
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4816
    ^ self cropBoxIsDialog not
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4817
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4818
    "Created: / 17-02-2017 / 14:38:04 / cg"
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4819
!
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4820
3393
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4821
cropBoxVisibleHolder
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4822
    |holder|
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4823
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4824
    (holder := builder bindingAt:#cropBoxVisibleHolder) isNil ifTrue:[
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4825
        builder aspectAt:#cropBoxVisibleHolder put:(holder := false asValue).
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4826
    ].
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4827
    ^ holder
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4828
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4829
    "Created: / 03-02-2017 / 11:20:13 / cg"
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4830
!
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  4831
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4832
cropLeftAmount
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4833
    ^ builder valueAspectFor:'cropLeftAmount' initialValue:1
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4834
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4835
    "Created: / 19-02-2017 / 15:09:23 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4836
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4837
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4838
cropRightAmount
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4839
    ^ builder valueAspectFor:'cropRightAmount' initialValue:1
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4840
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4841
    "Created: / 19-02-2017 / 15:09:29 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4842
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4843
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4844
cropTopAmount
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4845
    ^ builder valueAspectFor:'cropTopAmount' initialValue:1
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4846
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4847
    "Created: / 19-02-2017 / 15:09:35 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4848
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4849
3415
b93299ad5142 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3413
diff changeset
  4850
defaultEditTabIndex
b93299ad5142 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3413
diff changeset
  4851
    "the default tab to show in the color/crop/fill tablist"
b93299ad5142 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3413
diff changeset
  4852
    
b93299ad5142 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3413
diff changeset
  4853
    ^ 1
b93299ad5142 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3413
diff changeset
  4854
b93299ad5142 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3413
diff changeset
  4855
    "Created: / 19-02-2017 / 23:34:12 / cg"
b93299ad5142 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3413
diff changeset
  4856
!
b93299ad5142 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3413
diff changeset
  4857
3421
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4858
drawingColor1Holder
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4859
    "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
  4860
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4861
    |holder|
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4862
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4863
    (holder := builder bindingAt:#drawingColor1Holder) isNil ifTrue:[
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4864
        builder aspectAt:#drawingColor1Holder put:(holder := IndirectValue new)
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4865
    ].
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4866
    ^ holder
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4867
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4868
    "Created: / 23-02-2017 / 10:18:25 / cg"
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4869
!
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4870
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4871
drawingColor2Holder
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4872
    "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
  4873
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4874
    |holder|
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4875
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4876
    (holder := builder bindingAt:#drawingColor2Holder) isNil ifTrue:[
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4877
        builder aspectAt:#drawingColor2Holder put:(holder := IndirectValue new)
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4878
    ].
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4879
    ^ holder
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4880
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4881
    "Created: / 23-02-2017 / 10:18:33 / cg"
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4882
!
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4883
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4884
floodFillBoxVisibleHolder
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4885
    |holder|
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4886
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4887
    (holder := builder bindingAt:#floodFillBoxVisibleHolder) isNil ifTrue:[
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4888
        builder aspectAt:#floodFillBoxVisibleHolder put:(holder := false asValue).
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4889
    ].
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4890
    ^ holder
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4891
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4892
    "Created: / 19-02-2017 / 15:28:40 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4893
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  4894
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4895
floodFillMaxHueError
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4896
    |holder|
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4897
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4898
    (holder := builder bindingAt:#floodFillMaxHueError) isNil ifTrue:[
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4899
        builder aspectAt:#floodFillMaxHueError put:(holder := 0 asValue).
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4900
        holder onChangeEvaluate:[ imageEditView floodFillMaxHueError:holder value ].
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4901
    ].
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4902
    ^ holder
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4903
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4904
    "Created: / 17-02-2017 / 15:19:17 / cg"
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4905
!
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4906
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4907
floodFillMaxLightError
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4908
    |holder|
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4909
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4910
    (holder := builder bindingAt:#floodFillMaxLightError) isNil ifTrue:[
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4911
        builder aspectAt:#floodFillMaxLightError put:(holder := 0 asValue).
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4912
        holder onChangeEvaluate:[ imageEditView floodFillMaxLightError:holder value ].
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4913
    ].
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4914
    ^ holder
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4915
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4916
    "Created: / 17-02-2017 / 15:19:11 / cg"
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4917
!
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  4918
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4919
hasClassAndSelectorDefinedHolder
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  4920
    ^ [
1965
1d2b7893ae89 some code cleanup (resourceClass was actually its name)
Claus Gittinger <cg@exept.de>
parents: 1962
diff changeset
  4921
        |cls|
1d2b7893ae89 some code cleanup (resourceClass was actually its name)
Claus Gittinger <cg@exept.de>
parents: 1962
diff changeset
  4922
1d2b7893ae89 some code cleanup (resourceClass was actually its name)
Claus Gittinger <cg@exept.de>
parents: 1962
diff changeset
  4923
        (cls := imageEditView resourceClass) notNil
1d2b7893ae89 some code cleanup (resourceClass was actually its name)
Claus Gittinger <cg@exept.de>
parents: 1962
diff changeset
  4924
        and:[imageEditView resourceSelector notNil]
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  4925
      ]
933
f090206aadff disable some menu items if no class/selector is defined
Claus Gittinger <cg@exept.de>
parents: 932
diff changeset
  4926
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4927
    "Created: / 04-07-2010 / 10:11:10 / cg"
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4928
!
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4929
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4930
hasClassDefinedHolder
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  4931
    ^ [
1965
1d2b7893ae89 some code cleanup (resourceClass was actually its name)
Claus Gittinger <cg@exept.de>
parents: 1962
diff changeset
  4932
        imageEditView resourceClass notNil
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  4933
      ]
933
f090206aadff disable some menu items if no class/selector is defined
Claus Gittinger <cg@exept.de>
parents: 932
diff changeset
  4934
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4935
    "Created: / 04-07-2010 / 10:11:47 / cg"
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4936
!
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4937
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4938
hasColorSelectedHolder
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  4939
    ^ [ self selectedColors value notEmptyOrNil "self selectedColorIndexOrNil notNil" ]
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4940
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4941
    "Created: / 04-07-2010 / 10:12:22 / cg"
2651
270672891645 changed: #colorMapMenu
Claus Gittinger <cg@exept.de>
parents: 2595
diff changeset
  4942
!
270672891645 changed: #colorMapMenu
Claus Gittinger <cg@exept.de>
parents: 2595
diff changeset
  4943
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  4944
hasColormap
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4945
    "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
  4946
    
3421
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4947
    |img|
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4948
    
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4949
    ^ (img := self image) notNil 
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4950
        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
  4951
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4952
    "Created: / 30-09-1998 / 23:53:55 / cg"
3421
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  4953
    "Modified: / 23-02-2017 / 09:57:45 / cg"
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4954
    "Modified (comment): / 31-08-2017 / 18:36:08 / cg"
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  4955
!
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  4956
2651
270672891645 changed: #colorMapMenu
Claus Gittinger <cg@exept.de>
parents: 2595
diff changeset
  4957
hasColormapAndColorSelected
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  4958
    ^ [ self hasColormap and:[self hasColorSelectedHolder value]]
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  4959
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  4960
    "Modified: / 31-08-2017 / 14:08:20 / cg"
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4961
!
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4962
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  4963
hasColormapAndSingleColorSelected
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4964
    ^ self hasColormapHolder value and:[self hasSingleColorSelectedHolder value]
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4965
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4966
    "Modified: / 31-08-2017 / 18:44:49 / cg"
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4967
!
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4968
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4969
hasColormapAndSingleColorSelectedHolder
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4970
    ^ [ self hasColormapAndSingleColorSelected value ]
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4971
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4972
    "Created: / 31-08-2017 / 18:44:36 / cg"
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4973
!
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4974
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4975
hasColormapAndSingleWritableColorSelectedHolder
3553
31631af8baf9 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3552
diff changeset
  4976
    ^ [ self hasColormapAndSingleColorSelected 
31631af8baf9 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3552
diff changeset
  4977
    and:[self canChangeColorInColormap ]]
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4978
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4979
    "Created: / 31-08-2017 / 18:42:46 / cg"
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  4980
!
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  4981
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4982
hasColormapHolder
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4983
    "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
  4984
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4985
    ^ [self hasColormap]
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4986
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4987
    "Created: / 04-07-2010 / 10:13:05 / cg"
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  4988
    "Modified (comment): / 31-08-2017 / 18:36:47 / cg"
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4989
!
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  4990
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  4991
hasSingleColorSelectedHolder
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  4992
    ^ [ self selectedColors value size == 1 "self selectedColorIndexOrNil notNil" ]
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  4993
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  4994
    "Created: / 04-07-2010 / 10:12:22 / cg"
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  4995
!
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  4996
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  4997
hasWritableColorSelectedHolder
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  4998
    ^ [ self hasSingleColorSelectedHolder value and:[self canChangeColorInColormap ]]
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  4999
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  5000
    "Created: / 08-10-2017 / 14:45:11 / cg"
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  5001
!
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  5002
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5003
imageHasColormap
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5004
    "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
  5005
    
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5006
    |img|
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5007
    
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5008
    ^ (img := self image) notNil 
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5009
        and:[img colorMap notNil ]
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5010
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5011
    "Created: / 31-08-2017 / 18:36:25 / cg"
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5012
!
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5013
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5014
imageHasColormapHolder
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5015
    ^ [self imageHasColormap]
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5016
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5017
    "Created: / 31-08-2017 / 18:36:42 / cg"
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5018
!
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5019
2812
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5020
imageHasImageSequence
3080
918f79c8b30d class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3066
diff changeset
  5021
    |img|
918f79c8b30d class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3066
diff changeset
  5022
918f79c8b30d class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3066
diff changeset
  5023
    ^ (img := self image) notNil and:[img imageSequence notNil]
2812
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5024
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5025
    "Created: / 21-10-2010 / 14:35:45 / cg"
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5026
!
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5027
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5028
imageHasImageSequenceHolder
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5029
    |holder|
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5030
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5031
    (holder := builder bindingAt:#imageHasImageSequenceHolder) isNil ifTrue:[
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5032
        builder aspectAt:#imageHasImageSequenceHolder put:(holder := false asValue).
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5033
        holder value:(self imageHasImageSequence).    
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5034
    ].
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5035
    ^ holder
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5036
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5037
    "Modified: / 21-10-2010 / 14:36:57 / cg"
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5038
!
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5039
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5040
imageHasMaskAndIsNotReadOnlyHolder
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5041
    "returns whether an image is loaded and editable as value holder"
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5042
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5043
    ^ BlockValue
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5044
        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
  5045
        argument:(self imageIsLoadedHolder)
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5046
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5047
    "Created: / 16-02-2017 / 12:17:25 / cg"
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5048
!
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5049
2812
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5050
imageHasNextImage
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5051
    ^ self imageHasImageSequence and:[ (imageSeqNr ? 1) < self image imageSequence size ]
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5052
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5053
    "Created: / 21-10-2010 / 14:37:10 / cg"
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5054
!
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5055
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  5056
imageHasNextImageHolder
2812
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5057
    |holder|
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5058
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5059
    (holder := builder bindingAt:#imageHasNextImageHolder) isNil ifTrue:[
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5060
        builder aspectAt:#imageHasNextImageHolder put:(holder := false asValue).
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5061
        holder value:(self imageHasNextImage).    
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5062
    ].
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5063
    ^ holder
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5064
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5065
    "Modified: / 21-10-2010 / 14:37:40 / cg"
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5066
!
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5067
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5068
imageHasPreviousImage
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5069
    ^ self imageHasImageSequence and:[ (imageSeqNr ? 1) > 1 ]
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5070
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5071
    "Created: / 21-10-2010 / 14:37:21 / cg"
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5072
!
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5073
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5074
imageHasPreviousImageHolder
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5075
    |holder|
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5076
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5077
    (holder := builder bindingAt:#imageHasPreviousImageHolder) isNil ifTrue:[
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5078
        builder aspectAt:#imageHasPreviousImageHolder put:(holder := false asValue).
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5079
        holder value:(self imageHasPreviousImage).    
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5080
    ].
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5081
    ^ holder
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5082
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5083
    "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
  5084
!
9787c42843c2 allow display and extract from image sequences (gif anims)
Claus Gittinger <cg@exept.de>
parents: 1377
diff changeset
  5085
928
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  5086
imageInfoHolder
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  5087
    |holder|
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  5088
928
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  5089
    (holder := builder bindingAt:#imageInfoHolder) isNil ifTrue:[
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  5090
        builder aspectAt:#imageInfoHolder put:(holder :=  '' asValue).
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  5091
    ].
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  5092
    ^ holder
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  5093
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  5094
    "Modified: / 04-07-2010 / 10:15:14 / cg"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  5095
!
228524287573 intitial checkin
tz
parents:
diff changeset
  5096
228524287573 intitial checkin
tz
parents:
diff changeset
  5097
listOfColors
1896
ab2b45d8ccc8 colorMap fixes
penk
parents: 1889
diff changeset
  5098
    "returns the list of colors"
ab2b45d8ccc8 colorMap fixes
penk
parents: 1889
diff changeset
  5099
ab2b45d8ccc8 colorMap fixes
penk
parents: 1889
diff changeset
  5100
    |list|
ab2b45d8ccc8 colorMap fixes
penk
parents: 1889
diff changeset
  5101
ab2b45d8ccc8 colorMap fixes
penk
parents: 1889
diff changeset
  5102
    (list := builder bindingAt:#listOfColors) isNil ifTrue:[
ab2b45d8ccc8 colorMap fixes
penk
parents: 1889
diff changeset
  5103
        builder aspectAt:#listOfColors put:(list :=  List new).
ab2b45d8ccc8 colorMap fixes
penk
parents: 1889
diff changeset
  5104
        list addDependent:self.
400
228524287573 intitial checkin
tz
parents:
diff changeset
  5105
    ].
1896
ab2b45d8ccc8 colorMap fixes
penk
parents: 1889
diff changeset
  5106
    ^ list
400
228524287573 intitial checkin
tz
parents:
diff changeset
  5107
!
228524287573 intitial checkin
tz
parents:
diff changeset
  5108
1987
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  5109
magnificationHolder
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  5110
    "returns current magnification of the image as an AspectAdaptor"
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  5111
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  5112
    |holder|
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  5113
    (holder := builder bindingAt:#valueOfMagnification) isNil ifTrue:[
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  5114
        builder aspectAt:#valueOfMagnification put:(
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  5115
        holder := AspectAdaptor new subject:self; forAspect:#magnification)
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  5116
    ].
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  5117
    ^ holder
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  5118
!
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  5119
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5120
penWidthHolder
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5121
    |holder|
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5122
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5123
    (holder := builder bindingAt:#penWidthHolder) isNil ifTrue:[
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5124
        builder aspectAt:#penWidthHolder put:(holder := imageEditView penWidth asValue).
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5125
        holder onChangeSend:#penWidthHolderChanged to:self.
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5126
    ].
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5127
    ^ holder
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5128
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5129
    "Created: / 15-02-2012 / 22:30:58 / cg"
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5130
!
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5131
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  5132
previewBackgroundColorHolder
1764
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  5133
    |holder|
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  5134
1764
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  5135
    (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
  5136
        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
  5137
        holder addDependent:self.
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  5138
    ].
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  5139
    ^ holder
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  5140
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  5141
    "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
  5142
!
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  5143
3489
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5144
previewMagnificationHolder
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5145
    |holder|
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5146
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5147
    (holder := builder bindingAt:#previewMagnificationHolder) isNil ifTrue:[
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5148
        builder aspectAt:#previewMagnificationHolder put:(holder := 1 asValue).
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5149
        holder addDependent:self.
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5150
    ].
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5151
    ^ holder
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5152
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5153
    "Created: / 10-09-2017 / 14:10:07 / cg"
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5154
!
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5155
3377
6177e2e703fb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3376
diff changeset
  5156
readOnly
6177e2e703fb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3376
diff changeset
  5157
    ^ false
6177e2e703fb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3376
diff changeset
  5158
!
6177e2e703fb #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3376
diff changeset
  5159
3425
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  5160
saveButtonInToolbarVisibleHolder
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  5161
    ^ false
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  5162
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  5163
    "Created: / 26-02-2017 / 22:58:41 / cg"
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  5164
!
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  5165
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5166
selectedColors
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5167
    "returns a valueHolder for the current set of selected colors."
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5168
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5169
    |holder|
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5170
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5171
    (holder := builder bindingAt:#selectedColors) isNil ifTrue:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5172
        builder aspectAt:#selectedColors put:(holder := nil asValue).
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5173
        holder onChangeSend:#selectedColorsChanged to:self.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5174
    ].
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5175
    ^ holder
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5176
!
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5177
400
228524287573 intitial checkin
tz
parents:
diff changeset
  5178
selectionOfColor
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  5179
    "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
  5180
     Here, an AspectAdaptor which accesses selectedColorIndex is returned."
400
228524287573 intitial checkin
tz
parents:
diff changeset
  5181
228524287573 intitial checkin
tz
parents:
diff changeset
  5182
    |holder|
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  5183
400
228524287573 intitial checkin
tz
parents:
diff changeset
  5184
    (holder := builder bindingAt:#selectionOfColor) isNil ifTrue:[
228524287573 intitial checkin
tz
parents:
diff changeset
  5185
        builder aspectAt:#selectionOfColor put:(
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  5186
        holder := AspectAdaptor new subject:self; forAspect:#selectedColorIndex ).
400
228524287573 intitial checkin
tz
parents:
diff changeset
  5187
    ].
228524287573 intitial checkin
tz
parents:
diff changeset
  5188
    ^ holder
228524287573 intitial checkin
tz
parents:
diff changeset
  5189
!
228524287573 intitial checkin
tz
parents:
diff changeset
  5190
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5191
spraySpotHolder
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5192
    |holder|
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5193
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5194
    (holder := builder bindingAt:#spraySpotHolder) isNil ifTrue:[
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5195
        builder aspectAt:#spraySpotHolder put:(holder := imageEditView spraySpot asValue).
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5196
        holder onChangeSend:#spraySpotHolderChanged to:self.
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5197
    ].
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5198
    ^ holder
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5199
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5200
    "Created: / 15-02-2012 / 22:36:38 / cg"
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5201
!
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  5202
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5203
tileModeHolder
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5204
    |holder|
2812
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5205
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5206
    (holder := builder bindingAt:#tileModeHolder) isNil ifTrue:[
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5207
        builder aspectAt:#tileModeHolder put:(holder := false asValue).
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5208
        holder addDependent:self.
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5209
    ].
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5210
    ^ holder
2812
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5211
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5212
    "Modified: / 21-10-2010 / 14:35:24 / cg"
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5213
!
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5214
400
228524287573 intitial checkin
tz
parents:
diff changeset
  5215
valueOfMagnification
2308
60722577a10a Mark obsolete methods
Stefan Vogel <sv@exept.de>
parents: 2272
diff changeset
  5216
    <resource: #obsolete>
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5217
    "returns current magnification of the image as an AspectAdaptor"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  5218
1987
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  5219
    self obsoleteMethodWarning:'stupid method name - use #magnificationHolder'.
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  5220
    ^ self magnificationHolder
400
228524287573 intitial checkin
tz
parents:
diff changeset
  5221
! !
228524287573 intitial checkin
tz
parents:
diff changeset
  5222
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5223
!ImageEditor methodsFor:'change & update'!
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5224
3489
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5225
changePreviewImageMagnification
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5226
    |mag|
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5227
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5228
    mag := Dialog request:'Magnification?' initialAnswer:self imagePreView magnificationFactor.
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5229
    mag isEmptyOrNil ifTrue:[^ self].
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5230
    mag := Number readFrom:mag onError:nil.
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5231
    mag isNil ifTrue:[^ self].
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5232
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5233
    self previewMagnificationHolder value:mag
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5234
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5235
    "Created: / 10-09-2017 / 14:52:52 / cg"
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5236
!
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5237
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5238
colorCropTabSelectionIndexChanged
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5239
    |selIndex sym|
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5240
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5241
    selIndex := self colorCropTabSelectionIndexHolder value.
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5242
    sym := self colorCropTabSymbolList at:selIndex.
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5243
    
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5244
    self colorBoxVisibleHolder value:(sym == #colors).
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5245
    self cropBoxVisibleHolder value:(sym == #crop).
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5246
    self floodFillBoxVisibleHolder value:(sym == #fill).
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5247
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5248
    "Created: / 19-02-2017 / 15:01:05 / cg"
3443
b9d9eb4b34f9 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3442
diff changeset
  5249
    "Modified: / 21-04-2017 / 16:05:51 / cg"
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5250
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  5251
3433
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5252
colorMapModeFromImage:anImage
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5253
    "retrieves the colorMapMode for an image"
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5254
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5255
    |image colorMapModeKey|
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5256
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5257
    image := self image.
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5258
    image isNil ifTrue:[^ nil ].
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5259
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5260
    image mask notNil ifTrue: [             
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5261
        colorMapModeKey := 'masked'.
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5262
    ] ifFalse:[
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5263
        colorMapModeKey := 'depth'.
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5264
    ].
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5265
    colorMapModeKey := (colorMapModeKey , image depth printString) asSymbol.
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5266
    ^ colorMapModeKey
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5267
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5268
    "Created: / 06-04-2017 / 13:19:19 / cg"
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5269
!
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5270
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5271
findColorMapMode
899
43b744c647ba comment grammar
tz
parents: 898
diff changeset
  5272
    "finds the colorMapMode for a new image"
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5273
2446
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5274
    |image newListOfColors colorMapModeKey drawColor1 drawColor2 someOrAllUsedColors|
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  5275
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  5276
    image := self image.
3433
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5277
    (colorMapModeKey := self colorMapModeFromImage:image) isNil ifTrue:[^ self].
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  5278
1967
c95484b7da49 some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1966
diff changeset
  5279
    self colorMapMode setValue:colorMapModeKey.
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5280
3359
258a64461215 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3357
diff changeset
  5281
    image photometric == #palette ifTrue:[
258a64461215 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3357
diff changeset
  5282
        image colorMap isNil ifTrue:[
258a64461215 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3357
diff changeset
  5283
            image depth > 16 ifTrue:[
258a64461215 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3357
diff changeset
  5284
                image photometric:#rgb
258a64461215 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3357
diff changeset
  5285
            ].
258a64461215 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3357
diff changeset
  5286
        ].
258a64461215 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3357
diff changeset
  5287
    ].
1928
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5288
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5289
    image depth > 12 ifTrue:[
2447
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5290
        newListOfColors := OrderedCollection new.
2870
0f130285be97 changed:
Claus Gittinger <cg@exept.de>
parents: 2866
diff changeset
  5291
        (image depth > 16 or:[image colorMap isEmptyOrNil]) ifTrue:[
1927
c5068006116d colors of deep images
Claus Gittinger <cg@exept.de>
parents: 1926
diff changeset
  5292
            someOrAllUsedColors := image usedColorsMax:10000.
2054
56352366d94a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2044
diff changeset
  5293
            someOrAllUsedColors notNil ifTrue:[
56352366d94a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2044
diff changeset
  5294
                someOrAllUsedColors := someOrAllUsedColors asArray.
56352366d94a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2044
diff changeset
  5295
                someOrAllUsedColors sort:self sortBlockForColors.
2446
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5296
                newListOfColors addAll:someOrAllUsedColors.
2054
56352366d94a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2044
diff changeset
  5297
                "/ listOfColors add:Color black; add:Color white.
3317
88b892a4012d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3281
diff changeset
  5298
            ].
88b892a4012d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3281
diff changeset
  5299
            image mask notNil ifTrue:[
88b892a4012d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3281
diff changeset
  5300
                newListOfColors := (Array with:(Color noColor)),newListOfColors.
88b892a4012d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3281
diff changeset
  5301
            ].
1904
46a0b109cb47 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1900
diff changeset
  5302
        ] ifFalse:[
2446
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5303
            newListOfColors addAll:(image colorMap).
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5304
        ].
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5305
    ] ifFalse:[
2447
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5306
        newListOfColors := OrderedCollection withAll:(self listOfColors).
2446
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5307
        newListOfColors isEmpty ifTrue:[   
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5308
            self colorMapMode: colorMapMode value.
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5309
            image := self image.
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5310
        ].                               
3317
88b892a4012d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3281
diff changeset
  5311
        "/ image mask notNil ifTrue:[
88b892a4012d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3281
diff changeset
  5312
        "/     newListOfColors := (Array with:(Color noColor)),newListOfColors.
88b892a4012d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3281
diff changeset
  5313
        "/ ].
2054
56352366d94a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2044
diff changeset
  5314
    ].  
2446
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5315
    newListOfColors notEmptyOrNil ifTrue:[
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5316
        drawColor1 := newListOfColors at:1.
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5317
        drawColor2 := newListOfColors at:2 ifAbsent:drawColor1.
2054
56352366d94a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2044
diff changeset
  5318
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5319
        self hasTransparentColorInColorList ifTrue: [             
3367
033c21371bea #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 3359
diff changeset
  5320
            (newListOfColors includes:(Color colorId:0)) ifFalse:[
2446
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5321
                newListOfColors addFirst:(Color colorId:0).
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5322
                drawColor1 := newListOfColors at:2. 
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5323
                drawColor2 := newListOfColors at:3 ifAbsent:drawColor1.
2054
56352366d94a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2044
diff changeset
  5324
            ]
56352366d94a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2044
diff changeset
  5325
        ].
2446
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5326
"/        imageEditView drawingColors:(Array with: drawColor1 with: drawColor2).
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5327
"/        self selectionOfColor 
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5328
"/            setValue: 0;
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5329
"/            value: (listOfColors indexOf: imageEditView selectedColor).
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5330
    ].
2447
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5331
    self listOfColors asOrderedCollection ~= newListOfColors ifTrue:[
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5332
        self listOfColors contents:newListOfColors.
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5333
    ].
2870
0f130285be97 changed:
Claus Gittinger <cg@exept.de>
parents: 2866
diff changeset
  5334
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5335
    "Modified: / 05-09-2017 / 09:03:31 / cg"
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5336
!
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5337
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5338
selectedColorsChanged
3408
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  5339
    |colorIndices selectedIndex|
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  5340
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  5341
    (colorIndices := self selectedColors value) size == 1 ifTrue:[        
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  5342
        "/ a single color selected
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  5343
        selectedIndex := colorIndices first
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  5344
    ].    
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  5345
    self selectionOfColor value:selectedIndex
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  5346
86d2e0cd4970 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3407
diff changeset
  5347
    "Modified: / 17-02-2017 / 14:40:33 / cg"
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5348
!
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5349
942
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5350
update:something with:aParameter from:changedObject
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5351
    |clrIndex image imagePreView clr changedColor cMap|
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5352
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5353
    image := self image.
2042
963042f2c474 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2016
diff changeset
  5354
    imagePreView := self imagePreView.
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5355
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5356
    changedObject == self tileModeHolder ifTrue:[
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  5357
        image isNil ifTrue:[
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  5358
            ^ self
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  5359
        ].
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  5360
        imagePreView
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5361
            tileMode:(changedObject value) tileOffset:(image extent);
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  5362
            clear;
1764
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  5363
            invalidate.
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  5364
        ^ self
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  5365
    ].
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  5366
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  5367
    changedObject == self previewBackgroundColorHolder ifTrue:[
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  5368
        clr := changedObject value isNil
1764
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  5369
                    ifTrue:[imageEditView viewBackground]
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  5370
                    ifFalse:[Color perform:changedObject value].
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  5371
        imagePreView
1764
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  5372
            viewBackground:clr;
3493
4396fb652bd7 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3492
diff changeset
  5373
            clear;
1764
7e9b804fd2d9 changeable preview background (to see effect of transpaent pixels)
Claus Gittinger <cg@exept.de>
parents: 1762
diff changeset
  5374
            invalidate.
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5375
        ^ self
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5376
    ].
3489
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5377
    changedObject == self previewMagnificationHolder ifTrue:[
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  5378
        imagePreView
3489
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5379
            magnificationFactor:(self previewMagnificationHolder value);
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  5380
            clear;
3493
4396fb652bd7 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3492
diff changeset
  5381
            invalidate.
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  5382
        ^ self
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  5383
    ].
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  5384
945
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5385
    changedObject == self listOfColors ifTrue:[
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5386
        something == #at: ifTrue:[
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5387
            "/ colormap entry changed at aParameter
960
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  5388
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  5389
            clrIndex := aParameter.
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5390
            (self hasTransparentColorInColorList) ifTrue:[
960
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  5391
                clrIndex := clrIndex - 1.
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  5392
            ].
1928
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5393
            changedColor := changedObject at:aParameter.
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5394
            cMap := image colorMap.
3407
2e0024e012e9 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3405
diff changeset
  5395
            (cMap notNil and:[cMap isFixedPalette not]) ifTrue:[
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5396
                image colorMap at:clrIndex put:changedColor.
1928
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5397
                self colorMapChanged.
3430
9b5190f88556 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3427
diff changeset
  5398
            ] ifFalse:[
9b5190f88556 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3427
diff changeset
  5399
                drawingColormap notNil ifTrue:[
9b5190f88556 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3427
diff changeset
  5400
                    drawingColormap size < clrIndex ifTrue:[
9b5190f88556 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3427
diff changeset
  5401
                        |newDrawingColormap|
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  5402
3430
9b5190f88556 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3427
diff changeset
  5403
                        newDrawingColormap := drawingColormap species new:clrIndex.
9b5190f88556 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3427
diff changeset
  5404
                        newDrawingColormap replaceFrom:1 with:drawingColormap.
9b5190f88556 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3427
diff changeset
  5405
                        drawingColormap := newDrawingColormap.
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  5406
                    ].
3430
9b5190f88556 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3427
diff changeset
  5407
                    drawingColormap at:clrIndex put:changedColor.
9b5190f88556 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3427
diff changeset
  5408
                ].
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  5409
            ].
945
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5410
            ^ self
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5411
        ].
1896
ab2b45d8ccc8 colorMap fixes
penk
parents: 1889
diff changeset
  5412
        ^ self
945
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5413
    ].
1124
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  5414
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  5415
    changedObject == imageEditView undoImages ifTrue:[
1987
3889bd6912fb valueOf* methods renamed
Claus Gittinger <cg@exept.de>
parents: 1985
diff changeset
  5416
        self canUndoHolder value:(changedObject notEmpty).
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  5417
        ^ self
1124
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  5418
    ].
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  5419
1345
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5420
    changedObject == imageEditView ifTrue:[
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5421
        something == #imageColors ifTrue:[
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5422
            self updateListOfColorsAndColormapMode.
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  5423
            ^ self
1345
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5424
        ].
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5425
        something == #image ifTrue:[
2812
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5426
            self updateAfterImageChange.
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5427
            imagePreView image:image scroll:false.
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5428
            self updateListOfColorsAndColormapMode.
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5429
            self tileModeHolder value ifTrue:[
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5430
                imagePreView tileMode:true tileOffset:(image extent).
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5431
            ].
3460
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  5432
            self updateInfoLabel.
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  5433
            ^ self
1345
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5434
        ].
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5435
        something == #subImageIn ifTrue:[
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5436
            imagePreView image ~~ image ifTrue:[
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  5437
                self error:'internal error' mayProceed:true.
1406
6de5c78f5bcd checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1405
diff changeset
  5438
            ].
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5439
            self tileModeHolder value ifTrue:[
2042
963042f2c474 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2016
diff changeset
  5440
                imagePreView invalidate.
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5441
            ] ifFalse:[
2042
963042f2c474 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2016
diff changeset
  5442
                imagePreView invalidate:aParameter.
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  5443
            ].
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  5444
            ^ self
1345
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5445
        ].
1491
4249a6a1b252 pick with SHIFT-click in the mag-view
Claus Gittinger <cg@exept.de>
parents: 1490
diff changeset
  5446
        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
  5447
            (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
  5448
                "/ no color/mask */
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  5449
                "/ self halt.
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5450
                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
  5451
            ] ifFalse:[
f04fe34d10ac do not cover selected color (by arrow-image) in colorMap-DSV
Claus Gittinger <cg@exept.de>
parents: 1820
diff changeset
  5452
                clrIndex := self listOfColors indexOf:aParameter.
1491
4249a6a1b252 pick with SHIFT-click in the mag-view
Claus Gittinger <cg@exept.de>
parents: 1490
diff changeset
  5453
            ].
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5454
            self selectedColors value:{clrIndex}. "/ selectionOfColor value:clrIndex.
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  5455
            ^ self
1491
4249a6a1b252 pick with SHIFT-click in the mag-view
Claus Gittinger <cg@exept.de>
parents: 1490
diff changeset
  5456
        ].
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  5457
        ^ self
1345
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5458
    ].
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5459
1880
8a11bb0a86e6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1879
diff changeset
  5460
    changedObject == imageEditView modifiedHolder ifTrue:[
8a11bb0a86e6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1879
diff changeset
  5461
        "/ self halt:'to be implemented'.
8a11bb0a86e6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1879
diff changeset
  5462
        ^ self
8a11bb0a86e6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1879
diff changeset
  5463
    ].
8a11bb0a86e6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1879
diff changeset
  5464
1345
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5465
    changedObject == imageEditView image ifTrue:[
2042
963042f2c474 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2016
diff changeset
  5466
        "/ self halt:'to be implemented'.
2812
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5467
        self updateAfterImageChange.
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  5468
        ^ self
1345
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5469
    ].
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  5470
942
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5471
    super update:something with:aParameter from:changedObject
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5472
3493
4396fb652bd7 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3492
diff changeset
  5473
    "Modified: / 13-09-2017 / 18:01:26 / cg"
2812
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5474
!
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5475
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5476
updateAfterImageChange
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5477
    |img|
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5478
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5479
    (img := self image) notNil ifTrue:[
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5480
        img := img onDevice:device.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5481
        self updateColorsFromImage:img.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5482
        self findColorMapMode.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5483
        self updateLabelsAndHistory.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5484
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5485
        imageSeqNr isNil ifTrue:[
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5486
            imageSeqNr := 1
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5487
        ].
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5488
        self imageHasImageSequenceHolder value:(self imageHasImageSequence).
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5489
        self imageHasNextImageHolder value:(self imageHasNextImage).
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5490
        self imageHasPreviousImageHolder value:(self imageHasPreviousImage).
3561
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  5491
        self alphaVisibleHolder value:(img hasAlphaChannel).
2812
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5492
    ] ifFalse:[
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5493
        self updateForNoImage
3561
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  5494
    ].
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  5495
    self window label:(self constructWindowTitle).
2812
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5496
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5497
    "Modified: / 05-09-2017 / 00:44:10 / cg"
3561
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  5498
    "Modified: / 27-05-2018 / 11:32:01 / Claus Gittinger"
942
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5499
!
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5500
1900
41ba86fb1087 cleanup
Claus Gittinger <cg@exept.de>
parents: 1899
diff changeset
  5501
updateColorsFromImage:image
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5502
    |colors depth|
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5503
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5504
    depth := image depth.
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5505
    
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5506
    depth > 16 ifTrue:[
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5507
        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
  5508
    ] ifFalse:[
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5509
        ((image photometric == #blackIs0)
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5510
        or:[ image photometric == #whiteIs0 ]) ifTrue:[
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5511
            depth <= 8 ifTrue:[
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5512
                colors := 1 to:(1 << depth) collect:[:i | image colorFromValue:i-1]
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5513
            ].
2870
0f130285be97 changed:
Claus Gittinger <cg@exept.de>
parents: 2866
diff changeset
  5514
        ].
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5515
        colors isNil ifTrue:[
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5516
            colors := image colorMap.
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5517
            colors isNil ifTrue:[
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5518
                Error handle:[:ex |
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5519
                    colors := OrderedCollection new.
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5520
                ] do:[
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5521
                    colors := image usedColors asSet.
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5522
                ].
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5523
            ].
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5524
        ].
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5525
    ].    
1904
46a0b109cb47 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1900
diff changeset
  5526
    self listOfColors contents:(colors asOrderedCollection).
2870
0f130285be97 changed:
Claus Gittinger <cg@exept.de>
parents: 2866
diff changeset
  5527
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  5528
    "Modified: / 31-08-2017 / 18:54:53 / cg"
1900
41ba86fb1087 cleanup
Claus Gittinger <cg@exept.de>
parents: 1899
diff changeset
  5529
!
41ba86fb1087 cleanup
Claus Gittinger <cg@exept.de>
parents: 1899
diff changeset
  5530
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  5531
updateForNoImage
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5532
    "updates channels and view, if image is loaded"
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5533
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  5534
    self imageIsLoadedHolder value: false.
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5535
    self listOfColors removeAll.
2812
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5536
    self imagePreView image: nil.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  5537
    self imageHasImageSequenceHolder value:false.
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5538
    self alphaVisibleHolder value:false.
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5539
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5540
    "Modified: / 05-09-2017 / 00:44:20 / cg"
3561
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  5541
    "Modified: / 27-05-2018 / 11:32:06 / Claus Gittinger"
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5542
!
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5543
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5544
updateLabelsAndHistory
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5545
    "updates labels and history, if something has changed"
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5546
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  5547
    |image rsrcClass rsrcSelector imgFile|
1910
4ca9f4b322c9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1906
diff changeset
  5548
4ca9f4b322c9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1906
diff changeset
  5549
    image := self image.
4ca9f4b322c9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1906
diff changeset
  5550
2792
f056aa5d29a7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2791
diff changeset
  5551
    self imageIsLoadedHolder value: image notNil.
1910
4ca9f4b322c9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1906
diff changeset
  5552
    image isNil ifTrue: [^nil].
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5553
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5554
    self updateInfoLabel.
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5555
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  5556
    ((rsrcClass := imageEditView resourceClass) notNil 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  5557
    and:[ (rsrcSelector := imageEditView resourceSelector) notNil ]) ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  5558
        self addHistoryEntryForClass:rsrcClass selector:rsrcSelector.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  5559
    ] ifFalse:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  5560
        (imgFile := image fileName) notNil ifTrue: [
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  5561
            self addHistoryEntryForFile:imgFile.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  5562
        ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  5563
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  5564
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  5565
    "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
  5566
!
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5567
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5568
updateListOfColorsAndColormapMode
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5569
    |listOfColors selectedColor colorMap image|
2446
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5570
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5571
    selectedColor := self selectedColorOrNil.
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5572
    listOfColors := self listOfColors.
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5573
    
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5574
    image := self image.
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5575
    image isNil ifTrue:[
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5576
        listOfColors removeAll.
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5577
    ] ifFalse:[
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5578
        colorMap := image colorMap.
2447
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5579
        colorMap notNil ifTrue:[
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5580
            (colorMap size <= 4096) ifTrue:[
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5581
                (image mask notNil or:[image hasAlphaChannel]) ifTrue:[
2447
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5582
                    colorMap := (Array with:(Color noColor)),colorMap.
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5583
                ].
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5584
                listOfColors contents:colorMap.
2447
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5585
            ] ifFalse:[
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5586
                listOfColors removeAll.
2447
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5587
                colorMap isFixedPalette ifTrue:[
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5588
                    image colorMap:nil.
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5589
                    image photometric:#rgb.
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5590
                    image samplesPerPixel:3.
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5591
                    
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5592
                    image bitsPerSample:(Array 
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5593
                                            with:(colorMap bitsRed)
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5594
                                            with:(colorMap bitsGreen)
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5595
                                            with:(colorMap bitsBlue)).
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5596
                ].
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  5597
            ]
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5598
        ].
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5599
    ].
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  5600
    self findColorMapMode.
2446
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5601
    selectedColor notNil ifTrue:[
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5602
        self selectColor:selectedColor.
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  5603
    ].
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5604
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  5605
    "Modified: / 05-09-2017 / 08:25:14 / cg"
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5606
! !
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5607
915
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  5608
!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
  5609
1951
9ad40a628278 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1949
diff changeset
  5610
atColor:anOldColor put:newColor
1952
73a141744891 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1951
diff changeset
  5611
    "a color changed to a new color"
73a141744891 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1951
diff changeset
  5612
1930
7b5ec69e6526 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1929
diff changeset
  5613
    |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
  5614
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5615
    list  := self listOfColors.
1951
9ad40a628278 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1949
diff changeset
  5616
    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
  5617
1930
7b5ec69e6526 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1929
diff changeset
  5618
    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
  5619
    index ~~ 0 ifTrue:[
1928
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5620
        oldColor := list at:index.
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5621
        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
  5622
    ] ifFalse:[
1740
5c0b60e76676 Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 1734
diff changeset
  5623
        self error:'internal error' mayProceed:true.
1928
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5624
        list add:newColor
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5625
    ].
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5626
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5627
    image := self image.
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5628
    (image colorMap isNil 
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5629
    and:[drawingColormap isNil]) ifTrue:[
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5630
        oldColor notNil ifTrue:[
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5631
            imageEditView makeUndo.
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5632
            newImage := image copy.
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5633
            newImage
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5634
                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
  5635
                do:[:x :y :clr |
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5636
                    |newClr|
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5637
1951
9ad40a628278 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1949
diff changeset
  5638
                    newClr := (clr = oldColor) ifTrue:[newColor] ifFalse:[clr].
1928
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5639
                    newImage colorAtX:x y:y put:newClr
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5640
                ].
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5641
            imageEditView image:newImage.
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5642
            imageEditView setModified.
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5643
            self updateImage.
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5644
            self updateImagePreView.
1930
7b5ec69e6526 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1929
diff changeset
  5645
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  5646
            self selectedColors value:{oldSel}.
1930
7b5ec69e6526 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1929
diff changeset
  5647
            imageEditView selectedColorIndex:oldSel.
7b5ec69e6526 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1929
diff changeset
  5648
            imageEditView selectedColor:(self listOfColors at:oldSel).
1928
06c3681a79b3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1927
diff changeset
  5649
        ]
1611
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5650
    ].
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5651
!
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5652
942
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5653
blueAtColor:aColor put:newBlue
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5654
    "helper used to return a new row element, when blue is changed"
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5655
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5656
    |byte|
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5657
1611
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5658
    aColor isNil ifTrue:[^ self].       "/ mask cannot be changed
942
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5659
    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
  5660
    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
  5661
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5662
    self atColor:aColor
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5663
             put:(Color redByte:(aColor redByte) greenByte:(aColor greenByte) blueByte:byte).
942
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5664
!
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5665
915
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  5666
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
  5667
    "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
  5668
930
4cf126b710b3 handle errors when grabbing
Claus Gittinger <cg@exept.de>
parents: 929
diff changeset
  5669
    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
  5670
    ^ 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
  5671
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  5672
    "Created: / 26.7.1998 / 12:30:35 / cg"
930
4cf126b710b3 handle errors when grabbing
Claus Gittinger <cg@exept.de>
parents: 929
diff changeset
  5673
    "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
  5674
!
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  5675
945
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5676
canSelectBlueInColor:aColor
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5677
    ^ aColor blueByte notNil
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5678
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5679
    "Created: / 7.8.1998 / 22:50:34 / cg"
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5680
    "Modified: / 7.8.1998 / 22:52:57 / cg"
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5681
!
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5682
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5683
canSelectGreenInColor:aColor
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5684
    ^ aColor greenByte notNil
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5685
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5686
    "Created: / 7.8.1998 / 22:50:22 / cg"
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5687
    "Modified: / 7.8.1998 / 22:52:46 / cg"
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5688
!
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5689
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5690
canSelectRedInColor:aColor
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5691
    ^ aColor redByte notNil
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5692
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5693
    "Created: / 7.8.1998 / 22:50:00 / cg"
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5694
    "Modified: / 7.8.1998 / 22:51:03 / cg"
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5695
!
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  5696
942
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5697
greenAtColor:aColor put:newGreen
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5698
    "helper used to return a new row element, when green is changed"
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5699
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5700
    |byte|
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5701
1611
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5702
    aColor isNil ifTrue:[^ self].       "/ mask cannot be changed
942
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5703
    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
  5704
    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
  5705
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5706
    self atColor:aColor
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5707
             put:(Color redByte:(aColor redByte) greenByte:byte blueByte:(aColor blueByte)).
942
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5708
!
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5709
915
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  5710
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
  5711
    "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
  5712
930
4cf126b710b3 handle errors when grabbing
Claus Gittinger <cg@exept.de>
parents: 929
diff changeset
  5713
    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
  5714
    ^ 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
  5715
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  5716
    "Created: / 26.7.1998 / 12:30:29 / cg"
930
4cf126b710b3 handle errors when grabbing
Claus Gittinger <cg@exept.de>
parents: 929
diff changeset
  5717
    "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
  5718
!
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  5719
942
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5720
redAtColor:aColor put:newRed
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5721
    "helper used to return a new row element, when red is changed"
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5722
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5723
    |byte|
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5724
1611
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5725
    aColor isNil ifTrue:[^ self].       "/ mask cannot be changed
942
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5726
    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
  5727
    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
  5728
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5729
    self atColor:aColor
2f23751929d6 behavior of dataset changed if a write operation is invoked by a column adaptor
ca
parents: 1603
diff changeset
  5730
             put:(Color redByte:byte greenByte:(aColor greenByte) blueByte:(aColor blueByte)).
942
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5731
!
4b47d3d652ad checkin from browser
tz
parents: 941
diff changeset
  5732
915
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  5733
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
  5734
    "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
  5735
930
4cf126b710b3 handle errors when grabbing
Claus Gittinger <cg@exept.de>
parents: 929
diff changeset
  5736
    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
  5737
    ^ 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
  5738
930
4cf126b710b3 handle errors when grabbing
Claus Gittinger <cg@exept.de>
parents: 929
diff changeset
  5739
    "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
  5740
!
49ad9f552d64 oops - fixed bg-color access in dataset
Claus Gittinger <cg@exept.de>
parents: 1446
diff changeset
  5741
2712
cddda688a9f2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2711
diff changeset
  5742
theColorItself:aColor
cddda688a9f2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2711
diff changeset
  5743
    "an accessor for the table-column"
cddda688a9f2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2711
diff changeset
  5744
1449
49ad9f552d64 oops - fixed bg-color access in dataset
Claus Gittinger <cg@exept.de>
parents: 1446
diff changeset
  5745
    ^ 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
  5746
! !
99f8e19aab3a better use a columnAdaptor to fetch r/g/b values from a color.
Claus Gittinger <cg@exept.de>
parents: 914
diff changeset
  5747
2663
Claus Gittinger <cg@exept.de>
parents: 2653
diff changeset
  5748
!ImageEditor methodsFor:'defaults'!
Claus Gittinger <cg@exept.de>
parents: 2653
diff changeset
  5749
Claus Gittinger <cg@exept.de>
parents: 2653
diff changeset
  5750
aboutIcon
Claus Gittinger <cg@exept.de>
parents: 2653
diff changeset
  5751
    ^ self class defaultIcon
Claus Gittinger <cg@exept.de>
parents: 2653
diff changeset
  5752
! !
Claus Gittinger <cg@exept.de>
parents: 2653
diff changeset
  5753
2339
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5754
!ImageEditor methodsFor:'drag & drop'!
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5755
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5756
canDropObjects:aCollectionOfDropObjects in:aWidget
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5757
    ^ (aCollectionOfDropObjects size == 1) 
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5758
      and:[ aCollectionOfDropObjects 
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5759
                contains:[:dropObject | dropObject isFileObject]]
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5760
!
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5761
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5762
dropObjects:aCollectionOfDropObjects in:aWidget at:position
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5763
    |dropObject|
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5764
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5765
    dropObject := aCollectionOfDropObjects first.
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5766
    dropObject isFileObject ifTrue:[
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5767
        self loadFromFile:dropObject asFilename.
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5768
    ]
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5769
! !
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5770
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5771
!ImageEditor methodsFor:'event handling'!
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5772
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5773
processEvent:anEvent
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5774
    "Return true, if I have eaten the event"
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5775
2945
facf3c7b0e31 changed: #processEvent:
Claus Gittinger <cg@exept.de>
parents: 2932
diff changeset
  5776
    <resource: #keyboard (#Paste #Copy )>
facf3c7b0e31 changed: #processEvent:
Claus Gittinger <cg@exept.de>
parents: 2932
diff changeset
  5777
2841
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5778
    |view focusView p transformation|
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5779
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5780
    view := anEvent view.
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5781
    view notNil ifTrue:[
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5782
        
2841
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5783
        view == self imagePreView ifTrue:[
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5784
            ((anEvent isButtonPressEvent and:[ anEvent button == 1 ])
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5785
            or:[ anEvent isButtonMotionEvent and:[ anEvent hasButton1 ]])  ifTrue:[
3489
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5786
                p := anEvent x @ anEvent y.                
2841
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5787
                (transformation := view transformation) notNil ifTrue:[
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5788
                    p := transformation applyInverseTo:p.
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5789
                ].
3489
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5790
                p := p / self previewMagnificationHolder value.
2841
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5791
                self imageEditView scrollToMakeVisible:p.    
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5792
                ^ true.
2546
b69247f503b8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2539
diff changeset
  5793
            ].
2841
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5794
        ].
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5795
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5796
        anEvent isKeyPressEvent ifTrue:[
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5797
            focusView := view windowGroup focusView ? view.
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5798
            (focusView isComponentOf:(builder componentAt:#colorDataSetView)) ifTrue:[
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5799
                anEvent key == #Paste ifTrue:[
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5800
                    self pasteColorIntoColormap.
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5801
                    ^ true.
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5802
                ].
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5803
                anEvent key == #Copy ifTrue:[
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5804
                    self copyColorFromColormap.
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5805
                    ^ true.
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5806
                ].
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5807
            ].
2339
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5808
        ].
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5809
    ].
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5810
    ^ false.
2841
5f247fa01174 changed:
Claus Gittinger <cg@exept.de>
parents: 2837
diff changeset
  5811
3489
ed003c06c33b #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3488
diff changeset
  5812
    "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
  5813
! !
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5814
672
738210a2fa06 revised version
tz
parents: 651
diff changeset
  5815
!ImageEditor methodsFor:'help'!
738210a2fa06 revised version
tz
parents: 651
diff changeset
  5816
3561
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  5817
constructWindowTitle
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  5818
    |resourceClass resourceSelector img|
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  5819
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  5820
    resourceClass := imageEditView resourceClass.
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  5821
    resourceClass notNil ifTrue:[
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  5822
        resourceSelector := imageEditView resourceSelector.
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  5823
        resourceSelector notNil ifTrue:[
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  5824
            ^ resources 
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  5825
                    string:(self modified 
3580
ab5cebe669d7 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3562
diff changeset
  5826
                            ifTrue:['ImageEditor (modified): %1 » %2']
ab5cebe669d7 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3562
diff changeset
  5827
                            ifFalse:['ImageEditor: %1 » %2'])
3561
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  5828
                    with:resourceClass name
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  5829
                    with:resourceSelector
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  5830
        ].
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  5831
    ].
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  5832
    
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  5833
    (img := imageEditView image) notNil ifTrue:[
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  5834
        img fileName notNil ifTrue:[
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  5835
            ^ resources 
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  5836
                    string:(self modified 
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  5837
                            ifTrue:['ImageEditor (modified): %1']
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  5838
                            ifFalse:['ImageEditor: %1'])
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  5839
                     with:(img fileName asFilename baseName).
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  5840
        ].    
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  5841
        ^ resources string:'ImageEditor: some image.'
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  5842
    ].    
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  5843
    ^ resources string:'ImageEditor: << no image >>.'
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  5844
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  5845
    "Created: / 27-05-2018 / 11:31:20 / Claus Gittinger"
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  5846
!
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  5847
672
738210a2fa06 revised version
tz
parents: 651
diff changeset
  5848
defaultInfoLabel
1969
f1763f6f4500 stripped down menu, if in browser
Claus Gittinger <cg@exept.de>
parents: 1967
diff changeset
  5849
    "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
  5850
     some widget with a help text."
672
738210a2fa06 revised version
tz
parents: 651
diff changeset
  5851
3465
510f01b982de #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3464
diff changeset
  5852
    |resourceClass resourceSelector img|
1376
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  5853
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  5854
    resourceClass := imageEditView resourceClass.
1965
1d2b7893ae89 some code cleanup (resourceClass was actually its name)
Claus Gittinger <cg@exept.de>
parents: 1962
diff changeset
  5855
    resourceClass notNil ifTrue:[
1969
f1763f6f4500 stripped down menu, if in browser
Claus Gittinger <cg@exept.de>
parents: 1967
diff changeset
  5856
        resourceSelector := imageEditView resourceSelector.
1966
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
  5857
        resourceSelector notNil ifTrue:[
3469
52837773925b #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3468
diff changeset
  5858
            ^ resources 
52837773925b #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3468
diff changeset
  5859
                    string:(self modified 
3580
ab5cebe669d7 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3562
diff changeset
  5860
                            ifTrue:['Image (modified) from: %1 » %2']
ab5cebe669d7 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3562
diff changeset
  5861
                            ifFalse:['Image from: %1 » %2'])
3469
52837773925b #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3468
diff changeset
  5862
                    with:resourceClass name
52837773925b #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3468
diff changeset
  5863
                    with:resourceSelector
1966
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
  5864
        ].
672
738210a2fa06 revised version
tz
parents: 651
diff changeset
  5865
    ].
3465
510f01b982de #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3464
diff changeset
  5866
    
510f01b982de #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3464
diff changeset
  5867
    (img := imageEditView image) notNil ifTrue:[
510f01b982de #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3464
diff changeset
  5868
        img fileName notNil ifTrue:[
3469
52837773925b #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3468
diff changeset
  5869
            ^ resources 
52837773925b #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3468
diff changeset
  5870
                    string:(self modified 
52837773925b #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3468
diff changeset
  5871
                            ifTrue:['Image (modified) from: %1']
52837773925b #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3468
diff changeset
  5872
                            ifFalse:['Image from: %1'])
52837773925b #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3468
diff changeset
  5873
                     with:(img fileName asFilename baseName).
3465
510f01b982de #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3464
diff changeset
  5874
        ].    
510f01b982de #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3464
diff changeset
  5875
    ].    
3380
0eb344c2fe3a #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3379
diff changeset
  5876
    ^ resources string:'No class and selector defined.'
3465
510f01b982de #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3464
diff changeset
  5877
3469
52837773925b #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3468
diff changeset
  5878
    "Modified: / 29-08-2017 / 19:47:25 / cg"
674
d49e23b768e6 unused method found + help file access added
tz
parents: 673
diff changeset
  5879
!
d49e23b768e6 unused method found + help file access added
tz
parents: 673
diff changeset
  5880
702
c9de7a9bc416 docu call changed
tz
parents: 694
diff changeset
  5881
openDocumentation
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5882
    "opens the documentation file of the Image Editor"
674
d49e23b768e6 unused method found + help file access added
tz
parents: 673
diff changeset
  5883
763
19b3e479e0b8 docu call
tz
parents: 756
diff changeset
  5884
    self openHTMLDocument: 'tools/uipainter/ImageEditor.html'
19b3e479e0b8 docu call
tz
parents: 756
diff changeset
  5885
672
738210a2fa06 revised version
tz
parents: 651
diff changeset
  5886
! !
738210a2fa06 revised version
tz
parents: 651
diff changeset
  5887
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5888
!ImageEditor methodsFor:'loading'!
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5889
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5890
loadFromClass:aClass andSelector:aSelector
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5891
    "loads an image from the method specified by class and selector"
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5892
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5893
    self assert:(aClass isNil or:[aClass isClass]).
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5894
2932
7f305ee14e98 changed: #loadFromClass:andSelector:
Claus Gittinger <cg@exept.de>
parents: 2893
diff changeset
  5895
    (aClass isNil or:[aSelector isNil]) ifTrue:[
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5896
        imageEditView resourceClass:aClass.
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5897
        imageEditView resourceSelector:aSelector.
1969
f1763f6f4500 stripped down menu, if in browser
Claus Gittinger <cg@exept.de>
parents: 1967
diff changeset
  5898
        imageEditView image:nil.
2006
ae6fe65e9f33 embedding as special editors
Claus Gittinger <cg@exept.de>
parents: 1998
diff changeset
  5899
        self clearModified.
1966
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
  5900
        ^ self.
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
  5901
    ].
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
  5902
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5903
    (imageEditView loadFromClass:aClass andSelector:aSelector) notNil ifTrue:[
1966
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
  5904
        self updateAfterImageChange.
2006
ae6fe65e9f33 embedding as special editors
Claus Gittinger <cg@exept.de>
parents: 1998
diff changeset
  5905
        self clearModified.
1966
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
  5906
    ]
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5907
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5908
    "Modified: / 16-03-1999 / 21:44:41 / cg"
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5909
    "Modified (comment): / 16-02-2017 / 10:22:51 / cg"
1966
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
  5910
!
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
  5911
2339
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  5912
loadFromFile:aFileName
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5913
    "loads an image from aFileName and sets up color map list and other info labels"
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5914
980
bd21079f40e1 show waitCursor while loading from file.
Claus Gittinger <cg@exept.de>
parents: 976
diff changeset
  5915
    self withCursor:Cursor wait do:[
bd21079f40e1 show waitCursor while loading from file.
Claus Gittinger <cg@exept.de>
parents: 976
diff changeset
  5916
        (imageEditView loadFromFile: aFileName) notNil ifTrue:[
1966
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
  5917
            self updateAfterImageChange
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5918
        ]
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5919
    ]
960
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  5920
1057
36f9d47e1249 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1054
diff changeset
  5921
    "Modified: / 16.3.1999 / 21:44:26 / cg"
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5922
!
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5923
960
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  5924
loadFromImage:anImage
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5925
    "loads an image from anImage and sets up color map list and other info labels"
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5926
1376
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  5927
    |img|
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  5928
1057
36f9d47e1249 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1054
diff changeset
  5929
    anImage notNil ifTrue:[    
1376
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  5930
        img := anImage onDevice:device.
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  5931
    ].
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  5932
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  5933
    imageEditView image:img.
1799
e605f0af928a clear modified flag when an image is loaded
Claus Gittinger <cg@exept.de>
parents: 1796
diff changeset
  5934
    imageEditView clearModified.
1376
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  5935
1966
274324851cfd some code cleanup
Claus Gittinger <cg@exept.de>
parents: 1965
diff changeset
  5936
    self updateAfterImageChange.
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5937
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5938
    "Modified: / 16-03-1999 / 21:43:56 / cg"
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  5939
    "Modified (comment): / 16-02-2017 / 10:21:47 / cg"
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5940
!
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5941
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5942
loadFromOrPrepareForClass: aClass andSelector: aSelector
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5943
    "loads an image by evaluating aMessage;
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5944
     if no image could extract from aMessage; do set the class and the selector from 
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5945
     the aMessage for a saving at the end of editing"
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5946
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5947
    (imageEditView loadFromClass:aClass andSelector:aSelector) notNil ifTrue: [
1900
41ba86fb1087 cleanup
Claus Gittinger <cg@exept.de>
parents: 1899
diff changeset
  5948
        self updateColorsFromImage:self image.
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5949
        self findColorMapMode.
1376
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  5950
    ] ifFalse: [
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5951
        imageEditView resourceClass: aClass.
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  5952
        imageEditView resourceSelector:aSelector.
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5953
    ].
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5954
    self updateLabelsAndHistory.
1057
36f9d47e1249 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1054
diff changeset
  5955
36f9d47e1249 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1054
diff changeset
  5956
    "Modified: / 16.3.1999 / 21:45:07 / cg"
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5957
! !
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  5958
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5959
!ImageEditor methodsFor:'menu aspects'!
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5960
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5961
canDrawCirclesHolder
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5962
    ^ self imageIsLoadedAndNotReadonlyHolder
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5963
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5964
    "Created: / 16-02-2017 / 01:41:31 / cg"
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5965
!
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5966
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5967
canDrawPointsHolder
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5968
    ^ self imageIsLoadedAndNotReadonlyHolder
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5969
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5970
    "Created: / 16-02-2017 / 01:39:37 / cg"
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5971
!
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5972
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5973
canDrawRectsHolder
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5974
    ^ self imageIsLoadedAndNotReadonlyHolder
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5975
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5976
    "Created: / 16-02-2017 / 01:40:17 / cg"
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5977
!
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5978
3435
e3e1eea25472 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3433
diff changeset
  5979
canFillCircleHolder
e3e1eea25472 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3433
diff changeset
  5980
    ^ self imageIsLoadedAndNotReadonlyHolder
e3e1eea25472 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3433
diff changeset
  5981
e3e1eea25472 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3433
diff changeset
  5982
    "Created: / 10-04-2017 / 08:46:00 / cg"
e3e1eea25472 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3433
diff changeset
  5983
!
e3e1eea25472 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3433
diff changeset
  5984
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5985
canFillRectsHolder
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5986
    ^ self imageIsLoadedAndNotReadonlyHolder
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5987
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5988
    "Created: / 16-02-2017 / 01:40:21 / cg"
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5989
!
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5990
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5991
canFloodFillHolder
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5992
    ^ self imageIsLoadedAndNotReadonlyHolder
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5993
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5994
    "Created: / 16-02-2017 / 01:41:33 / cg"
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5995
!
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5996
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5997
canSprayHolder
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5998
    ^ self imageIsLoadedAndNotReadonlyHolder
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  5999
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  6000
    "Created: / 16-02-2017 / 01:44:47 / cg"
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6001
!
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6002
3475
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  6003
colorMapMenuHolder
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  6004
    ^ [ self class colorMapMenu ]
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  6005
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  6006
    "Created: / 31-08-2017 / 18:47:17 / cg"
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  6007
!
7eafbd0cad40 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3472
diff changeset
  6008
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6009
imageIsLoadedAndAllowedToChangeImageDimension
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6010
    "returns whether an image is loaded as value holder"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6011
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6012
    ^ [ 
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6013
        self imageIsLoadedHolder value
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6014
        and:[ self allowedToChangeImageDimension ] 
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6015
      ]
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6016
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6017
    "Created: / 16-02-2017 / 01:58:41 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6018
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6019
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6020
imageIsLoadedAndAllowedToChangeImageDimensionAndDepth
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6021
    "returns whether an image is loaded as value holder"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6022
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6023
    ^ [ 
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6024
        self imageIsLoadedHolder value
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6025
        and:[ self allowedToChangeImageDimensionAndDepth ] 
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6026
      ]
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6027
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6028
    "Modified: / 04-07-2010 / 10:15:43 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6029
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6030
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6031
imageIsLoadedAndAllowedToFlipHolder
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6032
    ^ self imageIsLoadedAndNotReadonlyHolder
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6033
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6034
    "Created: / 16-02-2017 / 01:57:02 / cg"
3413
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6035
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6036
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6037
imageIsLoadedAndClassDefined
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6038
    "returns whether an image is loaded as value holder"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6039
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6040
    ^ [self hasClassAndSelectorDefinedHolder value
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6041
       and:[self imageIsLoadedHolder value]]
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6042
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6043
    "Created: / 31-07-1998 / 02:04:18 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6044
    "Modified: / 04-07-2010 / 10:15:48 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6045
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6046
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6047
imageIsLoadedAndNotReadonlyHolder
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6048
    "returns whether an image is loaded and editable as value holder"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6049
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6050
    ^ BlockValue
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6051
        with:[:loaded | loaded and:[ self readOnly not ]]
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6052
        argument:(self imageIsLoadedHolder)
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6053
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6054
    "Modified: / 16-02-2017 / 12:11:31 / cg"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6055
!
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6056
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6057
imageIsLoadedHolder
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6058
    "returns whether an image is loaded as value holder"
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6059
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6060
    |holder|
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6061
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6062
    (holder := builder bindingAt:#imageIsLoaded) isNil ifTrue:[
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6063
        builder aspectAt:#imageIsLoaded put:(holder :=  false asValue).
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6064
    ].
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6065
    ^ holder
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6066
52d0f1ff020d #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 3412
diff changeset
  6067
    "Created: / 04-07-2010 / 10:15:38 / cg"
3404
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  6068
! !
cd90f4aece50 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3401
diff changeset
  6069
3374
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  6070
!ImageEditor methodsFor:'menu item visibility'!
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  6071
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  6072
isNotStandAloneAndMethodSaveAndLoadMenuItemsVisible
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  6073
    ^ self isNotStandAlone and:[ self methodSaveAndLoadMenuItemsVisible ]
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  6074
!
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  6075
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  6076
isStandAloneAndMethodSaveAndLoadMenuItemsVisible
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  6077
    ^ self isStandAlone and:[ self methodSaveAndLoadMenuItemsVisible ]
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  6078
!
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  6079
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  6080
methodSaveAndLoadMenuItemsVisible
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  6081
    ^ true
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  6082
!
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  6083
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  6084
modeMenuVisible
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  6085
    ^ true
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  6086
! !
2cb3e68941a8 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3370
diff changeset
  6087
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6088
!ImageEditor methodsFor:'menu modes'!
228524287573 intitial checkin
tz
parents:
diff changeset
  6089
975
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  6090
colorMapMode
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  6091
    "returns the colorMapMode"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6092
975
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  6093
    colorMapMode isNil ifTrue: [colorMapMode := '' asValue].
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6094
975
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  6095
    ^colorMapMode
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6096
!
228524287573 intitial checkin
tz
parents:
diff changeset
  6097
975
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  6098
editMode
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  6099
    "returns editMode"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6100
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6101
    editMode isNil ifTrue: [
975
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  6102
        editMode := #point asValue.
1329
a38c2e29d1fb use onChangeEvaluate:
Claus Gittinger <cg@exept.de>
parents: 1309
diff changeset
  6103
        editMode onChangeEvaluate:[imageEditView editMode:(editMode value)]
975
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  6104
    ].
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  6105
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  6106
    ^editMode
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6107
!
228524287573 intitial checkin
tz
parents:
diff changeset
  6108
975
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  6109
mouseKeyColorMode
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  6110
    "returns mouseKeyColorMode"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6111
1345
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  6112
    mouseKeyColorMode isNil ifTrue:[
975
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  6113
        mouseKeyColorMode := 1 asValue.
1345
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  6114
        mouseKeyColorMode onChangeEvaluate: [
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  6115
            imageEditView mouseKeyColorMode:mouseKeyColorMode value. 
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6116
            self selectedColors value:{ self listOfColors indexOf:imageEditView selectedColor }.
1345
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  6117
        ]
956
dc4df8952e82 check whether imageEditView is nil
ca
parents: 951
diff changeset
  6118
    ].
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6119
975
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  6120
    ^mouseKeyColorMode
1345
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  6121
218b7fcff239 de-uglified
Claus Gittinger <cg@exept.de>
parents: 1329
diff changeset
  6122
    "Modified: / 10.2.2000 / 23:16:42 / cg"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6123
! !
228524287573 intitial checkin
tz
parents:
diff changeset
  6124
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  6125
!ImageEditor methodsFor:'private'!
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  6126
3460
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  6127
askForDepthThenDo:aBlock
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  6128
    |oldDepth suggestion depth|
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  6129
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  6130
    oldDepth := self image depth.
3471
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  6131
    
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  6132
    suggestion := LastDepth notNil ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  6133
                    LastDepth
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  6134
                  ] ifFalse:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  6135
                    oldDepth > 8 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  6136
                        ifTrue:[8] 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  6137
                        ifFalse:[(oldDepth // 2 - 1) nextPowerOf2]
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  6138
                  ].
3460
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  6139
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  6140
    depth := Dialog request:'New depth ?' initialAnswer:suggestion asString.
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  6141
    depth isEmptyOrNil ifTrue:[^ self].
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  6142
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  6143
    depth := Number readFrom:depth onError:nil.
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  6144
    depth isNil ifTrue:[^ self].
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  6145
3471
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  6146
    LastDepth := depth.    
3460
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  6147
    aBlock value:depth
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  6148
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  6149
    "Created: / 24-08-2017 / 17:05:39 / cg"
3471
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  6150
    "Modified: / 30-08-2017 / 01:22:36 / cg"
3460
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  6151
!
5d1d7e85222c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3459
diff changeset
  6152
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6153
checkModified
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6154
    imageEditView modified value ifTrue:[
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6155
        (Dialog
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6156
            confirm:(resources string:'Image was not saved. Proceed anyway ?')
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6157
            yesLabel:(resources string:'Proceed')
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6158
            noLabel:(resources string:'Cancel')
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6159
            initialAnswer:false
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6160
        ) ifFalse: [^false].
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6161
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6162
        imageEditView clearModified.
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6163
    ].
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6164
    ^ true
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6165
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6166
    "Modified: / 29.7.1998 / 18:55:24 / cg"
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6167
!
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6168
3379
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  6169
clearModifiedAndRememberImageSaved
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  6170
    "called after a save-to-xxx operation"
3375
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
  6171
    
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
  6172
    self clearModified.
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
  6173
    savedImage := self image.
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
  6174
!
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
  6175
3379
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  6176
clearModifiedAndRememberImageSavedAsFile:file
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  6177
    "called after a save-to-file operation"
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  6178
    
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  6179
    self clearModifiedAndRememberImageSaved.
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  6180
    savedFile := file.
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  6181
!
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  6182
1960
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
  6183
pointFromString:aString
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
  6184
    |p s x y|
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
  6185
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
  6186
    p := Object readFromString:aString onError:nil.
1962
9166ba3ce7c3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1961
diff changeset
  6187
    p isPoint ifTrue:[^ p].
1960
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
  6188
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
  6189
    s := aString readStream.
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
  6190
    x := Number readFrom:s onError:nil.
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
  6191
    x notNil ifTrue:[
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
  6192
        s skipSeparators.
1962
9166ba3ce7c3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1961
diff changeset
  6193
        [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
  6194
        y := Number readFrom:s onError:nil.
1961
d9082e597adb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1960
diff changeset
  6195
        ^ x @ (y ? x)
1960
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
  6196
    ].
1962
9166ba3ce7c3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1961
diff changeset
  6197
    ^ nil
1960
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
  6198
!
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
  6199
1939
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  6200
sortBlockForColors
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6201
    ^ self sortBlockForColorsByHLS.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6202
"/    ^ self sortBlockForColorsByRGB
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6203
!
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6204
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6205
sortBlockForColorsByHLS
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6206
    ^ [:a :b |
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6207
        |h1 h2 s1 s2 l1 l2|
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6208
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6209
        h1 := a hue ? 0.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6210
        h2 := b hue ? 0.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6211
        (h1 between: h2-30 and:h2+30) ifTrue:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6212
            l1 := a light.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6213
            l2 := b light.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6214
            l1 = l2 ifTrue:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6215
                a saturation < b saturation
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6216
            ] ifFalse:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6217
                l1 < l2
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6218
            ].
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6219
"/            s1 := a saturation.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6220
"/            s2 := b saturation.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6221
"/            s1 = s2 ifTrue:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6222
"/                a light < b light
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6223
"/            ] ifFalse:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6224
"/                s1 < s2 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6225
"/            ]
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6226
        ] ifFalse:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6227
            h1 < h2 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6228
        ]
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6229
      ]
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6230
!
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6231
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6232
sortBlockForColorsByRGB
1939
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  6233
    ^ [:a :b |
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  6234
            a redByte == b redByte ifTrue:[
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  6235
                a greenByte == b greenByte ifTrue:[
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  6236
                    a blueByte < b blueByte
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  6237
                ] ifFalse:[
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  6238
                    a greenByte < b greenByte 
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  6239
                ]
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  6240
            ] ifFalse:[
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  6241
                a redByte < b redByte 
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  6242
            ]
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  6243
      ]
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  6244
!
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  6245
1598
d748419672a3 more colormap operations
Claus Gittinger <cg@exept.de>
parents: 1597
diff changeset
  6246
updateImage
d748419672a3 more colormap operations
Claus Gittinger <cg@exept.de>
parents: 1597
diff changeset
  6247
    |img|
d748419672a3 more colormap operations
Claus Gittinger <cg@exept.de>
parents: 1597
diff changeset
  6248
d748419672a3 more colormap operations
Claus Gittinger <cg@exept.de>
parents: 1597
diff changeset
  6249
    img := imageEditView image.
d748419672a3 more colormap operations
Claus Gittinger <cg@exept.de>
parents: 1597
diff changeset
  6250
    imageEditView image:img.
d748419672a3 more colormap operations
Claus Gittinger <cg@exept.de>
parents: 1597
diff changeset
  6251
    self fetchImageData.
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6252
    self imageIsLoadedHolder changed.
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6253
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6254
    "Modified: / 16-02-2017 / 12:18:08 / cg"
1598
d748419672a3 more colormap operations
Claus Gittinger <cg@exept.de>
parents: 1597
diff changeset
  6255
!
d748419672a3 more colormap operations
Claus Gittinger <cg@exept.de>
parents: 1597
diff changeset
  6256
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  6257
updateImagePreView
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  6258
    self tileModeHolder value ifTrue:[
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  6259
        self imagePreView tileMode:true tileOffset:(self image extent).
1923
b73340bcc215 changeHLS fixed dfor depth24-images;
Claus Gittinger <cg@exept.de>
parents: 1922
diff changeset
  6260
    ].
3253
32b2ae3350b9 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 3242
diff changeset
  6261
    self imagePreView 
32b2ae3350b9 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 3242
diff changeset
  6262
        setImage:(self image) scroll:false invalidate:false; "/ true.
32b2ae3350b9 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 3242
diff changeset
  6263
        invalidate.
1558
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  6264
! !
3848cbaaf6d9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1557
diff changeset
  6265
535
1caf545614c5 info bar subspec changed
tz
parents: 519
diff changeset
  6266
!ImageEditor methodsFor:'queries'!
1caf545614c5 info bar subspec changed
tz
parents: 519
diff changeset
  6267
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6268
hasAlphaChannel
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6269
    |img|
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6270
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6271
    img := self image.
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6272
    img isNil ifTrue:[^ false].
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6273
    ^ img hasAlphaChannel
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6274
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6275
    "Created: / 05-09-2017 / 08:29:23 / cg"
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6276
!
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6277
2707
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  6278
hasLastGrabScreenArea
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  6279
    ^ [ lastGrabbedScreenArea notNil ]
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  6280
!
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  6281
960
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  6282
hasMask
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6283
    |img|
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6284
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6285
    img := self image.
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6286
    img isNil ifTrue:[^ false].
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6287
    img mask isNil ifTrue:[^ false].
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  6288
    ^ colorMapMode value notNil and:[colorMapMode value startsWith:'mask']
960
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  6289
3411
fd6472405fd0 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3409
diff changeset
  6290
    "Created: / 18-08-1998 / 17:17:38 / cg"
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6291
    "Modified: / 05-09-2017 / 08:28:44 / cg"
3411
fd6472405fd0 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3409
diff changeset
  6292
!
fd6472405fd0 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3409
diff changeset
  6293
fd6472405fd0 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3409
diff changeset
  6294
hasMaskHolder
fd6472405fd0 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3409
diff changeset
  6295
    ^ [ self hasMask ]
fd6472405fd0 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3409
diff changeset
  6296
fd6472405fd0 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3409
diff changeset
  6297
    "Created: / 18-02-2017 / 00:41:19 / cg"
960
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  6298
!
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  6299
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6300
hasTransparentColorInColorList
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6301
    ^ self hasMask or:[self hasAlphaChannel]
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6302
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6303
    "Created: / 05-09-2017 / 09:03:24 / cg"
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6304
!
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6305
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6306
modified
3416
9d51a45479e3 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3415
diff changeset
  6307
    "true if the image was modified"
9d51a45479e3 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3415
diff changeset
  6308
    
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6309
    ^ imageEditView modified
3416
9d51a45479e3 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3415
diff changeset
  6310
9d51a45479e3 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3415
diff changeset
  6311
    "Modified (comment): / 20-02-2017 / 16:23:32 / cg"
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6312
!
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6313
2006
ae6fe65e9f33 embedding as special editors
Claus Gittinger <cg@exept.de>
parents: 1998
diff changeset
  6314
modified:aBoolean
ae6fe65e9f33 embedding as special editors
Claus Gittinger <cg@exept.de>
parents: 1998
diff changeset
  6315
    super modified:aBoolean.
ae6fe65e9f33 embedding as special editors
Claus Gittinger <cg@exept.de>
parents: 1998
diff changeset
  6316
    imageEditView modified:aBoolean
ae6fe65e9f33 embedding as special editors
Claus Gittinger <cg@exept.de>
parents: 1998
diff changeset
  6317
!
ae6fe65e9f33 embedding as special editors
Claus Gittinger <cg@exept.de>
parents: 1998
diff changeset
  6318
535
1caf545614c5 info bar subspec changed
tz
parents: 519
diff changeset
  6319
preferredExtent
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  6320
    "returns the preferred extent"
535
1caf545614c5 info bar subspec changed
tz
parents: 519
diff changeset
  6321
3443
b9d9eb4b34f9 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3442
diff changeset
  6322
    ^ 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
  6323
b9d9eb4b34f9 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3442
diff changeset
  6324
    "Modified (format): / 13-04-2017 / 09:52:25 / cg"
535
1caf545614c5 info bar subspec changed
tz
parents: 519
diff changeset
  6325
! !
1caf545614c5 info bar subspec changed
tz
parents: 519
diff changeset
  6326
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6327
!ImageEditor methodsFor:'selection'!
228524287573 intitial checkin
tz
parents:
diff changeset
  6328
228524287573 intitial checkin
tz
parents:
diff changeset
  6329
magnification
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  6330
    "returns the magnification of the image"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6331
911
ec8db5b62352 unnecessary calls removed
tz
parents: 905
diff changeset
  6332
    self imageEditView isNil ifTrue: [^1].
ec8db5b62352 unnecessary calls removed
tz
parents: 905
diff changeset
  6333
    ^imageEditView magnification x
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6334
!
228524287573 intitial checkin
tz
parents:
diff changeset
  6335
228524287573 intitial checkin
tz
parents:
diff changeset
  6336
magnification: aValue
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  6337
    "sets the magnification of the image"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6338
905
5f5d0a415c04 grid magnification can be changed
tz
parents: 903
diff changeset
  6339
    |magnification|        
5f5d0a415c04 grid magnification can be changed
tz
parents: 903
diff changeset
  6340
    magnification := (aValue ? 1) asPoint.
911
ec8db5b62352 unnecessary calls removed
tz
parents: 905
diff changeset
  6341
    (magnification = imageEditView magnification or: [magnification = (0@0)]) ifTrue: [^nil].
ec8db5b62352 unnecessary calls removed
tz
parents: 905
diff changeset
  6342
    imageEditView magnification: magnification
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6343
!
228524287573 intitial checkin
tz
parents:
diff changeset
  6344
228524287573 intitial checkin
tz
parents:
diff changeset
  6345
selectedColorIndex
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  6346
    "returns the index of the selected color"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6347
228524287573 intitial checkin
tz
parents:
diff changeset
  6348
    ^selectedColorIndex
228524287573 intitial checkin
tz
parents:
diff changeset
  6349
!
228524287573 intitial checkin
tz
parents:
diff changeset
  6350
228524287573 intitial checkin
tz
parents:
diff changeset
  6351
selectedColorIndex: anIndex
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  6352
    "sets the index of the selected color"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6353
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6354
    |clr pixel|
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6355
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6356
    selectedColorIndex := anIndex.
2447
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  6357
    anIndex isNil ifTrue:[^ self].
3393
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  6358
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6359
    clr := self listOfColors at:anIndex ifAbsent:nil.
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6360
    clr isNil ifTrue:[^ self].
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6361
1075
74795d3e647d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1057
diff changeset
  6362
    pixel := anIndex - 1.
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6363
    (self listOfColors at:1) = Color noColor ifTrue:[
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6364
        anIndex == 1 ifTrue:[
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6365
            pixel := nil.       "/ mask
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6366
        ] ifFalse:[
1075
74795d3e647d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1057
diff changeset
  6367
            pixel := pixel - 1
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6368
        ]
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6369
    ].
3409
d821859c163e #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3408
diff changeset
  6370
    imageEditView selectedColor:clr.
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6371
    imageEditView selectedColorIndex:pixel.
3409
d821859c163e #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3408
diff changeset
  6372
d821859c163e #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3408
diff changeset
  6373
    "Modified: / 17-02-2017 / 16:29:09 / cg"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6374
! !
228524287573 intitial checkin
tz
parents:
diff changeset
  6375
1716
5ae373f6fef0 method category rename
Claus Gittinger <cg@exept.de>
parents: 1715
diff changeset
  6376
!ImageEditor methodsFor:'startup & release'!
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6377
1640
87ce36f48fbc remember previous relative sizes and
Claus Gittinger <cg@exept.de>
parents: 1639
diff changeset
  6378
closeDownViews
1644
df1f5a97b8e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1643
diff changeset
  6379
    builder notNil ifTrue:[
df1f5a97b8e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1643
diff changeset
  6380
        DefaultRelativeSizes :=
df1f5a97b8e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1643
diff changeset
  6381
            Array 
1998
efd9be2585e3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1996
diff changeset
  6382
                with:(builder componentAt:#mainPanel) relativeCorners    
1644
df1f5a97b8e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1643
diff changeset
  6383
                with:(builder componentAt:#verticalPanel) relativeCorners.
df1f5a97b8e9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1643
diff changeset
  6384
    ].
1640
87ce36f48fbc remember previous relative sizes and
Claus Gittinger <cg@exept.de>
parents: 1639
diff changeset
  6385
    super closeDownViews
87ce36f48fbc remember previous relative sizes and
Claus Gittinger <cg@exept.de>
parents: 1639
diff changeset
  6386
!
87ce36f48fbc remember previous relative sizes and
Claus Gittinger <cg@exept.de>
parents: 1639
diff changeset
  6387
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6388
closeRequest
2016
62843f7d07b7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2006
diff changeset
  6389
    "asks for permission before closing"
62843f7d07b7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2006
diff changeset
  6390
62843f7d07b7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2006
diff changeset
  6391
    imageEditView checkModified ifTrue:[
62843f7d07b7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2006
diff changeset
  6392
        super closeRequest
62843f7d07b7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2006
diff changeset
  6393
    ]
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6394
!
228524287573 intitial checkin
tz
parents:
diff changeset
  6395
1980
862d4036cebd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1975
diff changeset
  6396
commonPostBuild
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6397
    imageEditView undoImages addDependent:self.
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6398
    imageEditView imageInfoHolder:(self imageInfoHolder).
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6399
    imageEditView activityInfoHolder:(self activityInfoHolder).
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6400
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6401
    imageEditView clickInfoCallBack:[:button :point | 
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6402
                        |mouseButtonColorToolBar|
3170
a49100905be3 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3164
diff changeset
  6403
                        button <= 2 ifTrue:[
a49100905be3 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3164
diff changeset
  6404
                            mouseButtonColorToolBar := self componentAt:#MouseButtonColorToolBar.
a49100905be3 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3164
diff changeset
  6405
                            (mouseButtonColorToolBar itemAt:button) toggleIndication.
a49100905be3 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3164
diff changeset
  6406
                            mouseButtonColorToolBar do: [:i| i updateIndicators].
a49100905be3 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3164
diff changeset
  6407
                        ].
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6408
                  ].
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6409
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6410
    imageEditView addDependent:self.
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6411
    imageEditView modifiedHolder addDependent:self.
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  6412
1640
87ce36f48fbc remember previous relative sizes and
Claus Gittinger <cg@exept.de>
parents: 1639
diff changeset
  6413
    DefaultRelativeSizes notNil ifTrue:[
1998
efd9be2585e3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1996
diff changeset
  6414
        (builder componentAt:#mainPanel) relativeCorners:DefaultRelativeSizes first.
1980
862d4036cebd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1975
diff changeset
  6415
        (builder componentAt:#verticalPanel) relativeCorners:DefaultRelativeSizes second.
1640
87ce36f48fbc remember previous relative sizes and
Claus Gittinger <cg@exept.de>
parents: 1639
diff changeset
  6416
    ].
1995
ad11533a39e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1993
diff changeset
  6417
1996
d18588052ade infoHolder handling
Claus Gittinger <cg@exept.de>
parents: 1995
diff changeset
  6418
    "/ using masters infoHolder ?
3543
06dbbe8684c7 #BUGFIX by stefan
Stefan Vogel <sv@exept.de>
parents: 3535
diff changeset
  6419
    self useAlienInfoLabel ifTrue:[
1998
efd9be2585e3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1996
diff changeset
  6420
        (builder componentAt:#mainPanel) layout bottomOffset:0.
1995
ad11533a39e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1993
diff changeset
  6421
        (builder componentAt:#infoBarSubSpec) beInvisible
ad11533a39e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1993
diff changeset
  6422
    ]
3535
e8ad4febf6f4 #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 3530
diff changeset
  6423
e8ad4febf6f4 #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 3530
diff changeset
  6424
    "Modified: / 20-02-2018 / 13:05:30 / stefan"
1640
87ce36f48fbc remember previous relative sizes and
Claus Gittinger <cg@exept.de>
parents: 1639
diff changeset
  6425
!
87ce36f48fbc remember previous relative sizes and
Claus Gittinger <cg@exept.de>
parents: 1639
diff changeset
  6426
1980
862d4036cebd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1975
diff changeset
  6427
open
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6428
    "after opening, gets the imageEditView"
1980
862d4036cebd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1975
diff changeset
  6429
862d4036cebd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1975
diff changeset
  6430
    super open.
862d4036cebd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1975
diff changeset
  6431
862d4036cebd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1975
diff changeset
  6432
    imageEditView := (self componentAt: #imageEditView) subViews first.
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6433
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6434
    "Modified (comment): / 05-09-2017 / 10:39:45 / cg"
1980
862d4036cebd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1975
diff changeset
  6435
!
862d4036cebd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1975
diff changeset
  6436
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6437
postOpenWith:aBuilder
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  6438
    "after opening, sets the masterApplication of the imageEditView to self;
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  6439
     evaluate the postOpenAction"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6440
1921
699dca2ebb51 code cleanup
Claus Gittinger <cg@exept.de>
parents: 1916
diff changeset
  6441
    postOpenAction value.
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6442
1250
644ed357b524 reset menuBar in keyProcessor
ca
parents: 1196
diff changeset
  6443
    super postOpenWith:aBuilder.
644ed357b524 reset menuBar in keyProcessor
ca
parents: 1196
diff changeset
  6444
644ed357b524 reset menuBar in keyProcessor
ca
parents: 1196
diff changeset
  6445
    aBuilder keyboardProcessor menuBar:nil.
2339
a06d19fe7b32 click on preview to scroll editView;
Claus Gittinger <cg@exept.de>
parents: 2308
diff changeset
  6446
    self windowGroup addPreEventHook:self.
3415
b93299ad5142 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3413
diff changeset
  6447
    self colorCropTabSelectionIndexChanged.
b93299ad5142 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3413
diff changeset
  6448
3421
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  6449
    self drawingColor1Holder valueHolder:(imageEditView drawingColorHolders at:1).
f46643590cb1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3420
diff changeset
  6450
    self drawingColor2Holder valueHolder:(imageEditView drawingColorHolders at:2).
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6451
    imageEditView drawingAlpha:(self alphaHolder value).
3561
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  6452
    self updateAfterImageChange.
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6453
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  6454
    "Modified (format): / 05-09-2017 / 10:40:10 / cg"
3561
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  6455
    "Modified: / 27-05-2018 / 11:20:57 / Claus Gittinger"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  6456
! !
228524287573 intitial checkin
tz
parents:
diff changeset
  6457
1715
9eebdb3802aa method category rename
Claus Gittinger <cg@exept.de>
parents: 1713
diff changeset
  6458
!ImageEditor methodsFor:'user actions-colormap'!
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6459
1053
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  6460
addColorToColormap
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6461
    "undoable: add black (a new color) to the map"
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
    self addColorToColormap:(Color black) undoable:true
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6464
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6465
    "Modified: / 31-08-2017 / 14:30:32 / cg"
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  6466
!
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  6467
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  6468
addColorToColormap:newColor
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6469
    "undoable
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6470
     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
  6471
     (unless it is full).
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6472
     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
  6473
     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
  6474
     
1643
91b7ea254a3b some changes to support drawing into 24-bit images
Claus Gittinger <cg@exept.de>
parents: 1640
diff changeset
  6475
    |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
  6476
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  6477
    img := self image.
1499
0c57ab09156b about menu items moved into the Help-menu
Claus Gittinger <cg@exept.de>
parents: 1496
diff changeset
  6478
    img isNil ifTrue:[
0c57ab09156b about menu items moved into the Help-menu
Claus Gittinger <cg@exept.de>
parents: 1496
diff changeset
  6479
        self warn:'No Image.'.
0c57ab09156b about menu items moved into the Help-menu
Claus Gittinger <cg@exept.de>
parents: 1496
diff changeset
  6480
        ^ self
0c57ab09156b about menu items moved into the Help-menu
Claus Gittinger <cg@exept.de>
parents: 1496
diff changeset
  6481
    ].
0c57ab09156b about menu items moved into the Help-menu
Claus Gittinger <cg@exept.de>
parents: 1496
diff changeset
  6482
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6483
    depth := img depth.
1053
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  6484
    cMap := img colorMap.
3393
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  6485
    (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
  6486
        drawingColormap isNil ifTrue:[
1916
c91c39976bef *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1910
diff changeset
  6487
            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
  6488
            drawingColormap := OrderedCollection new.
91b7ea254a3b some changes to support drawing into 24-bit images
Claus Gittinger <cg@exept.de>
parents: 1640
diff changeset
  6489
        ].
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  6490
        drawingColormap add:newColor.
1643
91b7ea254a3b some changes to support drawing into 24-bit images
Claus Gittinger <cg@exept.de>
parents: 1640
diff changeset
  6491
        self listOfColors contents:drawingColormap.
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6492
        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
  6493
        "/ self warn:'Image has no colormap.\Change colorMap mode first.' withCRs.
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6494
        ^ self
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6495
    ].
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6496
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6497
    (cMap size == (1 bitShift:depth)) ifTrue:[
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6498
        depth >= 8 ifTrue:[
1053
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  6499
            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
  6500
            ^ self
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  6501
        ].
1916
c91c39976bef *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1910
diff changeset
  6502
        (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
  6503
        ifFalse:[
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  6504
            ^ self
1057
36f9d47e1249 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1054
diff changeset
  6505
        ].
36f9d47e1249 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1054
diff changeset
  6506
36f9d47e1249 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1054
diff changeset
  6507
        imageEditView makeUndo.
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  6508
        img mask notNil ifTrue:[
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  6509
            newMode := 'masked' , (depth*2) printString.
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  6510
        ] ifFalse:[
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  6511
            newMode := 'depth' , (depth*2) printString.
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  6512
        ].
1057
36f9d47e1249 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1054
diff changeset
  6513
        self colorMapMode:newMode.
36f9d47e1249 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1054
diff changeset
  6514
    ] ifFalse:[
36f9d47e1249 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1054
diff changeset
  6515
        imageEditView makeUndo.
1053
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  6516
    ].
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6517
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6518
    cMap := cMap asArray.
1643
91b7ea254a3b some changes to support drawing into 24-bit images
Claus Gittinger <cg@exept.de>
parents: 1640
diff changeset
  6519
    listOfColors := self listOfColors.
91b7ea254a3b some changes to support drawing into 24-bit images
Claus Gittinger <cg@exept.de>
parents: 1640
diff changeset
  6520
    oldCListSize := listOfColors size.
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6521
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  6522
    newColorMap := cMap copyWith:newColor.
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6523
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6524
    newImage := img species new
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6525
                    width:(img width) height:(img height) depth:depth
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6526
                    fromArray:img bits.
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6527
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6528
    newImage colorMap:newColorMap.  
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6529
    newImage fileName:img fileName.
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6530
    newImage mask:(img mask copy).
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6531
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6532
    (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
  6533
        listOfColors contents: newImage colorMap.
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6534
        self findColorMapMode.
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6535
        "/ 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
  6536
        listOfColors size > (oldCListSize + 1) ifTrue:[
91b7ea254a3b some changes to support drawing into 24-bit images
Claus Gittinger <cg@exept.de>
parents: 1640
diff changeset
  6537
            listOfColors removeLast
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6538
        ].
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6539
        self selectedColors value:{listOfColors size}.
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6540
        self updateLabelsAndHistory.
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  6541
    ]
1053
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  6542
3393
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  6543
    "Created: / 12-03-1999 / 00:20:28 / cg"
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6544
    "Modified: / 16-02-2017 / 10:17:25 / cg"
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6545
    "Modified (comment): / 31-08-2017 / 14:28:11 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6546
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6547
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6548
addColorToColormap:newColor undoable:undoable
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6549
    "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
  6550
     (unless it is full).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6551
     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
  6552
     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
  6553
     
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6554
    |depth img cMap newColorMap newImage oldCListSize newMode listOfColors|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6555
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6556
    img := self image.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6557
    img isNil ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6558
        self warn:'No Image.'.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6559
        ^ self
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6560
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6561
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6562
    depth := img depth.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6563
    cMap := img colorMap.
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6564
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6565
    (cMap notNil and:[cMap isMappedPalette or:[cMap isArray]]) ifTrue:[
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6566
    ] ifFalse:[
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6567
        (cMap isNil or:[cMap isFixedPalette]) ifTrue:[
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6568
            drawingColormap isNil ifTrue:[
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6569
                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
  6570
                drawingColormap := OrderedCollection new.
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6571
            ].
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6572
            drawingColormap add:newColor.
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6573
            self listOfColors contents:drawingColormap.
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6574
            self selectedColors value:{drawingColormap size}.
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6575
            "/ self warn:'Image has no colormap.\Change colorMap mode first.' withCRs.
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6576
            ^ self
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6577
        ].
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6578
    ].
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6579
    
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6580
    (cMap size == (1 bitShift:depth)) ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6581
        depth >= 8 ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6582
            self warn:'No space for more colors in colormap.'.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6583
            ^ self
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6584
        ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6585
        (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
  6586
        ifFalse:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6587
            ^ self
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6588
        ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6589
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6590
        undoable ifTrue:[ imageEditView makeUndo ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6591
        img mask notNil ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6592
            newMode := 'masked' , (depth*2) printString.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6593
        ] ifFalse:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6594
            newMode := 'depth' , (depth*2) printString.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6595
        ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6596
        self colorMapMode:newMode.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6597
    ] ifFalse:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6598
        undoable ifTrue:[ imageEditView makeUndo ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6599
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6600
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6601
    cMap := cMap asArray.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6602
    listOfColors := self listOfColors.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6603
    oldCListSize := listOfColors size.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6604
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6605
    newColorMap := cMap copyWith:newColor.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6606
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6607
    newImage := img species new
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6608
                    width:(img width) height:(img height) depth:depth
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6609
                    fromArray:img bits.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6610
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6611
    newImage colorMap:newColorMap.  
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6612
    newImage fileName:img fileName.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6613
    newImage mask:(img mask copy).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6614
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6615
    (imageEditView image:newImage) notNil ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6616
        listOfColors contents: newImage colorMap.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6617
        self findColorMapMode.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6618
        "/ 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
  6619
        listOfColors size > (oldCListSize + 1) ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6620
            listOfColors removeLast
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6621
        ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6622
        self selectedColors value:{listOfColors size}.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6623
        self updateLabelsAndHistory.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6624
    ]
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6625
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6626
    "Created: / 31-08-2017 / 14:30:01 / cg"
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6627
    "Modified: / 08-10-2017 / 09:15:10 / cg"
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6628
!
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6629
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6630
addPastedColorToColormap
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6631
    "undoable: add the color in the clipboard to the map"
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6632
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6633
    |clipBoardColor|
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6634
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6635
    (clipBoardColor := self clipBoardColor) isNil ifTrue:[                
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6636
        ^ self
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6637
    ].
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6638
    self addColorToColormap:clipBoardColor undoable:true
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6639
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6640
    "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
  6641
!
31097504a15a fixed startup (modal box in calling thread, instead of
Claus Gittinger <cg@exept.de>
parents: 1047
diff changeset
  6642
1650
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  6643
changeHLS
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6644
    "interactive Hue/Light/Saturation editing with thumbWheels"
1650
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  6645
3562
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  6646
    |bindings hueShiftHolder lightFactorHolder saturationFactorHolder originalColormap firstChange acceptChannel 
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6647
     shiftAction originalAvgColor avgColorHolder avgColor shiftedColor shiftProcess readySema
2438
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6648
     originalPixels p previewImage previewImageHolder originalPreviewColormap originalPreviewPixels
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6649
     anyChange |
1652
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6650
2438
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6651
    avgColorHolder := nil asValue.
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6652
    previewImageHolder := nil asValue.
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6653
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6654
    "/
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6655
    "/ 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
  6656
    "/
1652
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6657
    readySema := Semaphore new.
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6658
    [
1923
b73340bcc215 changeHLS fixed dfor depth24-images;
Claus Gittinger <cg@exept.de>
parents: 1922
diff changeset
  6659
        |image|
b73340bcc215 changeHLS fixed dfor depth24-images;
Claus Gittinger <cg@exept.de>
parents: 1922
diff changeset
  6660
b73340bcc215 changeHLS fixed dfor depth24-images;
Claus Gittinger <cg@exept.de>
parents: 1922
diff changeset
  6661
        image := imageEditView image.
b73340bcc215 changeHLS fixed dfor depth24-images;
Claus Gittinger <cg@exept.de>
parents: 1922
diff changeset
  6662
        originalColormap := image colorMap copy.
2438
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6663
        originalPixels := image bits.
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6664
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6665
        previewImage := self image magnifiedPreservingRatioTo:100@100.
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6666
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6667
        avgColor := originalAvgColor := previewImage "image" averageColor.
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6668
        avgColorHolder value:avgColor.
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6669
2438
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6670
        previewImageHolder value: previewImage.
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6671
        originalPreviewColormap := previewImage colorMap copy.
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6672
        originalPreviewPixels := previewImage bits.
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6673
1652
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6674
        readySema signal.
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6675
    ] forkAt:7.
1649
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6676
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6677
    acceptChannel := TriggerValue new.
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6678
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6679
    firstChange := true.
2438
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6680
    anyChange := false.
1649
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6681
1651
577ddbd9fb26 better hls color display
Claus Gittinger <cg@exept.de>
parents: 1650
diff changeset
  6682
    shiftedColor := [:clr :hShift :lFactor :sFactor |
577ddbd9fb26 better hls color display
Claus Gittinger <cg@exept.de>
parents: 1650
diff changeset
  6683
                        Color 
577ddbd9fb26 better hls color display
Claus Gittinger <cg@exept.de>
parents: 1650
diff changeset
  6684
                                hue:((clr hue) ? 0 + hShift) 
3562
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  6685
                                light:(((clr light * (lFactor)) min:100) max:0)
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  6686
                                saturation:(((clr saturation * (sFactor)) min:100) max:0)].
1652
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6687
1649
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6688
    shiftAction := 
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6689
        [
1650
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  6690
            |hShift lFactor sFactor|
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  6691
1649
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6692
            acceptChannel value:true.
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6693
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6694
            firstChange ifTrue:[
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6695
                imageEditView makeUndo.
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6696
                firstChange := false.
2438
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6697
                anyChange := true.
1649
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6698
            ].
1652
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6699
            readySema notNil ifTrue:[readySema wait. readySema := nil].
1650
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  6700
3562
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  6701
            hShift := hueShiftHolder value.
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  6702
            lFactor := lightFactorHolder value.
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  6703
            sFactor := saturationFactorHolder value.
1650
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  6704
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6705
            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
  6706
2438
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6707
            previewImage
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6708
                colorMap:originalPreviewColormap copy;
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6709
                bits:originalPreviewPixels copy;
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6710
                release;
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6711
                colorMapProcessing:[:clr | shiftedColor value:clr value:hShift value:lFactor value:sFactor].
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6712
            previewImageHolder value:nil; value:previewImage.
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6713
1652
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6714
            shiftProcess notNil ifTrue:[
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6715
                shiftProcess terminate.
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6716
                shiftProcess waitUntilTerminated.
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6717
                shiftProcess := nil.
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6718
            ].
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6719
            shiftProcess := 
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6720
                [
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6721
                    [
1656
f5c0716efd78 menu labels
Claus Gittinger <cg@exept.de>
parents: 1652
diff changeset
  6722
                        imageEditView image 
f5c0716efd78 menu labels
Claus Gittinger <cg@exept.de>
parents: 1652
diff changeset
  6723
                            colorMap:originalColormap copy;
1923
b73340bcc215 changeHLS fixed dfor depth24-images;
Claus Gittinger <cg@exept.de>
parents: 1922
diff changeset
  6724
                            bits:originalPixels copy;
b73340bcc215 changeHLS fixed dfor depth24-images;
Claus Gittinger <cg@exept.de>
parents: 1922
diff changeset
  6725
                            release;
1656
f5c0716efd78 menu labels
Claus Gittinger <cg@exept.de>
parents: 1652
diff changeset
  6726
                            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
  6727
                        self updateImage.
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6728
                        self updateInfoLabel.
1923
b73340bcc215 changeHLS fixed dfor depth24-images;
Claus Gittinger <cg@exept.de>
parents: 1922
diff changeset
  6729
                        self updateImagePreView.
1652
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6730
                    ] ensure:[ shiftProcess := nil ].    
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6731
                ] forkAt:7.
1649
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6732
        ].
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6733
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6734
    bindings := IdentityDictionary new.
3562
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  6735
    bindings at:#hueShiftHolder put:(hueShiftHolder := 0 asValue).
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  6736
    hueShiftHolder onChangeEvaluate:shiftAction.
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  6737
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  6738
    bindings at:#lightFactorHolder put:(lightFactorHolder := 1.0 asValue).
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  6739
    lightFactorHolder onChangeEvaluate:shiftAction.
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  6740
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  6741
    bindings at:#saturationFactorHolder put:(saturationFactorHolder := 1.0 asValue).
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  6742
    saturationFactorHolder onChangeEvaluate:shiftAction.
1650
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  6743
1649
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6744
    bindings at:#acceptChannel put:acceptChannel.
1652
d6d40619e21a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1651
diff changeset
  6745
    bindings at:#hlsColor put:avgColorHolder.
2438
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6746
    bindings at:#previewImageHolder put:previewImageHolder.
1650
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  6747
3562
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  6748
    bindings at:#resetHueShift put:[hueShiftHolder value:0].
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  6749
    bindings at:#resetLightFactor put:[lightFactorHolder value:1.0].
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  6750
    bindings at:#resetSaturationFactor put:[saturationFactorHolder value:1.0].
dc310a9c9b19 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3561
diff changeset
  6751
    
1650
Claus Gittinger <cg@exept.de>
parents: 1649
diff changeset
  6752
    (self openDialogInterface:#changeHLSDialogSpec withBindings:bindings) 
1649
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6753
    ifFalse:[ 
2438
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6754
        anyChange ifTrue:[
1649
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6755
            imageEditView undo
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6756
        ]
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6757
    ].
1923
b73340bcc215 changeHLS fixed dfor depth24-images;
Claus Gittinger <cg@exept.de>
parents: 1922
diff changeset
  6758
b73340bcc215 changeHLS fixed dfor depth24-images;
Claus Gittinger <cg@exept.de>
parents: 1922
diff changeset
  6759
    (p := shiftProcess) notNil ifTrue:[
b73340bcc215 changeHLS fixed dfor depth24-images;
Claus Gittinger <cg@exept.de>
parents: 1922
diff changeset
  6760
        p waitUntilTerminated.
b73340bcc215 changeHLS fixed dfor depth24-images;
Claus Gittinger <cg@exept.de>
parents: 1922
diff changeset
  6761
    ].
2438
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6762
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6763
    anyChange ifTrue:[
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6764
        self updateImage.
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6765
        self updateImagePreView.
bbe9cdf5dac4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2424
diff changeset
  6766
    ].
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6767
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6768
    "Modified: / 28-08-2017 / 13:05:35 / cg"
3580
ab5cebe669d7 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3562
diff changeset
  6769
    "Modified: / 28-07-2018 / 10:35:37 / Claus Gittinger"
1649
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6770
!
80586cf27eb8 added changeHue
Claus Gittinger <cg@exept.de>
parents: 1644
diff changeset
  6771
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6772
changeHLSOfColors:colorsToShift
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6773
    "interactive Hue/Light/Saturation editing"
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6774
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6775
    |bindings hueShift lightValue saturationValue originalColormap firstChange acceptChannel 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6776
     shiftAction avgColorHolder avgColor shiftedColor shiftProcess readySema
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6777
     originalPixels p previewImage previewImageHolder originalPreviewColormap originalPreviewPixels
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6778
     anyChange |
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6779
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6780
    avgColorHolder := nil asValue.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6781
    previewImageHolder := nil asValue.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6782
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6783
    "/
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6784
    "/ 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
  6785
    "/
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6786
    readySema := Semaphore new.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6787
    [
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6788
        |image red green blue|
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6789
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6790
        image := imageEditView image.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6791
        originalColormap := image colorMap copy.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6792
        originalPixels := image bits.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6793
        red := (colorsToShift collect:[:clr | clr red]) average.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6794
        green := (colorsToShift collect:[:clr | clr green]) average.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6795
        blue := (colorsToShift collect:[:clr | clr blue]) average.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6796
        avgColor := Color red:red green:green blue:blue.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6797
        avgColorHolder value:avgColor.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6798
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6799
        previewImage := self image magnifiedPreservingRatioTo:100@100.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6800
        previewImageHolder value: previewImage.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6801
        originalPreviewColormap := previewImage colorMap copy.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6802
        originalPreviewPixels := previewImage bits.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6803
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6804
        readySema signal.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6805
    ] forkAt:7.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6806
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6807
    acceptChannel := TriggerValue new.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6808
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6809
    firstChange := true.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6810
    anyChange := false.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6811
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6812
    shiftedColor := [:clr :hShift :lFactor :sFactor |
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6813
                        Color 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6814
                                hue:((clr hue) ? 0 + hShift) 
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6815
                                light:((clr light * lFactor) min:100)
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6816
                                saturation:((clr saturation * sFactor) min:100)].
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6817
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6818
    shiftAction := 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6819
        [
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6820
            |hShift lFactor sFactor|
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6821
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6822
            acceptChannel value:true.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6823
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6824
            firstChange ifTrue:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6825
                imageEditView makeUndo.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6826
                firstChange := false.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6827
                anyChange := true.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6828
            ].
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6829
            readySema notNil ifTrue:[readySema wait. readySema := nil].
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6830
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6831
            hShift := hueShift value.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6832
            lFactor := lightValue value.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6833
            sFactor := saturationValue value.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6834
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6835
            avgColorHolder value:(shiftedColor value:avgColor value:hShift value:lFactor value:sFactor).
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6836
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6837
            previewImage
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6838
                colorMap:originalPreviewColormap copy;
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6839
                bits:originalPreviewPixels copy;
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6840
                release;
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6841
                colorMapProcessing:[:clr | 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6842
                    (colorsToShift includes:clr) ifTrue:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6843
                        shiftedColor value:clr value:hShift value:lFactor value:sFactor.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6844
                    ] ifFalse:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6845
                        clr
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6846
                    ]
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6847
                ].
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6848
            previewImageHolder value:nil; value:previewImage.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6849
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6850
            shiftProcess notNil ifTrue:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6851
                shiftProcess terminate.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6852
                shiftProcess waitUntilTerminated.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6853
                shiftProcess := nil.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6854
            ].
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6855
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6856
            shiftProcess := 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6857
                [
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6858
                    [
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6859
                        imageEditView image 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6860
                            colorMap:originalColormap copy;
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6861
                            bits:originalPixels copy;
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6862
                            release;
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6863
                            colorMapProcessing:[:clr | 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6864
                                (colorsToShift includes:clr) ifTrue:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6865
                                    shiftedColor value:clr value:hShift value:lFactor value:sFactor.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6866
                                ] ifFalse:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6867
                                    clr
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6868
                                ]
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6869
                            ].
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6870
                        self updateImage.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6871
                        self updateInfoLabel.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6872
                        self updateImagePreView.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6873
                    ] ensure:[ shiftProcess := nil ].    
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6874
                ] forkAt:7.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6875
        ].
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6876
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6877
    bindings := IdentityDictionary new.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6878
    bindings at:#hueShiftAmount put:(hueShift := 0 asValue).
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6879
    hueShift onChangeEvaluate:shiftAction.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6880
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6881
    bindings at:#lightAmount put:(lightValue := 100 asValue).
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6882
    lightValue onChangeEvaluate:shiftAction.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6883
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6884
    bindings at:#saturationAmount put:(saturationValue := 100 asValue).
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6885
    saturationValue onChangeEvaluate:shiftAction.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6886
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6887
    bindings at:#acceptChannel put:acceptChannel.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6888
    bindings at:#hlsColor put:avgColorHolder.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6889
    bindings at:#previewImageHolder put:previewImageHolder.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6890
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6891
    (self openDialogInterface:#changeHLSDialogSpec withBindings:bindings) 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6892
    ifFalse:[ 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6893
        anyChange ifTrue:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6894
            imageEditView undo
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6895
        ]
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6896
    ].
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6897
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6898
    (p := shiftProcess) notNil ifTrue:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6899
        p waitUntilTerminated.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6900
    ].
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6901
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6902
    anyChange ifTrue:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6903
        self updateImage.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6904
        self updateImagePreView.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6905
    ].
3468
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6906
2cf3a445a2f6 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3466
diff changeset
  6907
    "Modified (comment): / 28-08-2017 / 13:04:44 / cg"
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6908
!
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  6909
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6910
clearColormapEntry0AndMaskedPixels
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6911
    "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
  6912
     0 and then clear all masked pixels (to pixelValue 0).
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6913
     This is required for windows icons to be really transparent"
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6914
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6915
    |index colorMap| 
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6916
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6917
    self nonUndoableCompressColorMap.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6918
    
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6919
    colorMap := self image colorMap.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6920
    (colorMap includes:(Color black)) ifFalse:[
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6921
        self addColorToColormap:(Color black) undoable:false.
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6922
        colorMap := self image colorMap.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6923
    ].
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6924
    index := colorMap indexOf:(Color black).
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6925
    index == 1 ifFalse:[
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6926
        self nonUndoableSortColorMapWith:self sortBlockForColorsByRGB.
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6927
        colorMap := self image colorMap.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6928
    ].
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6929
    self nonUndoableClearMaskedPixels
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6930
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  6931
    "Modified: / 31-08-2017 / 14:30:28 / cg"
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6932
!
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6933
1403
26707fae4b93 compressColorMap
Claus Gittinger <cg@exept.de>
parents: 1398
diff changeset
  6934
clearMaskedPixels
26707fae4b93 compressColorMap
Claus Gittinger <cg@exept.de>
parents: 1398
diff changeset
  6935
    "clear all masked pixels (to pixelValue 0)"
26707fae4b93 compressColorMap
Claus Gittinger <cg@exept.de>
parents: 1398
diff changeset
  6936
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6937
    |newImage| 
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6938
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6939
    newImage := self image clearMaskedPixels.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6940
    0 to:newImage height - 1 do:[:y |
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6941
        0 to:newImage width - 1 do:[:x |
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6942
            (newImage maskAtX:x y:y) == 0 ifTrue:[
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6943
                newImage pixelAtX:x y:y put:0
1460
89549732a2c8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1459
diff changeset
  6944
            ]
1403
26707fae4b93 compressColorMap
Claus Gittinger <cg@exept.de>
parents: 1398
diff changeset
  6945
        ]
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6946
    ].
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6947
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6948
    (imageEditView image:newImage) notNil ifTrue:[
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  6949
        self fetchImageData.
1403
26707fae4b93 compressColorMap
Claus Gittinger <cg@exept.de>
parents: 1398
diff changeset
  6950
    ]
26707fae4b93 compressColorMap
Claus Gittinger <cg@exept.de>
parents: 1398
diff changeset
  6951
!
26707fae4b93 compressColorMap
Claus Gittinger <cg@exept.de>
parents: 1398
diff changeset
  6952
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6953
clipBoardColor
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6954
    "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
  6955
     If there is none, beep (if user's settings allow it)"
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6956
     
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6957
    |clr|
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6958
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6959
    clr := imageEditView getClipboardObject.
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6960
    clr isColor ifFalse:[
3526
d27e02006468 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3513
diff changeset
  6961
        self beepInEditor.
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6962
        ^ nil
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6963
    ].
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6964
    ^ clr
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6965
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6966
    "Created: / 08-10-2017 / 09:02:14 / cg"
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6967
!
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  6968
945
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  6969
colorMapChanged
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  6970
    |img|
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  6971
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  6972
    img := self image.
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  6973
    img release.
1376
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  6974
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  6975
    self imageEditView invalidate.
960
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  6976
    self imagePreView invalidate.
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  6977
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  6978
"/    (imageEditView image:img) notNil ifTrue:[
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  6979
"/        self updateLabelsAndHistory.
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  6980
"/        self imagePreView image:img
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  6981
"/    ]
945
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  6982
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  6983
    "Created: / 7.8.1998 / 22:26:10 / cg"
960
6196f12b97f6 fixed color editing
Claus Gittinger <cg@exept.de>
parents: 958
diff changeset
  6984
    "Modified: / 18.8.1998 / 17:08:55 / cg"
945
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  6985
!
cb689f3971ab allow editing of color values;
Claus Gittinger <cg@exept.de>
parents: 942
diff changeset
  6986
975
ede3746e0dea use radio buttons
tz
parents: 960
diff changeset
  6987
colorMapMode:aMode
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6988
    "calculates a new color map for the image from aMode.
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6989
     This might involve the computation of a colormap 
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  6990
     (if depth is smaller)"
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6991
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6992
    |depth numColors newColorMap newImage 
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6993
     oldImage image newColors realColorMap oldFileName
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  6994
     usedColors useNearest usageCounts tmpBits tmpMap quest
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  6995
     prevMode maskThreshold maskImage| 
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  6996
3433
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  6997
    oldImage := self image.
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  6998
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  6999
    "/ rubbish; the mode is already changed
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  7000
    "/ prevMode := colorMapMode value.
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  7001
    prevMode := self colorMapModeFromImage:oldImage. 
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  7002
    prevMode == aMode ifTrue:[^ self].
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  7003
    
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7004
    self withExecuteCursorDo:[
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7005
        newColorMap := self class listOfColorMaps at:aMode.
3230
Claus Gittinger <cg@exept.de>
parents: 3227
diff changeset
  7006
        (aMode == #depth32 or:[aMode == #masked32]) ifTrue:[
2572
1c09be361688 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2571
diff changeset
  7007
            depth := 32. 
1c09be361688 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2571
diff changeset
  7008
        ] ifFalse:[
3230
Claus Gittinger <cg@exept.de>
parents: 3227
diff changeset
  7009
            (aMode == #depth24 or:[aMode == #masked24]) ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 3227
diff changeset
  7010
                depth := 24. 
Claus Gittinger <cg@exept.de>
parents: 3227
diff changeset
  7011
            ] ifFalse:[
3370
c88532134a2b #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3367
diff changeset
  7012
                (aMode == #depth16 or:[aMode == #masked16]) ifTrue:[
c88532134a2b #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3367
diff changeset
  7013
                    depth := 16. 
c88532134a2b #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3367
diff changeset
  7014
                ] ifFalse:[
c88532134a2b #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3367
diff changeset
  7015
                    depth := (newColorMap size log:2) asInteger. 
c88532134a2b #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3367
diff changeset
  7016
                ].
3230
Claus Gittinger <cg@exept.de>
parents: 3227
diff changeset
  7017
            ].
2572
1c09be361688 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2571
diff changeset
  7018
        ].
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7019
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7020
        useNearest := false.
928
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  7021
        depth == 1 ifTrue:[
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  7022
            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
  7023
        ] ifFalse:[
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7024
            prevMode isNil ifTrue:[
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7025
                quest := 'Compute colormap (or use standard)'
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7026
            ] ifFalse:[
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7027
                quest := 'Keep colormap (or use standard)'
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7028
            ]
928
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  7029
        ].
3433
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  7030
        
539da315be01 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3430
diff changeset
  7031
        "/ currently always true!!
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7032
        ((prevMode = aMode)
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  7033
          or:[depth > oldImage depth
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  7034
          or:[true "self confirm:(resources string:quest)"]]
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  7035
        ) ifTrue:[
1937
73fb270a4da9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1936
diff changeset
  7036
            (newColorMap isOrderedCollection or:[newColorMap isFixedPalette not]) ifTrue:[
1935
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7037
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7038
                "/ keep the colormap
3355
47dfcea38127 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3349
diff changeset
  7039
                "/ newColorMap atAllPut:Color black.
1935
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7040
                depth > oldImage depth ifTrue:[
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7041
                    "/ easy - simply copy the part
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7042
                    numColors := 1 bitShift:oldImage depth.
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7043
                    0 to:numColors-1 do:[:pixel |
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7044
                        newColorMap at:(pixel+1) put:(oldImage colorFromValue:pixel)
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7045
                    ].
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7046
                ] ifFalse:[
1935
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7047
                    "/ see if all used color fit the new colormap
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7048
                    usedColors := oldImage usedColorsMax:(1 bitShift:depth).
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7049
                    (usedColors notNil and:[usedColors size > (1 bitShift:depth)]) ifTrue:[
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7050
                        usedColors := oldImage realUsedColors
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7051
                    ].
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7052
                    (usedColors notNil and:[usedColors size <= (1 bitShift:depth)]) ifTrue:[
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7053
                        "/ yea - just install them
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7054
                        usedColors asArray keysAndValuesDo:[:idx :clr |
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7055
                            newColorMap at:idx put:clr
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7056
                        ].
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7057
                    ] ifFalse:[
1935
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7058
                        "/ copy over those that are most often used.
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7059
                        oldImage depth < 8 ifTrue:[
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7060
                            tmpBits := ByteArray uninitializedNew:(oldImage width*oldImage height).
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7061
                            oldImage bits
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7062
                                expandPixels:(oldImage depth)
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7063
                                width:oldImage width
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7064
                                height:oldImage height 
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7065
                                into:tmpBits
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7066
                                mapping:nil.
986
4361ba4dbbdc added crob operations.
Claus Gittinger <cg@exept.de>
parents: 982
diff changeset
  7067
                        ] ifFalse:[
1935
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7068
                            oldImage depth == 8 ifTrue:[
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7069
                                tmpBits := oldImage bits
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7070
                            ] ifFalse:[
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7071
                                colorMapMode value:prevMode.
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7072
                                self findColorMapMode.    
3586
87081b50bb22 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 3580
diff changeset
  7073
                                self warn:'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'
87081b50bb22 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 3580
diff changeset
  7074
                                     with: oldImage realUsedColors size.
1935
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7075
                                ^ self
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7076
    "/                            (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
  7077
    "/                            ifFalse:[.
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7078
    "/                                ^ self
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7079
    "/                            ].
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7080
    "/                            self image: (Image newForDepth:depth) fromImage:oldImage.
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7081
    "/                            ^ self.
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7082
                            ]
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7083
                        ].
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7084
                        usageCounts := tmpBits usageCounts.
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7085
                        tmpMap := Array new:usageCounts size.
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7086
                        oldImage colorMap asArray keysAndValuesDo:[:i :clr |
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7087
                            tmpMap at:i put:clr
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7088
                        ].
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7089
                        usageCounts sort:[:a :b | a > b] with:tmpMap.
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7090
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7091
                        1 to:(1 bitShift:depth) do:[:idx |
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7092
                            newColorMap at:idx put:(tmpMap at:idx)
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7093
                        ].
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7094
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7095
                        useNearest := Dialog 
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7096
                                            confirmWithCancel:(resources 
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7097
                                                                  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
  7098
                                                                  with:usedColors size
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7099
                                                                  with:(1 bitShift:depth))
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7100
                                            labels:(resources array:#('Cancel' 'First' 'Nearest')).
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7101
                        useNearest isNil ifTrue:[
1124
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7102
                            colorMapMode value:prevMode.
1935
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7103
                            ^ self   "/ cancel
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7104
                        ].
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7105
                    ]
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7106
                ]
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7107
            ]
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7108
        ] ifFalse:[
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7109
            "/ standard colormap
921
a5aca21ea803 also allow nearest-color mode for standard colormap.
Claus Gittinger <cg@exept.de>
parents: 920
diff changeset
  7110
            usedColors := oldImage usedColors.
a5aca21ea803 also allow nearest-color mode for standard colormap.
Claus Gittinger <cg@exept.de>
parents: 920
diff changeset
  7111
            (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
  7112
                useNearest := Dialog 
928
89bd2304da33 cleaned up imageEitViews interface to my infoPanel
Claus Gittinger <cg@exept.de>
parents: 927
diff changeset
  7113
                                    confirmWithCancel:(resources 
1916
c91c39976bef *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1910
diff changeset
  7114
                                                           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
  7115
                                                       ) 
3505
a7aec486480c #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3497
diff changeset
  7116
                                    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
  7117
                useNearest isNil ifTrue:[
1542
76c2549d878f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1537
diff changeset
  7118
                    colorMapMode value:prevMode.
921
a5aca21ea803 also allow nearest-color mode for standard colormap.
Claus Gittinger <cg@exept.de>
parents: 920
diff changeset
  7119
                    ^ self   "/ cancel
a5aca21ea803 also allow nearest-color mode for standard colormap.
Claus Gittinger <cg@exept.de>
parents: 920
diff changeset
  7120
                ].
a5aca21ea803 also allow nearest-color mode for standard colormap.
Claus Gittinger <cg@exept.de>
parents: 920
diff changeset
  7121
            ].
3356
10e247f059f1 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3355
diff changeset
  7122
            newColorMap := oldImage colorMap.
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7123
        ].
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7124
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7125
        imageEditView makeUndo.
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7126
2260
9a6345ae1c56 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2249
diff changeset
  7127
        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
  7128
        newImage depth:depth.
3230
Claus Gittinger <cg@exept.de>
parents: 3227
diff changeset
  7129
        depth >= 16 ifTrue:[
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  7130
            newImage colorMap:nil. 
3230
Claus Gittinger <cg@exept.de>
parents: 3227
diff changeset
  7131
            depth == 32 ifTrue:[
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  7132
                newImage samplesPerPixel:4; photometric:#rgba.
3230
Claus Gittinger <cg@exept.de>
parents: 3227
diff changeset
  7133
            ] ifFalse:[    
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  7134
                newImage samplesPerPixel:3; photometric:#rgb.
3230
Claus Gittinger <cg@exept.de>
parents: 3227
diff changeset
  7135
            ].    
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  7136
        ].   
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  7137
        "/ newImage photometric:oldImage photometric.
2260
9a6345ae1c56 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2249
diff changeset
  7138
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7139
        oldFileName := oldImage fileName.
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7140
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7141
        Image imageErrorSignal handle:[:ex|
3227
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  7142
            "/ arrive here only if not all colors can be represented;
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  7143
            "/ then do a more expensive nearest color search
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7144
            Color colorErrorSignal handle:[:ex|
1542
76c2549d878f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1537
diff changeset
  7145
                colorMapMode value:prevMode.
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7146
                imageEditView undo.
3586
87081b50bb22 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 3580
diff changeset
  7147
                ^ self warn:('Conversion failed !!')
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7148
            ] do:[
1393
c4a11a7d407f use Image>>newForDepth:
Claus Gittinger <cg@exept.de>
parents: 1392
diff changeset
  7149
                newImage := Image newForDepth:depth.
3103
690eff6e417e class: ImageEditor
Stefan Vogel <sv@exept.de>
parents: 3100
diff changeset
  7150
                newImage 
690eff6e417e class: ImageEditor
Stefan Vogel <sv@exept.de>
parents: 3100
diff changeset
  7151
                    width:oldImage width height:oldImage height depth:depth;
690eff6e417e class: ImageEditor
Stefan Vogel <sv@exept.de>
parents: 3100
diff changeset
  7152
                    colorMap:newColorMap;
690eff6e417e class: ImageEditor
Stefan Vogel <sv@exept.de>
parents: 3100
diff changeset
  7153
                    photometric:#palette;
690eff6e417e class: ImageEditor
Stefan Vogel <sv@exept.de>
parents: 3100
diff changeset
  7154
                    bits:(ByteArray new:(newImage bytesPerRow * newImage height));
690eff6e417e class: ImageEditor
Stefan Vogel <sv@exept.de>
parents: 3100
diff changeset
  7155
                    mask:oldImage mask.
2260
9a6345ae1c56 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2249
diff changeset
  7156
3227
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  7157
                oldImage 
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  7158
                    colorsFromX:0 y:0 
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  7159
                    toX:(oldImage width-1) y:(oldImage height-1) 
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  7160
                    do:[:x :y :clr |
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  7161
                        |newColor|
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  7162
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  7163
                        (newColorMap includes:clr)
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  7164
                            ifTrue: [newColor := clr]
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  7165
                            ifFalse: [
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  7166
                                newColor := clr nearestIn:newColorMap.
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  7167
                                useNearest ifFalse:[
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  7168
                                    (newColor deltaFrom:clr) > 0.5 ifTrue:[
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  7169
                                        newColor := oldImage colorFromValue:0
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  7170
                                    ]
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7171
                                ]
3227
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  7172
                            ].
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  7173
                        newImage colorAtX:x y:y put:newColor.
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  7174
                    ].
2dbc0662a8c7 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3224
diff changeset
  7175
                
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7176
                image := newImage
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7177
            ].
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7178
        ] do:[ 
3461
bd826e508822 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3460
diff changeset
  7179
            |newPhotometric|
bd826e508822 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3460
diff changeset
  7180
bd826e508822 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3460
diff changeset
  7181
            depth == 32 ifTrue:[
bd826e508822 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3460
diff changeset
  7182
                newPhotometric := #rgba.
bd826e508822 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3460
diff changeset
  7183
            ] ifFalse:[
bd826e508822 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3460
diff changeset
  7184
                (newColorMap notNil and:[newColorMap isOrderedCollection or:[newColorMap isFixedPalette not]]) ifTrue:[
bd826e508822 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3460
diff changeset
  7185
                    newPhotometric := #palette
bd826e508822 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3460
diff changeset
  7186
                ]
bd826e508822 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3460
diff changeset
  7187
            ]. 
bd826e508822 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3460
diff changeset
  7188
            image := newImage fromImage:oldImage photometric:newPhotometric.
bd826e508822 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3460
diff changeset
  7189
            "/ -- 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
  7190
        ].
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7191
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  7192
        (aMode asString startsWith:'mask') ifTrue:[
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7193
            image mask isNil ifTrue:[
3436
c37d341dc7f7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3435
diff changeset
  7194
                (oldImage depth == 32 and:[ oldImage photometric == #rgba ]) ifTrue:[
c37d341dc7f7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3435
diff changeset
  7195
                    maskImage := ImageMask fromAlphaInImage:oldImage
c37d341dc7f7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3435
diff changeset
  7196
                ] ifFalse:[    
c37d341dc7f7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3435
diff changeset
  7197
                    false "(Dialog confirm:'Generate mask from black ?' default:false)" ifTrue:[
c37d341dc7f7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3435
diff changeset
  7198
                        maskThreshold := 0.1.
c37d341dc7f7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3435
diff changeset
  7199
                        maskImage := Depth1Image fromImage:(image asThresholdMonochromeImage:maskThreshold). 
c37d341dc7f7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3435
diff changeset
  7200
                    ] ifFalse:[
c37d341dc7f7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3435
diff changeset
  7201
                        maskImage := ImageMask extent:image extent.
c37d341dc7f7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3435
diff changeset
  7202
                        maskImage bits:(ByteArray 
c37d341dc7f7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3435
diff changeset
  7203
                                            new:(maskImage bytesPerRow * maskImage height)
c37d341dc7f7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3435
diff changeset
  7204
                                            withAll:16rFF).
c37d341dc7f7 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3435
diff changeset
  7205
                    ].
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7206
                ].
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7207
                image mask:maskImage.
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7208
            ].
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7209
        ] ifFalse:[ 
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7210
            image mask: nil.
3317
88b892a4012d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3281
diff changeset
  7211
            oldImage mask notNil ifTrue:[
88b892a4012d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3281
diff changeset
  7212
                newImage depth == 32 ifTrue:[
88b892a4012d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3281
diff changeset
  7213
                    newImage computeAlphaValuesFromMask:oldImage mask
88b892a4012d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3281
diff changeset
  7214
                ].
88b892a4012d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3281
diff changeset
  7215
            ].
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7216
        ]. 
1935
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7217
1937
73fb270a4da9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1936
diff changeset
  7218
        (newColorMap isOrderedCollection or:[newColorMap isFixedPalette not]) ifTrue:[
1935
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7219
            realColorMap := OrderedCollection new.
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7220
            image realColorMap do:[:clr|
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7221
                (realColorMap includes: clr) ifFalse: [realColorMap add: clr]
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7222
            ].
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7223
            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
  7224
            newColorMap do:[:clr|
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7225
                ((newColors size < newColorMap size) and: [(newColors includes: clr) not]) 
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7226
                ifTrue:[      
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7227
                    newColors add: clr
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7228
                ]
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7229
            ].                  
27b19cd0274b more 24-bit image editing
Claus Gittinger <cg@exept.de>
parents: 1934
diff changeset
  7230
            image colorMap: newColors.   
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7231
        ].
1446
6f2344ca1e92 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1443
diff changeset
  7232
        image fileName: oldFileName.
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7233
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  7234
        (imageEditView image: image) notNil ifTrue:[
1446
6f2344ca1e92 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1443
diff changeset
  7235
            self fetchImageData.
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7236
        ]
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7237
    ]
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7238
3506
86a5f1bf58fe #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3505
diff changeset
  7239
    "Modified: / 28-11-2017 / 16:39:03 / cg"
3586
87081b50bb22 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 3580
diff changeset
  7240
    "Modified: / 09-08-2018 / 15:59:31 / Claus Gittinger"
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7241
!
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7242
2192
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7243
colorize
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7244
    "interactive Hue editing"
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7245
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7246
    |bindings hueShift lightValue saturationValue originalColormap firstChange acceptChannel 
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7247
     shiftAction avgColorHolder avgColor shiftedColor shiftProcess readySema
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7248
     originalPixels p|
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7249
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7250
    "/ compute the averageColor in the background (while asking user)
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7251
    readySema := Semaphore new.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7252
    [
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7253
        |image|
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7254
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7255
        image := imageEditView image.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7256
        originalColormap := image colorMap copy.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7257
        avgColor := image averageColor.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7258
        originalPixels := image bits.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7259
        readySema signal.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7260
    ] forkAt:7.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7261
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7262
    acceptChannel := TriggerValue new.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7263
    avgColorHolder := avgColor asValue.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7264
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7265
    firstChange := true.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7266
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7267
    shiftedColor := [:clr :hShift :lFactor :sFactor |
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7268
                        Color 
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7269
                                hue:((clr hue) ? 0 + hShift) 
3173
801e6bfe2581 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3172
diff changeset
  7270
                                light:((clr light * lFactor / 100) min:100)
801e6bfe2581 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3172
diff changeset
  7271
                                saturation:(((clr saturation max:20) * sFactor / 100) min:100)].
2192
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7272
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7273
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7274
    shiftAction := 
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7275
        [
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7276
            |hShift lFactor sFactor|
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7277
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7278
            acceptChannel value:true.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7279
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7280
            firstChange ifTrue:[
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7281
                imageEditView makeUndo.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7282
                firstChange := false.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7283
            ].
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7284
            readySema notNil ifTrue:[readySema wait. readySema := nil].
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7285
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7286
            hShift := hueShift value.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7287
            lFactor := lightValue value.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7288
            sFactor := saturationValue value.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7289
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7290
            avgColorHolder value:(shiftedColor value:avgColor value:hShift value:lFactor value:sFactor).
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7291
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7292
            shiftProcess notNil ifTrue:[
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7293
                shiftProcess terminate.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7294
                shiftProcess waitUntilTerminated.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7295
                shiftProcess := nil.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7296
            ].
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7297
            shiftProcess := 
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7298
                [
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7299
                    [
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7300
                        imageEditView image 
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7301
                            colorMap:originalColormap copy;
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7302
                            bits:originalPixels copy;
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7303
                            release;
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7304
                            colorMapProcessing:[:clr | shiftedColor value:clr value:hShift value:lFactor value:sFactor].
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7305
                        self updateImage.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7306
                        self updateInfoLabel.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7307
                        self updateImagePreView.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7308
                    ] ensure:[ shiftProcess := nil ].    
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7309
                ] forkAt:7.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7310
        ].
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7311
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7312
    bindings := IdentityDictionary new.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7313
    bindings at:#hueShiftAmount put:(hueShift := 0 asValue).
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7314
    hueShift onChangeEvaluate:shiftAction.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7315
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7316
    bindings at:#lightAmount put:(lightValue := 100 asValue).
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7317
    lightValue onChangeEvaluate:shiftAction.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7318
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7319
    bindings at:#saturationAmount put:(saturationValue := 100 asValue).
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7320
    saturationValue onChangeEvaluate:shiftAction.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7321
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7322
    bindings at:#acceptChannel put:acceptChannel.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7323
    bindings at:#hlsColor put:avgColorHolder.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7324
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7325
    (self openDialogInterface:#changeHLSDialogSpec withBindings:bindings) 
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7326
    ifFalse:[ 
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7327
        firstChange ~~ true ifTrue:[
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7328
            imageEditView undo
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7329
        ]
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7330
    ].
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7331
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7332
    (p := shiftProcess) notNil ifTrue:[
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7333
        p waitUntilTerminated.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7334
    ].
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7335
    self updateImage.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7336
    self updateImagePreView.
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7337
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7338
    "Created: / 01-11-2007 / 23:27:37 / cg"
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7339
!
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  7340
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7341
compressColorMap
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7342
    "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
  7343
2893
feb4eeba44ad changed:
Stefan Vogel <sv@exept.de>
parents: 2884
diff changeset
  7344
    |newImage| 
feb4eeba44ad changed:
Stefan Vogel <sv@exept.de>
parents: 2884
diff changeset
  7345
feb4eeba44ad changed:
Stefan Vogel <sv@exept.de>
parents: 2884
diff changeset
  7346
    newImage := self image.
feb4eeba44ad changed:
Stefan Vogel <sv@exept.de>
parents: 2884
diff changeset
  7347
    newImage compressColorMap.
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7348
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7349
    (imageEditView image:newImage) notNil ifTrue:[
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7350
        self fetchImageData.
919
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  7351
    ]
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7352
!
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7353
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7354
copyColorFromColormap
1871
42729969c032 set selection interface changed
ca
parents: 1859
diff changeset
  7355
    imageEditView setClipboardObject:(self selectedColorOrNil)
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7356
!
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7357
2174
7beca4d9c93a color-double-click
Claus Gittinger <cg@exept.de>
parents: 2155
diff changeset
  7358
doubleClickOnColor:aColorIndex
7beca4d9c93a color-double-click
Claus Gittinger <cg@exept.de>
parents: 2155
diff changeset
  7359
    self editSelectedColor.
7beca4d9c93a color-double-click
Claus Gittinger <cg@exept.de>
parents: 2155
diff changeset
  7360
7beca4d9c93a color-double-click
Claus Gittinger <cg@exept.de>
parents: 2155
diff changeset
  7361
    "Created: / 22-07-2007 / 13:14:37 / cg"
7beca4d9c93a color-double-click
Claus Gittinger <cg@exept.de>
parents: 2155
diff changeset
  7362
!
7beca4d9c93a color-double-click
Claus Gittinger <cg@exept.de>
parents: 2155
diff changeset
  7363
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  7364
editSelectedColor
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  7365
    self processSelectedColorWith:[:clr | 
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  7366
        |editor|
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  7367
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  7368
        editor := ColorEditDialog new.
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  7369
        editor color:clr.
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  7370
        editor open.
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  7371
        editor accepted ifFalse:[
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  7372
            AbortOperationRequest raise.
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  7373
        ].
3180
9ee8f0e74b96 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3173
diff changeset
  7374
        editor color
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  7375
    ]
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  7376
!
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  7377
1446
6f2344ca1e92 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1443
diff changeset
  7378
fetchImageData
1460
89549732a2c8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1459
diff changeset
  7379
    |image|
89549732a2c8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1459
diff changeset
  7380
89549732a2c8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1459
diff changeset
  7381
    (image := imageEditView image) notNil ifTrue:[
89549732a2c8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1459
diff changeset
  7382
        self findColorMapMode.
89549732a2c8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1459
diff changeset
  7383
        self updateLabelsAndHistory.
3463
7f00ae87ae6c #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3462
diff changeset
  7384
        self updateInfoLabel.
1460
89549732a2c8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1459
diff changeset
  7385
    ]
3463
7f00ae87ae6c #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3462
diff changeset
  7386
7f00ae87ae6c #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3462
diff changeset
  7387
    "Modified: / 24-08-2017 / 18:20:37 / cg"
1446
6f2344ca1e92 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1443
diff changeset
  7388
!
6f2344ca1e92 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1443
diff changeset
  7389
1544
1048b548abfa *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1542
diff changeset
  7390
inspectColor
2573
c18db441c6ab changed #inspectColor
Claus Gittinger <cg@exept.de>
parents: 2572
diff changeset
  7391
    |clrIndex clr|
c18db441c6ab changed #inspectColor
Claus Gittinger <cg@exept.de>
parents: 2572
diff changeset
  7392
c18db441c6ab changed #inspectColor
Claus Gittinger <cg@exept.de>
parents: 2572
diff changeset
  7393
    self hasColormap ifFalse:[
c18db441c6ab changed #inspectColor
Claus Gittinger <cg@exept.de>
parents: 2572
diff changeset
  7394
        clr := self selectedColorOrNil
c18db441c6ab changed #inspectColor
Claus Gittinger <cg@exept.de>
parents: 2572
diff changeset
  7395
    ] ifTrue:[
c18db441c6ab changed #inspectColor
Claus Gittinger <cg@exept.de>
parents: 2572
diff changeset
  7396
        clrIndex := self selectedColorIndexOrNil.
c18db441c6ab changed #inspectColor
Claus Gittinger <cg@exept.de>
parents: 2572
diff changeset
  7397
        clrIndex isNil ifTrue:[
c18db441c6ab changed #inspectColor
Claus Gittinger <cg@exept.de>
parents: 2572
diff changeset
  7398
            ^ self
c18db441c6ab changed #inspectColor
Claus Gittinger <cg@exept.de>
parents: 2572
diff changeset
  7399
        ].
c18db441c6ab changed #inspectColor
Claus Gittinger <cg@exept.de>
parents: 2572
diff changeset
  7400
        clr := self image colorFromValue:clrIndex-1
1544
1048b548abfa *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1542
diff changeset
  7401
    ].
2573
c18db441c6ab changed #inspectColor
Claus Gittinger <cg@exept.de>
parents: 2572
diff changeset
  7402
    clr inspect
1544
1048b548abfa *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1542
diff changeset
  7403
!
1048b548abfa *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1542
diff changeset
  7404
2651
270672891645 changed: #colorMapMenu
Claus Gittinger <cg@exept.de>
parents: 2595
diff changeset
  7405
inspectColormap
270672891645 changed: #colorMapMenu
Claus Gittinger <cg@exept.de>
parents: 2595
diff changeset
  7406
    self hasColormap ifTrue:[
270672891645 changed: #colorMapMenu
Claus Gittinger <cg@exept.de>
parents: 2595
diff changeset
  7407
        self image colorMap inspect
270672891645 changed: #colorMapMenu
Claus Gittinger <cg@exept.de>
parents: 2595
diff changeset
  7408
    ].
270672891645 changed: #colorMapMenu
Claus Gittinger <cg@exept.de>
parents: 2595
diff changeset
  7409
!
270672891645 changed: #colorMapMenu
Claus Gittinger <cg@exept.de>
parents: 2595
diff changeset
  7410
1598
d748419672a3 more colormap operations
Claus Gittinger <cg@exept.de>
parents: 1597
diff changeset
  7411
makeBrighter
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7412
    self updateImageAfterDoing:#makeBrighter.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7413
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7414
    "Modified: / 31-08-2017 / 12:16:30 / cg"
1598
d748419672a3 more colormap operations
Claus Gittinger <cg@exept.de>
parents: 1597
diff changeset
  7415
!
d748419672a3 more colormap operations
Claus Gittinger <cg@exept.de>
parents: 1597
diff changeset
  7416
d748419672a3 more colormap operations
Claus Gittinger <cg@exept.de>
parents: 1597
diff changeset
  7417
makeDarker
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7418
    self updateImageAfterDoing:#makeDarker.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7419
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7420
    "Modified: / 31-08-2017 / 12:16:24 / cg"
1598
d748419672a3 more colormap operations
Claus Gittinger <cg@exept.de>
parents: 1597
diff changeset
  7421
!
d748419672a3 more colormap operations
Claus Gittinger <cg@exept.de>
parents: 1597
diff changeset
  7422
1926
b3d2dab90f9b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1925
diff changeset
  7423
makeGrayScaleImage
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7424
    self updateImageAfterDoing:#makeGrayScaleImage.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7425
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7426
    "Modified: / 31-08-2017 / 12:16:15 / cg"
1436
180804d7c28f added make grayScale
Claus Gittinger <cg@exept.de>
parents: 1435
diff changeset
  7427
!
180804d7c28f added make grayScale
Claus Gittinger <cg@exept.de>
parents: 1435
diff changeset
  7428
1446
6f2344ca1e92 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1443
diff changeset
  7429
makeSelectedColorBrighter
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7430
    self processSelectedColorsWith:[:clr | clr lightened]
1446
6f2344ca1e92 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1443
diff changeset
  7431
!
6f2344ca1e92 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1443
diff changeset
  7432
6f2344ca1e92 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1443
diff changeset
  7433
makeSelectedColorDarker
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7434
    self processSelectedColorsWith:[:clr | clr darkened]
1446
6f2344ca1e92 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1443
diff changeset
  7435
!
6f2344ca1e92 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1443
diff changeset
  7436
1884
2c4d13ecd7ed *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1883
diff changeset
  7437
makeSelectedColorGray
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7438
    self processSelectedColorsWith:[:clr | Color brightness:(clr brightness)]
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7439
!
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7440
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7441
makeSelectedColorShifted
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7442
    "shift the selected color (in the colormap)
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7443
     using the hls/rgb shifting slider dialog"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7444
     
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7445
    |cMap colors cmapOffset|
3195
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
    cMap := self image colorMap.
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7448
    
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7449
    "/ 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
  7450
    cmapOffset := self hasTransparentColorInColorList ifTrue:[1] ifFalse:[0].
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7451
    colors := self selectedColors value collect:[:idx | cMap at:idx-cmapOffset].
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7452
    self changeHLSOfColors:colors.
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7453
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  7454
    "Modified: / 05-09-2017 / 09:03:47 / cg"
1884
2c4d13ecd7ed *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1883
diff changeset
  7455
!
2c4d13ecd7ed *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1883
diff changeset
  7456
3592
149f58a2a522 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3586
diff changeset
  7457
makeSelectedColorSlightlyBrighter
149f58a2a522 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3586
diff changeset
  7458
    self processSelectedColorsWith:[:clr | clr slightlyLightened]
149f58a2a522 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3586
diff changeset
  7459
!
149f58a2a522 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3586
diff changeset
  7460
149f58a2a522 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3586
diff changeset
  7461
makeSelectedColorSlightlyDarker
149f58a2a522 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3586
diff changeset
  7462
    self processSelectedColorsWith:[:clr | clr slightlyDarkened]
149f58a2a522 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3586
diff changeset
  7463
!
149f58a2a522 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3586
diff changeset
  7464
2826
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  7465
makeSlightlyBrighter
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7466
    self updateImageAfterDoing:#makeSlightlyBrighter.
2826
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  7467
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  7468
    "Created: / 24-11-2010 / 11:06:11 / cg"
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7469
    "Modified: / 31-08-2017 / 12:16:01 / cg"
2826
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  7470
!
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  7471
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  7472
makeSlightlyDarker
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7473
    self updateImageAfterDoing:#makeSlightlyDarker.
2826
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  7474
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  7475
    "Created: / 24-11-2010 / 11:06:23 / cg"
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7476
    "Modified: / 31-08-2017 / 12:15:55 / cg"
2826
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  7477
!
Claus Gittinger <cg@exept.de>
parents: 2821
diff changeset
  7478
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7479
menu_clearColormapEntry0AndMaskedPixels
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7480
    "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
  7481
     0 and then clear all masked pixels (to pixelValue 0)"
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7482
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7483
    imageEditView makeUndo.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7484
    self withExecuteCursorDo:[
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7485
        self nonUndoableClearColormapEntry0AndMaskedPixels
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7486
    ]
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7487
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7488
    "Modified: / 31-08-2017 / 14:31:21 / cg"
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7489
!
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7490
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7491
menu_clearMaskedPixels
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7492
    "clear all masked pixels (to pixelValue 0)"
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7493
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7494
    imageEditView makeUndo.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7495
    self withExecuteCursorDo:[
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7496
        self nonUndoableClearMaskedPixels
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7497
    ]
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7498
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7499
    "Modified: / 31-08-2017 / 14:23:20 / cg"
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7500
!
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7501
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7502
menu_compressColorMap
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7503
    "calculates a new color map for the image, using only used colors"
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7504
2893
feb4eeba44ad changed:
Stefan Vogel <sv@exept.de>
parents: 2884
diff changeset
  7505
    |depth oldImage usedColors colorMap| 
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7506
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7507
    oldImage := self image.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7508
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7509
    oldImage photometric ~~ #palette ifTrue:[
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7510
        self information:'Compress colorMap: Only palette images have colormaps.'.
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7511
        ^ self
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7512
    ].
2893
feb4eeba44ad changed:
Stefan Vogel <sv@exept.de>
parents: 2884
diff changeset
  7513
    depth := oldImage depth.
3103
690eff6e417e class: ImageEditor
Stefan Vogel <sv@exept.de>
parents: 3100
diff changeset
  7514
    colorMap := oldImage colorMap asArray.
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7515
    usedColors := oldImage realUsedColors.
2893
feb4eeba44ad changed:
Stefan Vogel <sv@exept.de>
parents: 2884
diff changeset
  7516
    usedColors size == colorMap size ifTrue:[
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7517
        self information:'Compress colorMap: Colormap already compressed - no compression.'.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7518
        ^ self
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7519
    ].
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7520
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7521
    imageEditView makeUndo.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7522
    self withExecuteCursorDo:[
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7523
        self nonUndoableCompressColorMap
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7524
    ]
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7525
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7526
    "Modified: / 31-08-2017 / 14:22:19 / cg"
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7527
!
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7528
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7529
menu_copyMask
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7530
    |mask|
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7531
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7532
    mask := self image mask.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7533
    MaskClipboard := mask subImageIn: (0@0 extent:mask extent).
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7534
!
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7535
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7536
menu_pasteMask
3561
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  7537
    "paste a mask from the clipboard"
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  7538
    
1480
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7539
    |img mask|
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7540
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7541
    imageEditView makeUndo.
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7542
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7543
    img := self image.
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7544
    mask := img mask.
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7545
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7546
    mask 
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7547
         copyFrom:MaskClipboard
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7548
         x:0 y:0
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7549
         toX:0 y:0 
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7550
         width:(mask width min:MaskClipboard width)
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7551
         height:(mask height min:MaskClipboard height).
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7552
    img mask:mask.
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7553
    (imageEditView image:img copy) notNil ifTrue:[
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7554
        self fetchImageData.
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7555
    ]
3561
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  7556
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  7557
    "Modified (comment): / 27-05-2018 / 11:11:54 / Claus Gittinger"
1480
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7558
!
43c18932d2e8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1479
diff changeset
  7559
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7560
menu_sortColorMap
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7561
    "calculates a new color map for the image, sorting colors"
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7562
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7563
    self menu_sortColorMapWith:self sortBlockForColors
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7564
!
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7565
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7566
menu_sortColorMapWith:sortBlock
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7567
    "calculates a new color map for the image, sorting colors"
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7568
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7569
    self image photometric ~~ #palette ifTrue:[
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7570
        self information:'Compress colorMap: Only palette images have colormaps.'.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7571
        ^ self
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7572
    ].
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7573
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7574
    imageEditView makeUndo.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7575
    self withExecuteCursorDo:[
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7576
        self nonUndoableSortColorMapWith:sortBlock
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7577
    ]
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7578
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7579
    "Created: / 30-09-1998 / 23:51:23 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7580
    "Modified: / 31-08-2017 / 14:20:14 / cg"
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7581
!
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7582
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7583
pasteColorIntoColormap
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  7584
    |clipBoardColor cmap|
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  7585
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  7586
    (clipBoardColor := self clipBoardColor) isNil ifTrue:[                
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7587
        ^ self
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7588
    ].
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7589
3393
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7590
    cmap := self image colorMap.
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7591
    (cmap isNil or:[cmap isMappedPalette or:[cmap isFixedPalette]]) ifTrue:[
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7592
        drawingColormap isNil ifTrue:[
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7593
            drawingColormap := #()
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7594
        ].
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  7595
        drawingColormap := drawingColormap copyWith:clipBoardColor.
3393
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7596
        self selectedColors value:drawingColormap size.
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7597
        ^ self.
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7598
    ].
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7599
    
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  7600
    self processSelectedColorWith:[:clr | clipBoardColor]
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  7601
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  7602
    "Modified (format): / 08-10-2017 / 09:03:59 / cg"
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7603
!
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  7604
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7605
pickAndAddColorToColormap
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7606
    self addColorToColormap:(Color fromUser) undoable:true
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7607
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7608
    "Modified: / 31-08-2017 / 14:30:22 / cg"
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7609
!
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7610
1933
2fe701f721ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1931
diff changeset
  7611
pickAndPasteColor
2fe701f721ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1931
diff changeset
  7612
    self pickColor.
2fe701f721ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1931
diff changeset
  7613
    self pasteColorIntoColormap.
2fe701f721ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1931
diff changeset
  7614
!
2fe701f721ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1931
diff changeset
  7615
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7616
pickColor
1871
42729969c032 set selection interface changed
ca
parents: 1859
diff changeset
  7617
    imageEditView setClipboardObject:(Color fromUser)
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7618
!
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7619
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7620
processSelectedColorWith:aBlock
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7621
    "undoable color processing: 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7622
     the selected color will be replaced by the value of aBlock"
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7623
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7624
    self processSelectedColorsWith:aBlock.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7625
!
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7626
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7627
processSelectedColorsWith:aBlock
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  7628
    "undoable color processing:
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  7629
     the selected colors will be replaced by the value of aBlock
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7630
     (which gets a color vector and must return a color vector)"
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7631
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  7632
    |img cMap modifiedColormap oldColors newImage selectedColorIndices newColors maskOffset processingSubset|
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7633
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7634
    selectedColorIndices := self selectedColors value.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7635
    selectedColorIndices isEmptyOrNil ifTrue:[^ self].
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7636
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7637
    img := self image.
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  7638
    self hasTransparentColorInColorList ifTrue:[
3281
15b8e734190a #OTHER by stefan
Stefan Vogel <sv@exept.de>
parents: 3253
diff changeset
  7639
        maskOffset := 1.
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7640
    ] ifFalse:[
3281
15b8e734190a #OTHER by stefan
Stefan Vogel <sv@exept.de>
parents: 3253
diff changeset
  7641
        maskOffset := 0.
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7642
    ].
3393
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7643
    cMap := img colorMap.
3418
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  7644
    (cMap isNil) ifTrue:[
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  7645
        oldColors := drawingColormap.
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  7646
        processingSubset := false.
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  7647
    ] ifFalse:[
3561
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  7648
        ("cMap isMappedPalette or:["cMap isFixedPalette"]") ifTrue:[
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  7649
            oldColors := cMap asArray.
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  7650
            processingSubset := false.
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  7651
        ] ifFalse:[
3418
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  7652
            oldColors := selectedColorIndices collect:[:idx | cMap at:idx-maskOffset].
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  7653
            processingSubset := true.
3418
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  7654
        ].
3393
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7655
    ].
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7656
    imageEditView makeUndo.
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7657
2992
a970017936e7 Refactor:
Stefan Vogel <sv@exept.de>
parents: 2945
diff changeset
  7658
    modifiedColormap := cMap asNewArray.
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  7659
    (selectedColorIndices max - maskOffset)  > modifiedColormap size ifTrue:[
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  7660
        |t|
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  7661
        t := Array new:(selectedColorIndices max - maskOffset).
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  7662
        t replaceFrom:1 with:modifiedColormap.
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  7663
        modifiedColormap := t.
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  7664
    ].
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  7665
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7666
    newColors := oldColors collect:aBlock.
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  7667
    processingSubset ifTrue:[
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  7668
        selectedColorIndices with:newColors do:[:idx :newColor |
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  7669
            modifiedColormap at:idx-maskOffset put:newColor.
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  7670
        ].
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  7671
    ] ifFalse:[
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  7672
        selectedColorIndices do:[:idx |
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  7673
            modifiedColormap at:idx-maskOffset put:(newColors at:idx-maskOffset ifAbsent:[self halt.Color black])
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  7674
        ].
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  7675
     ].
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7676
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7677
    newImage := img species new
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7678
                    width:img width
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7679
                    height:img height
1843
771731481a20 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1842
diff changeset
  7680
                    depth:img depth
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7681
                    fromArray:img bits.
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7682
3418
8d56341c2706 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3417
diff changeset
  7683
    (cMap isNil) ifTrue:[
3393
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7684
        "/ only a dummy...
3546
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  7685
    ] ifFalse:[
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  7686
        newImage colorMap:modifiedColormap.
4ee729a8a483 #BUGFIX by mawalch
mawalch
parents: 3543
diff changeset
  7687
        newImage photometric:#palette.
3393
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7688
    ].
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7689
    newImage fileName:img fileName.
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7690
    newImage mask:(img mask copy).
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7691
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7692
    (imageEditView image:newImage) notNil ifTrue:[
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7693
        self fetchImageData.
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7694
    ].
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7695
    self selectedColors value:selectedColorIndices.
3393
1cffdeb837af #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3380
diff changeset
  7696
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  7697
    "Modified: / 08-10-2017 / 09:20:13 / cg"
3561
b309d1d1b45c #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3553
diff changeset
  7698
    "Modified: / 27-05-2018 / 10:34:25 / Claus Gittinger"
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7699
!
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7700
1124
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7701
reduceNumberOfColors
3464
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  7702
    "reduce by masking off r/g/b bits"
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  7703
1727
8c626d784494 color reduction algorithm fixed
Claus Gittinger <cg@exept.de>
parents: 1716
diff changeset
  7704
    |s n anyChange img usedColors|
1124
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7705
2817
Claus Gittinger <cg@exept.de>
parents: 2814
diff changeset
  7706
    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
  7707
    s size == 0 ifTrue:[^ self].
1934
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7708
1124
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7709
    n := Integer readFrom:s onError:0.
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7710
    (n between:1 and:7) ifFalse:[
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7711
        Dialog warn:'Image unchanged'.
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7712
        ^ self
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7713
    ].
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7714
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7715
    self withExecuteCursorDo:[
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7716
        anyChange := imageEditView reduceColorResolutionBy:n.
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7717
        anyChange ifFalse:[
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7718
            Dialog warn:'Image unchanged'.
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7719
        ] ifTrue:[
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7720
            img := imageEditView image.
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7721
            imageEditView image:img.
1446
6f2344ca1e92 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1443
diff changeset
  7722
6f2344ca1e92 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1443
diff changeset
  7723
            self fetchImageData.
1727
8c626d784494 color reduction algorithm fixed
Claus Gittinger <cg@exept.de>
parents: 1716
diff changeset
  7724
            usedColors := img usedColorsMax:10000.
8c626d784494 color reduction algorithm fixed
Claus Gittinger <cg@exept.de>
parents: 1716
diff changeset
  7725
            usedColors size == 10000 ifTrue:[
8c626d784494 color reduction algorithm fixed
Claus Gittinger <cg@exept.de>
parents: 1716
diff changeset
  7726
                Dialog information:('>= ' , usedColors size printString , ' colors used.')
8c626d784494 color reduction algorithm fixed
Claus Gittinger <cg@exept.de>
parents: 1716
diff changeset
  7727
            ] ifFalse:[
8c626d784494 color reduction algorithm fixed
Claus Gittinger <cg@exept.de>
parents: 1716
diff changeset
  7728
                Dialog information:(usedColors size printString , ' colors used.')
8c626d784494 color reduction algorithm fixed
Claus Gittinger <cg@exept.de>
parents: 1716
diff changeset
  7729
            ]
1124
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7730
        ]
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7731
    ].
2817
Claus Gittinger <cg@exept.de>
parents: 2814
diff changeset
  7732
Claus Gittinger <cg@exept.de>
parents: 2814
diff changeset
  7733
    "Modified: / 29-10-2010 / 18:08:01 / cg"
3464
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  7734
    "Modified (comment): / 24-08-2017 / 20:50:28 / cg"
1124
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7735
!
2392df0934bc checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1123
diff changeset
  7736
1930
7b5ec69e6526 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1929
diff changeset
  7737
reduceNumberOfColors2
3464
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  7738
    "reduce by rounding r/g/b channel values"
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  7739
    
1938
99d611caf3bd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1937
diff changeset
  7740
    |s rndR rndG rndB usedColors image newImage|
99d611caf3bd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1937
diff changeset
  7741
99d611caf3bd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1937
diff changeset
  7742
    s := Dialog request:'Rounding Interval red (2..) ?' initialAnswer:4.
1934
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7743
    s size == 0 ifTrue:[^ self].
1938
99d611caf3bd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1937
diff changeset
  7744
    rndR := Integer readFrom:s onError:0.
1939
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  7745
1938
99d611caf3bd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1937
diff changeset
  7746
    s := Dialog request:'Rounding Interval green (2..) ?' initialAnswer:2.
99d611caf3bd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1937
diff changeset
  7747
    s size == 0 ifTrue:[^ self].
99d611caf3bd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1937
diff changeset
  7748
    rndG := Integer readFrom:s onError:0.
1939
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  7749
1938
99d611caf3bd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1937
diff changeset
  7750
    s := Dialog request:'Rounding Interval blue (2..) ?' initialAnswer:10.
99d611caf3bd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1937
diff changeset
  7751
    s size == 0 ifTrue:[^ self].
99d611caf3bd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1937
diff changeset
  7752
    rndB := Integer readFrom:s onError:0.
1939
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  7753
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  7754
    ((rndR > 1) or:[(rndG > 1) or:[(rndB > 1)]]) ifFalse:[
1930
7b5ec69e6526 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1929
diff changeset
  7755
        Dialog warn:'Image unchanged'.
7b5ec69e6526 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1929
diff changeset
  7756
        ^ self
7b5ec69e6526 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1929
diff changeset
  7757
    ].
7b5ec69e6526 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1929
diff changeset
  7758
7b5ec69e6526 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1929
diff changeset
  7759
    self withExecuteCursorDo:[
3463
7f00ae87ae6c #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3462
diff changeset
  7760
        |reduceColor nUsed|
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7761
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7762
        reduceColor :=
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7763
            [:clr |
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7764
                |r g b nr ng nb|
1934
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7765
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7766
                r := clr redByte.
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7767
                g := clr greenByte.
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7768
                b := clr blueByte. 
1938
99d611caf3bd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1937
diff changeset
  7769
                nr := (r roundTo:rndR) min:255.
99d611caf3bd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1937
diff changeset
  7770
                ng := (g roundTo:rndG) min:255.
99d611caf3bd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1937
diff changeset
  7771
                nb := (b roundTo:rndB) min:255. 
1934
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7772
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7773
                Color redByte:nr greenByte:ng blueByte:nb.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7774
            ].
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7775
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7776
        image := self image.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7777
        "/ usedColors := image usedColorsMax:4096.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7778
        imageEditView makeUndo.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7779
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7780
        newImage := image copy.
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7781
        newImage photometric == #palette ifTrue:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7782
            newImage colorMap:(image colorMap collect:reduceColor).
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7783
        ] ifFalse:[
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7784
            image
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7785
                colorsFromX:0 y:0 toX:(image width-1) y:(image height-1) 
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7786
                do:[:x :y :clr |
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7787
                    newImage colorAtX:x y:y put:(reduceColor value:clr)
2260
9a6345ae1c56 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2249
diff changeset
  7788
                ].
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7789
        ].
1934
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7790
        imageEditView image:newImage.
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7791
        imageEditView setModified.
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7792
        self updateImage.
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7793
        self updateImagePreView.
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7794
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7795
        self fetchImageData.
3463
7f00ae87ae6c #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3462
diff changeset
  7796
        
1934
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7797
        usedColors := newImage usedColorsMax:10000.
3463
7f00ae87ae6c #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3462
diff changeset
  7798
        nUsed := usedColors size.
7f00ae87ae6c #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3462
diff changeset
  7799
        nUsed == 10000 ifTrue:[
7f00ae87ae6c #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3462
diff changeset
  7800
            Dialog information:('>= ' , nUsed printString , ' colors used.')
1934
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7801
        ] ifFalse:[
3463
7f00ae87ae6c #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3462
diff changeset
  7802
            Dialog information:(nUsed printString , ' colors used.')
1934
294d0e102881 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1933
diff changeset
  7803
        ]
1930
7b5ec69e6526 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1929
diff changeset
  7804
    ].
2054
56352366d94a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2044
diff changeset
  7805
3463
7f00ae87ae6c #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3462
diff changeset
  7806
    "Modified: / 24-08-2017 / 18:25:04 / cg"
3464
9e3d52c9cca3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3463
diff changeset
  7807
    "Modified (comment): / 24-08-2017 / 20:50:14 / cg"
1930
7b5ec69e6526 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1929
diff changeset
  7808
!
7b5ec69e6526 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1929
diff changeset
  7809
2446
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  7810
selectColor:aColor
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  7811
    |idx img cMap|
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  7812
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  7813
    aColor isNil ifTrue:[
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  7814
        idx := nil.
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  7815
    ] ifFalse:[
2791
7d01ac3a20e7 changed: #selectColor:
Claus Gittinger <cg@exept.de>
parents: 2790
diff changeset
  7816
        img := self image.
7d01ac3a20e7 changed: #selectColor:
Claus Gittinger <cg@exept.de>
parents: 2790
diff changeset
  7817
        img notNil ifTrue: [
7d01ac3a20e7 changed: #selectColor:
Claus Gittinger <cg@exept.de>
parents: 2790
diff changeset
  7818
            aColor == Color noColor ifTrue:[
7d01ac3a20e7 changed: #selectColor:
Claus Gittinger <cg@exept.de>
parents: 2790
diff changeset
  7819
                (img mask notNil) ifTrue:[
7d01ac3a20e7 changed: #selectColor:
Claus Gittinger <cg@exept.de>
parents: 2790
diff changeset
  7820
                    idx := 1.
7d01ac3a20e7 changed: #selectColor:
Claus Gittinger <cg@exept.de>
parents: 2790
diff changeset
  7821
                ]
7d01ac3a20e7 changed: #selectColor:
Claus Gittinger <cg@exept.de>
parents: 2790
diff changeset
  7822
            ] ifFalse:[
2447
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7823
                (cMap := self listOfColors) notNil ifTrue:[
2446
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  7824
                    idx := cMap indexOf:aColor ifAbsent:nil.
2447
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7825
                ].
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7826
                idx isNil ifTrue:[
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7827
                    "/ should not happen...
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7828
                    (cMap := img colorMap) notNil ifTrue:[
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7829
                        idx := cMap indexOf:aColor ifAbsent:nil.
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7830
                        idx notNil ifTrue:[
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7831
                            img mask notNil ifTrue:[
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7832
                                idx := idx + 1.
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7833
                            ].
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7834
                        ]
2446
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  7835
                    ].
2447
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7836
                ].
2446
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  7837
            ].
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  7838
        ].
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  7839
    ].
3195
32e373ae50fa class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3191
diff changeset
  7840
    self selectedColors value:{idx}.
2790
2c90a15a0011 changed: #selectColor:
Claus Gittinger <cg@exept.de>
parents: 2771
diff changeset
  7841
2791
7d01ac3a20e7 changed: #selectColor:
Claus Gittinger <cg@exept.de>
parents: 2790
diff changeset
  7842
    "Modified: / 02-07-2010 / 12:06:07 / cg"
2446
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  7843
!
862717a7ca0f color selection when undoing
Claus Gittinger <cg@exept.de>
parents: 2438
diff changeset
  7844
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7845
selectedColorIndexOrNil
2651
270672891645 changed: #colorMapMenu
Claus Gittinger <cg@exept.de>
parents: 2595
diff changeset
  7846
    |img clrIndex|
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7847
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7848
    img := self image.
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7849
    img isNil ifTrue:[
2764
30ba284f0818 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
  7850
        "/ self warn:'No Image.'.
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7851
        ^ nil
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7852
    ].
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7853
    clrIndex := self selectionOfColor value.
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  7854
    self hasTransparentColorInColorList ifTrue: [ 
2449
5ef668d71314 changed #selectedColorIndexOrNil
Claus Gittinger <cg@exept.de>
parents: 2447
diff changeset
  7855
        (clrIndex isInteger and:[clrIndex > 1]) ifTrue:[
5ef668d71314 changed #selectedColorIndexOrNil
Claus Gittinger <cg@exept.de>
parents: 2447
diff changeset
  7856
            ^ clrIndex - 1 
5ef668d71314 changed #selectedColorIndexOrNil
Claus Gittinger <cg@exept.de>
parents: 2447
diff changeset
  7857
        ].
5ef668d71314 changed #selectedColorIndexOrNil
Claus Gittinger <cg@exept.de>
parents: 2447
diff changeset
  7858
        ^ nil
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  7859
    ].
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7860
    ^ clrIndex
3487
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  7861
f54ee88a464d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3479
diff changeset
  7862
    "Modified: / 05-09-2017 / 09:04:05 / cg"
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7863
!
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  7864
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7865
selectedColorOrNil
2447
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7866
    |cmapIndex img cMap colorList|
1896
ab2b45d8ccc8 colorMap fixes
penk
parents: 1889
diff changeset
  7867
ab2b45d8ccc8 colorMap fixes
penk
parents: 1889
diff changeset
  7868
    cmapIndex := self selectedColorIndexOrNil.
1900
41ba86fb1087 cleanup
Claus Gittinger <cg@exept.de>
parents: 1899
diff changeset
  7869
    cmapIndex isNil ifTrue:[^ nil].
2556
736533777318 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2546
diff changeset
  7870
    cmapIndex == 0 ifTrue:[^ nil].
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7871
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7872
    img := self image.
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7873
    cMap := img colorMap.
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7874
    cMap isNil ifTrue:[
2447
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7875
        "/ 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
  7876
        colorList := self listOfColors.
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7877
        colorList notNil ifTrue:[
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7878
            ^ colorList at:cmapIndex ifAbsent:nil
017ac2e500f7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  7879
        ].
1900
41ba86fb1087 cleanup
Claus Gittinger <cg@exept.de>
parents: 1899
diff changeset
  7880
        ^ nil
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7881
    ].
1896
ab2b45d8ccc8 colorMap fixes
penk
parents: 1889
diff changeset
  7882
    ^ cMap at:cmapIndex.
1852
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7883
!
c40abf408dc4 pick, copy & paste color
Claus Gittinger <cg@exept.de>
parents: 1847
diff changeset
  7884
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7885
sortColorMap
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7886
    "calculates a new color map for the image, sorting colors"
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  7887
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7888
    self nonUndoableSortColorMapWith:self sortBlockForColorsByRGB
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7889
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7890
    "Modified: / 31-08-2017 / 14:20:07 / cg"
1939
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  7891
!
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  7892
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  7893
sortColorMapWith:sortBlock
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7894
    "warning: not undoable
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7895
     calculates a new color map for the image, sorting colors"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7896
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7897
    |depth newColorMap newImage oldImage usedColors oldToNew oldBits newBits tmpBits
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7898
     expectedSize w h| 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7899
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7900
    oldImage := self image.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7901
    depth := oldImage depth.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7902
    w := oldImage width.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7903
    h := oldImage height.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7904
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7905
    usedColors := oldImage realColorMap.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7906
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7907
    "/ translation table
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7908
    oldToNew := ByteArray new:(1 bitShift:depth).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7909
    newColorMap := usedColors asArray.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7910
    newColorMap sort:sortBlock.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7911
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7912
    oldImage colorMap asArray keysAndValuesDo:[:oldIdx :clr |
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7913
        |newPixel|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7914
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7915
        (usedColors includes:clr) ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7916
            newPixel := newColorMap indexOf:clr.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7917
            oldToNew at:oldIdx put:newPixel-1.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7918
        ]
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7919
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7920
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7921
    oldBits := oldImage bits.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7922
    "/ sanity check...
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7923
    expectedSize := ((w * h * depth + 7) // 8).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7924
    (oldBits size < expectedSize) ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7925
        self halt:'incorrect pixeldata size'.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7926
        oldBits := (ByteArray new:expectedSize) replaceFrom:1 with:oldBits; yourself.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7927
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7928
    newBits := ByteArray new:(oldBits size).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7929
    depth ~~ 8 ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7930
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7931
        "/ expand/compress can only handle 8bits
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7932
        tmpBits := ByteArray uninitializedNew:(w*h).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7933
        oldBits
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7934
            expandPixels:depth
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7935
            width:w height:h 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7936
            into:tmpBits
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7937
            mapping:oldToNew.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7938
        tmpBits
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7939
            compressPixels:depth 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7940
            width:w height:h 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7941
            into:newBits 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7942
            mapping:nil
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7943
    ] ifFalse:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7944
        oldBits
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7945
            expandPixels:depth
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7946
            width:w height:h 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7947
            into:newBits
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7948
            mapping:oldToNew.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7949
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7950
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7951
    newImage := oldImage species new
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7952
                    width:w height:h depth:depth
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7953
                    fromArray:newBits.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7954
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7955
    newImage colorMap:newColorMap.  
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7956
    newImage fileName:oldImage fileName.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7957
    newImage mask:(oldImage mask copy).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7958
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7959
    (imageEditView image:newImage) notNil ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7960
        self fetchImageData.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7961
    ]
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7962
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7963
    "Modified: / 15-09-1998 / 17:53:32 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7964
    "Created: / 30-09-1998 / 23:51:23 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7965
    "Modified (comment): / 31-08-2017 / 14:19:21 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7966
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7967
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7968
updateImageAfterDoing:aBlockOrSelector
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7969
    self withExecuteCursorDo:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7970
        aBlockOrSelector value:imageEditView.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7971
        self updateImage.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7972
    ].
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
    "Created: / 31-08-2017 / 12:14:39 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7975
! !
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
!ImageEditor methodsFor:'user actions-colormap-basic'!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7978
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7979
nonUndoableClearColormapEntry0AndMaskedPixels
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7980
    "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
  7981
     0 and then clear all masked pixels (to pixelValue 0).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7982
     This is required for windows icons to be really transparent"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7983
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7984
    |index colorMap| 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7985
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7986
    self nonUndoableCompressColorMap.
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
    colorMap := self image colorMap.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7989
    (colorMap includes:(Color black)) ifFalse:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7990
        self addColorToColormap:(Color black) undoable:false.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7991
        colorMap := self image colorMap.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7992
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7993
    index := colorMap indexOf:(Color black).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7994
    index == 1 ifFalse:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7995
        self nonUndoableSortColorMapWith:self sortBlockForColorsByRGB.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7996
        colorMap := self image colorMap.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7997
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  7998
    self nonUndoableClearMaskedPixels
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: / 31-08-2017 / 14:31:09 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8001
!
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
nonUndoableClearMaskedPixels
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8004
    "clear all masked pixels (to pixelValue 0)"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8005
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8006
    |newImage| 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8007
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8008
    newImage := self image clearMaskedPixels.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8009
    0 to:newImage height - 1 do:[:y |
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8010
        0 to:newImage width - 1 do:[:x |
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8011
            (newImage maskAtX:x y:y) == 0 ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8012
                newImage pixelAtX:x y:y put:0
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8013
            ]
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8014
        ]
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8015
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8016
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8017
    (imageEditView image:newImage) notNil ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8018
        self fetchImageData.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8019
    ]
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8020
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8021
    "Created: / 31-08-2017 / 14:22:58 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8022
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8023
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8024
nonUndoableCompressColorMap
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8025
    "not undoable
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8026
     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
  8027
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8028
    |newImage| 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8029
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8030
    newImage := self image.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8031
    newImage compressColorMap.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8032
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8033
    (imageEditView image:newImage) notNil ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8034
        self fetchImageData.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8035
    ]
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8036
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8037
    "Created: / 31-08-2017 / 14:21:51 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8038
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8039
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8040
nonUndoableSortColorMapWith:sortBlock
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8041
    "not undoable
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8042
     calculates a new color map for the image, sorting colors"
1939
1ea7c8639468 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1938
diff changeset
  8043
3224
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  8044
    |depth newColorMap newImage oldImage usedColors oldToNew oldBits newBits tmpBits
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  8045
     expectedSize w h| 
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  8046
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  8047
    oldImage := self image.
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  8048
    depth := oldImage depth.
3224
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  8049
    w := oldImage width.
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  8050
    h := oldImage height.
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  8051
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  8052
    usedColors := oldImage realColorMap.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  8053
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  8054
    "/ translation table
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  8055
    oldToNew := ByteArray new:(1 bitShift:depth).
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  8056
    newColorMap := usedColors asArray.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  8057
    newColorMap sort:sortBlock.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  8058
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  8059
    oldImage colorMap asArray keysAndValuesDo:[:oldIdx :clr |
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  8060
        |newPixel|
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  8061
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  8062
        (usedColors includes:clr) ifTrue:[
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  8063
            newPixel := newColorMap indexOf:clr.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  8064
            oldToNew at:oldIdx put:newPixel-1.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  8065
        ]
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  8066
    ].
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  8067
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  8068
    oldBits := oldImage bits.
3224
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  8069
    "/ sanity check...
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  8070
    expectedSize := ((w * h * depth + 7) // 8).
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  8071
    (oldBits size < expectedSize) ifTrue:[
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  8072
        self halt:'incorrect pixeldata size'.
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  8073
        oldBits := (ByteArray new:expectedSize) replaceFrom:1 with:oldBits; yourself.
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  8074
    ].
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  8075
    newBits := ByteArray new:(oldBits size).
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  8076
    depth ~~ 8 ifTrue:[
3224
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  8077
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  8078
        "/ expand/compress can only handle 8bits
3224
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  8079
        tmpBits := ByteArray uninitializedNew:(w*h).
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  8080
        oldBits
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  8081
            expandPixels:depth
3224
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  8082
            width:w height:h 
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  8083
            into:tmpBits
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  8084
            mapping:oldToNew.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  8085
        tmpBits
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  8086
            compressPixels:depth 
3224
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  8087
            width:w height:h 
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  8088
            into:newBits 
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  8089
            mapping:nil
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  8090
    ] ifFalse:[
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  8091
        oldBits
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  8092
            expandPixels:depth
3224
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  8093
            width:w height:h 
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  8094
            into:newBits
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  8095
            mapping:oldToNew.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  8096
    ].
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  8097
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  8098
    newImage := oldImage species new
3224
98a659b6bd10 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3200
diff changeset
  8099
                    width:w height:h depth:depth
2652
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  8100
                    fromArray:newBits.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  8101
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  8102
    newImage colorMap:newColorMap.  
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  8103
    newImage fileName:oldImage fileName.
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  8104
    newImage mask:(oldImage mask copy).
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  8105
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  8106
    (imageEditView image:newImage) notNil ifTrue:[
1583e5525196 menu order
Claus Gittinger <cg@exept.de>
parents: 2651
diff changeset
  8107
        self fetchImageData.
1008
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  8108
    ]
327f93d57c7b fixed d24 -> d8 conversion;
Claus Gittinger <cg@exept.de>
parents: 996
diff changeset
  8109
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8110
    "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
  8111
! !
4e50c3164625 more options (preserving colorMap) when changing the colorMapMode;
Claus Gittinger <cg@exept.de>
parents: 917
diff changeset
  8112
1715
9eebdb3802aa method category rename
Claus Gittinger <cg@exept.de>
parents: 1713
diff changeset
  8113
!ImageEditor methodsFor:'user actions-editing'!
400
228524287573 intitial checkin
tz
parents:
diff changeset
  8114
3417
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  8115
autoCropAll
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  8116
    "find all borders and cut them off"
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  8117
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  8118
    imageEditView autoCropLeft:true right:true top:true bottom:true.   
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  8119
    self updateInfoLabel
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  8120
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  8121
    "Created: / 20-02-2017 / 18:05:38 / cg"
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  8122
!
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  8123
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  8124
autoCropBottom
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  8125
    "find a bottom border and cut it off"
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  8126
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  8127
    imageEditView autoCropLeft:false right:false top:false bottom:true.   
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  8128
    self updateInfoLabel
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  8129
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  8130
    "Created: / 20-02-2017 / 18:05:45 / cg"
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  8131
!
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  8132
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  8133
autoCropLeft
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  8134
    "find a left border and cut it off"
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  8135
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  8136
    imageEditView autoCropLeft:true right:false top:false bottom:false.   
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  8137
    self updateInfoLabel
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  8138
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  8139
    "Created: / 20-02-2017 / 18:05:52 / cg"
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  8140
!
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  8141
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  8142
autoCropRight
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  8143
    "find a right border and cut it off"
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  8144
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  8145
    imageEditView autoCropLeft:false right:true top:false bottom:false.   
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  8146
    self updateInfoLabel
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  8147
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  8148
    "Created: / 20-02-2017 / 18:04:20 / cg"
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  8149
!
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  8150
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  8151
autoCropTop
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  8152
    "find a top border and cut it off"
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  8153
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  8154
    imageEditView autoCropLeft:false right:false top:true bottom:false.   
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  8155
    self updateInfoLabel
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  8156
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  8157
    "Created: / 20-02-2017 / 18:06:03 / cg"
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  8158
!
4960f19dca36 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3416
diff changeset
  8159
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8160
ditherGrayToDepth
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8161
    self askForDepthThenDo:[:depth |
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8162
        self ditherGrayToDepth:depth
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8163
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8164
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8165
    "Created: / 24-08-2017 / 17:49:42 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8166
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8167
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8168
ditherGrayToDepth:depth
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8169
    self withExecuteCursorDo:[
3497
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8170
        |image newImage|
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8171
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8172
        image := self image.
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8173
        depth == 1 ifTrue:[
3497
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8174
            newImage := image asErrorDitheredMonochromeImage
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8175
        ] ifFalse:[
3497
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8176
            newImage := image asGrayImageDepth:depth dither:#floydSteinberg.
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8177
        ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8178
        imageEditView newImageWithUndo:newImage.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8179
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8180
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8181
    "Created: / 24-08-2017 / 17:51:07 / cg"
3497
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8182
    "Modified: / 23-10-2017 / 10:58:18 / cg"
3476
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
ditherToDepth
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8186
    self askForDepthThenDo:[:depth |
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8187
        self convertToDepth:depth dither:true
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8190
    "Created: / 07-07-2006 / 13:22:10 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8191
    "Modified: / 30-08-2017 / 00:34:42 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8192
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8193
3497
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8194
ditherToNumberOfGrayColors
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8195
    |oldDepth numGrayColors suggestion grayImage userInput grayColors|
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8196
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8197
    oldDepth := self image depth.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8198
    grayImage := self image asGrayImageDepth:8.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8199
    
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8200
    suggestion := LastNumThresholdGrayColors notNil ifTrue:[
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8201
                    LastNumThresholdGrayColors
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8202
                  ] ifFalse:[
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8203
                    oldDepth > 8 
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8204
                        ifTrue:[256] 
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8205
                        ifFalse:[2 raisedTo:((oldDepth // 2 - 1) nextPowerOf2)]
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8206
                  ].
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8207
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8208
    Dialog modifyingBoxWith:[:box |
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8209
        |preview slider update thresholdValue|
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8210
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8211
        thresholdValue := suggestion asValue.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8212
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8213
        box enterField 
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8214
            converter:(PrintConverter new initForNumber);
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8215
            model:thresholdValue.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8216
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8217
        box verticalPanel extent:1.0 @ 300.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8218
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8219
        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
  8220
        slider model:thresholdValue.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8221
        slider width:1.0; leftInset:4; rightInset:4.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8222
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8223
        box verticalPanel add:(preview := ImageView new).
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8224
        preview extent:300 @300.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8225
        preview level:-1.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8226
        box verticalPanel horizontalLayout:#fitSpace.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8227
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8228
        update := 
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8229
            [
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8230
                |numGrayColors depth s t tImage|
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8231
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8232
                numGrayColors := thresholdValue value clampBetween:2 and:256.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8233
                grayColors := Color grayColorVector:numGrayColors.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8234
                tImage := grayImage asDitheredImageUsing:grayColors depth:(grayImage depth).
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8235
                
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8236
                preview image:(tImage magnifiedPreservingRatioTo:preview extent).
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8237
            ].
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8238
        update value.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8239
        box enterField acceptOnLostFocus:true.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8240
        box enterField acceptOnLeave:true.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8241
        thresholdValue onChangeEvaluate:update.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8242
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8243
    ] do:[
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8244
        userInput := Dialog request:'Number of Gray Colors ?' initialAnswer:suggestion asString.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8245
    ].
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8246
    userInput isEmptyOrNil ifTrue:[^ self].
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8247
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8248
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8249
    numGrayColors := Number readFrom:userInput onError:nil.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8250
    numGrayColors isNil ifTrue:[^ self].
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8251
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8252
    grayColors := Color grayColorVector:numGrayColors.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8253
    imageEditView newImageWithUndo:(grayImage asDitheredImageUsing:grayColors depth:(grayImage depth)).
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8254
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8255
    "Created: / 23-10-2017 / 11:17:44 / cg"
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8256
!
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8257
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8258
do3DProjection
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8259
    "make a naive 3D projection;
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8260
     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
  8261
     
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8262
    |box dx1 dx2 image|
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
    image := imageEditView image.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8265
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8266
    box := EnterBox new.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8267
    box title:(resources string:'dX1 (0 < dx < 0.5):').
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8268
    box okText:(resources string:'OK').
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8269
    box abortText:(resources string:'Cancel').
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8270
    box initialText:'0.1'.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8271
    box showAtPointer.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8272
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8273
    (box accepted 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8274
    and: [(dx1 := Number readFrom:(box contents) onError:nil) notNil])
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8275
    ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8276
        box title:(resources string:'dX2 (0 < dx < 0.5):').
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8277
        box initialText:(dx1 printString).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8278
        box showAtPointer.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8279
        (box accepted 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8280
        and: [(dx2 := Number readFrom:(box contents) onError:nil) notNil])
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8281
        ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8282
            imageEditView threeDProjection:dx1 and:dx2.
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
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8285
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8286
    self updateInfoLabel
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8287
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8288
    "Modified (comment): / 31-08-2017 / 13:58:03 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8289
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8290
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8291
doBrightenImage
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8292
    imageEditView brightenImage.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8293
    self listOfColors removeAll.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8294
    self findColorMapMode.     
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8295
    "/ imageEditView removelastUndo
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8298
doBrowseClass
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8299
    "opens a System Browser on the resourceClass and the resourceSelector"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8300
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8301
    |cls|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8302
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8303
    cls := imageEditView resourceClass.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8304
    cls isNil ifTrue:[^ self warn:'No Class specified'].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8305
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8306
    cls browserClass
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8307
        openInClass:cls class 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8308
        selector:(imageEditView resourceSelector)
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8309
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8310
    "Modified: / 31.7.1998 / 02:01:15 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8311
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8312
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8313
doCopyImageToClipboard
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8314
    imageEditView copyImageToClipboard.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8315
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8316
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8317
doCropManual
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8318
    "let user specify borders and cut them off"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8319
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8320
    |bindings left top right bottom img firstChange cropAction acceptChannel|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8321
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8322
    acceptChannel := TriggerValue new.
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
    firstChange := true.
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
    cropAction := 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8327
        [:lV :rV :tV :bV | |l r t b|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8328
            acceptChannel value:true.
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
            l := lV value.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8331
            r := rV value.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8332
            t := tV value.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8333
            b := bV value.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8334
            (l + r + t + b) == 0 ifTrue:[
3526
d27e02006468 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3513
diff changeset
  8335
                self window beepInEditor
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8336
            ] ifFalse:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8337
                img := imageEditView image.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8338
                firstChange ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8339
                    imageEditView makeUndo.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8340
                    firstChange := false.
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
                imageEditView
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8343
                    makeSubImageX:l y:t 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8344
                    width:(img width - l - r)
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8345
                    height:(img height - t - b).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8346
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8347
                self updateImagePreView.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8348
                self updateInfoLabel
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8349
            ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8350
        ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8351
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8352
    bindings := IdentityDictionary new.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8353
    bindings at:#cropLeftAmount put:(left := 1 asValue).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8354
    bindings at:#cropRightAmount put:(right := 1 asValue).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8355
    bindings at:#cropTopAmount put:(top := 1 asValue).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8356
    bindings at:#cropBottomAmount put:(bottom := 1 asValue).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8357
    bindings at:#acceptChannel put:acceptChannel.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8358
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8359
    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
  8360
    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
  8361
    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
  8362
    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
  8363
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8364
    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
  8365
    bindings at:#cropBoxIsDialog   put:true.
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
    (self openDialogInterface:#cropSpec withBindings:bindings) 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8368
    ifFalse:[ 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8369
        firstChange ~~ true ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8370
            imageEditView undo.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8371
            self updateImagePreView.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8372
        ]
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8373
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8374
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8375
    "Created: / 07-09-1998 / 18:16:07 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8376
    "Modified: / 19-02-2017 / 15:43:50 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8377
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8378
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8379
doDarkenImage
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8380
    imageEditView darkenImage.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8381
    self listOfColors removeAll.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8382
    self findColorMapMode.     
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8383
    "/ imageEditView removelastUndo
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8384
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8385
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8386
doEditMask
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8387
    |mask|
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
    (mask := self image mask) notNil ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8390
        mask edit
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8391
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8392
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8393
    "Modified: / 18-02-2017 / 00:38:51 / cg"
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8396
doFlipHorizontal
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8397
    "flips horizontally current image"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8398
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8399
    imageEditView flipHorizontal
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8400
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8401
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8402
doFlipVertical
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8403
    "flips vertically current image"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8404
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8405
    imageEditView flipVertical
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8406
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8407
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8408
doInsertTextFromUser
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8409
    |text tempForm tempImage maskImage font w h paintColor|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8410
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8411
    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
  8412
    text isEmptyOrNil ifTrue:[^ self ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8413
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8414
    font := Font family:'arial' size:20.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8415
    font := font onDevice:Screen current.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8416
    w := font widthOf:text.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8417
    h := font heightOf:text.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8418
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8419
    tempForm := Form extent:(w@h) depth:1 onDevice:(Screen current).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8420
    tempForm clear.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8421
    tempForm font:font.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8422
    tempForm paint:(Color colorId:1).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8423
    tempForm displayString:text at:(0@font ascent).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8424
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8425
    tempImage := tempForm asImage.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8426
    maskImage := tempForm asImage.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8427
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8428
    paintColor := imageEditView selectedColor.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8429
    paintColor  colorId == 0 ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8430
        paintColor := Color black
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
    tempImage   
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8433
        photometric:#palette;
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8434
        colorMap:(Array 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8435
                    with:Color white 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8436
                    with:paintColor);
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8437
        mask:maskImage.
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
    ImageEditView copyImageToClipboard:tempImage.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8440
    self editMode value:#paste.
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
    "Modified: / 11-11-2007 / 12:32:55 / cg"
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8445
doInspectImage
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8446
    "opens a System Browser on the resourceClass and the resourceSelector"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8447
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8448
    self image inspect
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8449
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8450
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8451
doInvertedBitsImage
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8452
    "inverts the pixels"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8453
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8454
    self withExecuteCursorDo:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8455
        imageEditView makeInvertedBits.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8456
        self updateImage.
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
"/
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8459
"/    imageEditView negativeImage.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8460
"/    self listOfColors removeAll.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8461
"/    self findColorMapMode.     
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8462
"/    "/ imageEditView removelastUndo
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8463
"/
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8464
"/
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8465
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8466
    "Created: / 31-08-2017 / 12:49:13 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8467
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8468
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8469
doMagnifyDown
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8470
    "magnifies the current image one step down"
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
    |magHolder mag|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8473
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8474
    magHolder := self magnificationHolder.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8475
    (mag := magHolder value) > 1 ifTrue: [
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8476
        magHolder value: mag - 1
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8479
    "Modified: / 26.7.1998 / 20:24:08 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8480
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8481
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8482
doMagnifyImage
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8483
    "magnifies the current image to a new size"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8484
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8485
    |box newSize image antiAliased|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8486
3550
b31b44c04a3e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3546
diff changeset
  8487
    antiAliased := (LastMagnifySmoothing ? false) asValue.
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8488
    image := imageEditView image.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8489
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8490
    box := EnterBox new.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8491
    box title:(resources string:'Images new size:').
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8492
    box okText:(resources string:'OK').
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8493
    box abortText:(resources string:'Cancel').
3550
b31b44c04a3e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3546
diff changeset
  8494
    box initialText:(LastMagnifyTo ? image extent) printString.
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8495
    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
  8496
    box showAtPointer.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8497
    
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8498
    (box accepted 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8499
    and: [(newSize := self pointFromString:(box contents)) notNil])
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8500
    ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8501
        newSize isPoint ifFalse:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8502
            self warn:'Please enter the new size as ''x @ y''.'.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8503
            ^ self.    
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8504
        ].
3550
b31b44c04a3e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3546
diff changeset
  8505
        LastMagnifyTo := newSize.
b31b44c04a3e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3546
diff changeset
  8506
        LastMagnifySmoothing := antiAliased value.
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8507
        antiAliased value ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8508
            ((newSize x < image width) or:[(newSize y < image height)]) ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8509
                imageEditView magnifySmoothingTo:newSize.    
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8510
            ] ifFalse:[    
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8511
                imageEditView magnifyAntiAliasedImageTo:newSize.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8512
            ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8513
        ] ifFalse:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8514
            imageEditView magnifyImageTo:newSize.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8515
        ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8516
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8517
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8518
    self updateInfoLabel
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8519
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8520
    "Modified: / 30-08-2017 / 15:46:02 / cg"
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8523
doMagnifyImageBy
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8524
    "magnifies the current image (by a scale)"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8525
3550
b31b44c04a3e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3546
diff changeset
  8526
    |oldSize newSize scaleString scale image smoothing|
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8527
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8528
    image := imageEditView image.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8529
    oldSize := image extent.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8530
3550
b31b44c04a3e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3546
diff changeset
  8531
    smoothing := (LastMagnifySmoothing ? false) asValue.
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8532
    
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8533
    Dialog modifyingBoxWith:[:box |
3550
b31b44c04a3e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3546
diff changeset
  8534
        box verticalPanel add:(CheckBox label:(resources string:'Antialias/Smooth') model:smoothing).
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8535
        "/ box verticalPanel add:(CheckBox label:(resources string:'Smoothing') model:smoothing).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8536
    ] do:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8537
        scaleString := Dialog 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8538
                   request:(resources string:'Scale factor (<1 to shrink; >1 to magnify):') 
3550
b31b44c04a3e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3546
diff changeset
  8539
                   initialAnswer:(LastMagnifyBy ? 1) printString
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8540
                   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
  8541
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8542
    scaleString isNil ifTrue:[^ self].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8543
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8544
    scale := Object readFromString:scaleString onError:nil.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8545
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8546
    scale notNil ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8547
        scale isNumber ifFalse:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8548
            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
  8549
            ^ self.    
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8550
        ].
3550
b31b44c04a3e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3546
diff changeset
  8551
b31b44c04a3e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3546
diff changeset
  8552
        LastMagnifyBy := scale.
b31b44c04a3e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3546
diff changeset
  8553
        LastMagnifySmoothing := smoothing value.
b31b44c04a3e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3546
diff changeset
  8554
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8555
        newSize := oldSize * scale.
3550
b31b44c04a3e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3546
diff changeset
  8556
        smoothing value ifTrue:[
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8557
            scale < 1 ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8558
                imageEditView magnifySmoothingBy:scale.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8559
            ] ifFalse:[    
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8560
                imageEditView magnifyAntiAliasedImageTo:newSize.
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
        ] ifFalse:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8563
            imageEditView magnifyImageTo:newSize.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8564
        ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8565
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8566
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8567
    self updateInfoLabel
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8568
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8569
    "Modified: / 30-08-2017 / 15:34:56 / cg"
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
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8572
doMagnifyUp
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8573
    "magnifies the current image one step up"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8574
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8575
    |magHolder mag|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8576
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8577
    magHolder := self magnificationHolder.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8578
    (mag := magHolder value) < 63 ifTrue: [
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8579
        magHolder value: mag + 1
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8580
    ]
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8581
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8582
    "Modified: / 26.7.1998 / 20:23:52 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8583
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8584
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8585
doResizeImage
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8586
    "resizes the current image"
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
    |box newSize image|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8589
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8590
    image := imageEditView image.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8591
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8592
    box := EnterBox new.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8593
    box title:(resources string:'Images new size:').
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8594
    box okText:(resources string:'OK').
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8595
    box abortText:(resources string:'Cancel').
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8596
    box initialText:image extent printString.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8597
    box showAtPointer.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8598
    (box accepted 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8599
    and: [(newSize := self pointFromString:(box contents)) notNil])
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8600
    ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8601
        imageEditView resizeImageTo:newSize.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8602
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8603
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8604
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8605
doRotateImage
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8606
    "rotates current image"
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
    |rotationString box rotation|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8609
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8610
    rotationString := Dialog 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8611
                        request:(resources string:'Rotate by (degrees, clockwise):')
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8612
                        list:#( '-90' '90' '180' '45' '-45'  '135' '-135' ) 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8613
                        initialAnswer:90.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8614
    rotationString isEmptyOrNil ifTrue:[^ self].    "/ canceled
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8615
    rotation := Number readFrom:rotationString onError:[nil].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8616
    rotation isNil ifTrue:[^ self].   
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
"/    box := EnterBox new.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8619
"/    box title:(resources string:'Rotate by (degrees, clockwise):').
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8620
"/    box okText:(resources string:'OK').
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8621
"/    box abortText:(resources string:'Cancel').
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8622
"/    box initialText: '0'.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8623
"/    box showAtPointer.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8624
"/    (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
  8625
"/    ifFalse:[ ^ self ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8626
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8627
    imageEditView rotateImageBy:rotation.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8628
    self updateInfoLabel.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8629
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8630
    "Modified: / 18-03-2012 / 14:41:14 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8631
    "Modified (comment): / 24-08-2017 / 15:02:57 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8632
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8633
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8634
doShiftManual
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8635
    "let user specify amount and shift"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8636
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8637
    |bindings amount img firstChange shiftAction acceptChannel wrapHolder|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8638
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8639
    acceptChannel := TriggerValue new.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8640
    wrapHolder := (lastShiftUsedWrap ? true) asValue.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8641
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8642
    firstChange := true.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8643
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8644
    shiftAction := 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8645
        [:shiftH :shiftV | 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8646
            acceptChannel value:true.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8647
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8648
            img := imageEditView image.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8649
            firstChange ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8650
                imageEditView makeUndo.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8651
                firstChange := false.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8652
            ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8653
            imageEditView shiftImageHorizontal:(shiftH value) vertical:(shiftV value) wrap:(wrapHolder value).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8654
            self updateInfoLabel
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8655
        ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8656
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8657
    bindings := IdentityDictionary new.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8658
    bindings at:#shiftAmount put:(amount := 1 asValue).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8659
    bindings at:#wrap put:wrapHolder.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8660
    bindings at:#acceptChannel put:acceptChannel.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8661
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8662
    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
  8663
    bindings at:#shiftRightNow  put:[ shiftAction value:amount value value:0 ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8664
    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
  8665
    bindings at:#shiftDownNow   put:[ shiftAction value:0 value:amount value ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8666
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8667
    (self openDialogInterface:#shiftDialogSpec withBindings:bindings) 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8668
    ifFalse:[ 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8669
        firstChange ~~ true ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8670
          imageEditView undo
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8671
        ]
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8672
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8673
    lastShiftUsedWrap := wrapHolder value.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8674
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8675
    "Created: / 7.9.1998 / 18:16:07 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8676
    "Modified: / 7.9.1998 / 18:20:42 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8677
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8678
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8679
doUnCropManual
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8680
    "let user specify borders and add them"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8681
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8682
    |bindings leftAmount topAmount rightAmount bottomAmount img|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8683
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8684
    bindings := IdentityDictionary new.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8685
    bindings at:#cropLeftAmount put:(leftAmount := 1 asValue).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8686
    bindings at:#cropRightAmount put:(rightAmount := 1 asValue).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8687
    bindings at:#cropTopAmount put:(topAmount := 1 asValue).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8688
    bindings at:#cropBottomAmount  put:(bottomAmount := 1 asValue).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8689
    bindings at:#cropBoxIsDialog   put:true.
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
    (self openDialogInterface:#uncropSpec withBindings:bindings)
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8692
    ifTrue:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8693
        leftAmount := leftAmount value.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8694
        rightAmount := rightAmount value.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8695
        topAmount := topAmount value.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8696
        bottomAmount := bottomAmount value.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8697
        img := imageEditView image.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8698
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8699
        imageEditView
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8700
            makeBorderedImageX:leftAmount y:topAmount 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8701
            width:(img width + leftAmount + rightAmount)
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8702
            height:(img height + topAmount + bottomAmount).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8703
        self updateInfoLabel
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8704
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8705
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8706
    "Created: / 07-09-1998 / 18:16:07 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8707
    "Modified: / 19-02-2017 / 15:31:00 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8708
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8709
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8710
doUndo
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8711
    "reverses last edit action"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8712
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8713
    imageEditView undo.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8714
    self updateImagePreView
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8715
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8716
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8717
makeInverse
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8718
    "inverts the pixels - for palettes, this leads to funny results"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8719
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8720
    self updateImageAfterDoing:#makeInverse.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8721
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8722
    "Modified: / 31-08-2017 / 12:16:07 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8723
    "Modified (comment): / 31-08-2017 / 13:51:28 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8724
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8725
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8726
makeMonochromeImage
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8727
    "let user choose a threshold, then convert to monochrome"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8728
    
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8729
    |image userInput thresholdBrighness|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8730
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8731
    image := imageEditView image.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8732
    
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8733
    Dialog modifyingBoxWith:[:box |
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8734
        |preview slider update thresholdValue|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8735
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8736
        thresholdValue := 0.5 asValue.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8737
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8738
        box enterField 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8739
            converter:(PrintConverter new initForNumber);
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8740
            model:thresholdValue.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8741
            
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8742
        box verticalPanel extent:1.0 @ 300.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8743
        
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8744
        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
  8745
        slider model:thresholdValue.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8746
        slider width:1.0; leftInset:4; rightInset:4.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8747
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8748
        box verticalPanel add:(preview := ImageView new).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8749
        preview extent:300 @300.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8750
        preview level:-1.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8751
        box verticalPanel horizontalLayout:#fitSpace.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8752
        
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8753
        update := 
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8754
            [
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8755
                |s t|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8756
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8757
                t := thresholdValue value clampBetween:0 and:1.   
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8758
                preview image:((image asThresholdMonochromeImage:t)
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8759
                            magnifiedPreservingRatioTo:preview extent).
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8760
            ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8761
        update value.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8762
        box enterField acceptOnLostFocus:true.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8763
        box enterField acceptOnLeave:true.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8764
        thresholdValue onChangeEvaluate:update.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8765
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8766
    ] do:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8767
        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
  8768
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8769
    userInput isEmptyOrNil ifTrue:[^ self].
3497
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8770
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8771
    thresholdBrighness := Number readFrom:userInput onError:nil.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8772
    thresholdBrighness isNil ifTrue:[^ self].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8773
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8774
    thresholdBrighness := thresholdBrighness clampBetween:0 and:1.
3478
1b4386fd1953 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 3477
diff changeset
  8775
    
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8776
    imageEditView newImageWithUndo:(image asThresholdMonochromeImage:thresholdBrighness)
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8777
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8778
    "Created: / 24-08-2017 / 15:26:44 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8779
    "Modified: / 24-08-2017 / 17:54:21 / cg"
3497
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8780
    "Modified (format): / 23-10-2017 / 10:42:52 / cg"
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8781
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8782
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8783
makeNegative
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8784
    "negates current image by negating the color map"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8785
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8786
    self withExecuteCursorDo:[
3477
52202af265c2 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3476
diff changeset
  8787
        imageEditView makeNegative.
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8788
        self updateImage.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8789
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8790
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8791
    "Created: / 31-08-2017 / 13:49:47 / cg"
3477
52202af265c2 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3476
diff changeset
  8792
    "Modified (comment): / 01-09-2017 / 10:27:37 / cg"
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8793
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8794
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8795
thresholdGrayToDepth
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8796
    self askForDepthThenDo:[:depth |
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8797
        self thresholdGrayToDepth:depth
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8798
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8799
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8800
    "Created: / 24-08-2017 / 17:49:23 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8801
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8802
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8803
thresholdGrayToDepth:depth
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8804
    self withExecuteCursorDo:[
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8805
        |newImage|
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8806
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8807
        newImage := self image asThresholdGrayImageDepth:depth.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8808
        imageEditView newImageWithUndo:newImage.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8809
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8810
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8811
    "Created: / 24-08-2017 / 17:49:30 / cg"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8812
!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8813
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8814
thresholdToDepth
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8815
    self askForDepthThenDo:[:depth |
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8816
        self convertToDepth:depth dither:false
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8817
    ].
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8818
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8819
    "Created: / 30-08-2017 / 00:31:33 / cg"
3497
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8820
!
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8821
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8822
thresholdToNumberOfGrayColors
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8823
    |oldDepth numGrayColors suggestion grayImage userInput grayColors|
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8824
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8825
    oldDepth := self image depth.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8826
    grayImage := self image asGrayImageDepth:8.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8827
    
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8828
    suggestion := LastNumThresholdGrayColors notNil ifTrue:[
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8829
                    LastNumThresholdGrayColors
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8830
                  ] ifFalse:[
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8831
                    oldDepth > 8 
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8832
                        ifTrue:[256] 
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8833
                        ifFalse:[2 raisedTo:((oldDepth // 2 - 1) nextPowerOf2)]
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8834
                  ].
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8835
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8836
    Dialog modifyingBoxWith:[:box |
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8837
        |preview slider update thresholdValue|
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8838
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8839
        thresholdValue := suggestion asValue.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8840
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8841
        box enterField 
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8842
            converter:(PrintConverter new initForNumber);
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8843
            model:thresholdValue.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8844
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8845
        box verticalPanel extent:1.0 @ 300.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8846
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8847
        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
  8848
        slider model:thresholdValue.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8849
        slider width:1.0; leftInset:4; rightInset:4.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8850
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8851
        box verticalPanel add:(preview := ImageView new).
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8852
        preview extent:300 @300.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8853
        preview level:-1.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8854
        box verticalPanel horizontalLayout:#fitSpace.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8855
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8856
        update := 
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8857
            [
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8858
                |numGrayColors depth s t tImage|
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8859
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8860
                numGrayColors := thresholdValue value clampBetween:2 and:256.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8861
                grayColors := Color grayColorVector:numGrayColors.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8862
                tImage := grayImage asNearestPaintImageDepth:(grayImage depth) colors:grayColors.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8863
                
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8864
                preview image:(tImage magnifiedPreservingRatioTo:preview extent).
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8865
            ].
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8866
        update value.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8867
        box enterField acceptOnLostFocus:true.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8868
        box enterField acceptOnLeave:true.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8869
        thresholdValue onChangeEvaluate:update.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8870
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8871
    ] do:[
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8872
        userInput := Dialog request:'Number of Gray Colors ?' initialAnswer:suggestion asString.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8873
    ].
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8874
    userInput isEmptyOrNil ifTrue:[^ self].
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8875
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8876
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8877
    numGrayColors := Number readFrom:userInput onError:nil.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8878
    numGrayColors isNil ifTrue:[^ self].
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8879
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8880
    grayColors := Color grayColorVector:numGrayColors.
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8881
    imageEditView newImageWithUndo:(grayImage asNearestPaintImageDepth:(grayImage depth) colors:grayColors).
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8882
632e25674f39 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3496
diff changeset
  8883
    "Created: / 23-10-2017 / 10:55:15 / cg"
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8884
! !
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8885
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8886
!ImageEditor methodsFor:'user actions-editing-colors'!
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  8887
3471
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8888
convertToDepth:depth dither:doDither
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8889
    |answer labels values 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8890
     ditherColors fixColors
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8891
     nGrey greyColorsAlready moreColors d|
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8892
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8893
    "/ no colormap above 12 bits!!
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8894
    depth > 12 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8895
        answer := #TrueColor.
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8896
    ] ifFalse:[    
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8897
        doDither ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8898
            (depth >= 8) ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8899
                labels := #('Cancel' 'Use Browser Palette' 'Use Standard' 'Compute' 'TrueColor').
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8900
                values := #(nil UseBrowserPalette UseStandard Compute TrueColor).
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8901
            ] ifFalse:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8902
                depth == 1 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8903
                    answer := #UseStandard
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8904
                ] ifFalse:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8905
                    labels := #('Cancel' 'Use Standard' 'Compute' 'TrueColor').
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8906
                    values := #(nil UseStandard Compute TrueColor). 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8907
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8908
            ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8909
        ] ifFalse:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8910
            (depth >= 8) ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8911
                labels := #('Cancel' 'Use Browser Palette' 'Use Standard' 'TrueColor').
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8912
                values := #(nil UseBrowserPalette UseStandard TrueColor).
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8913
            ] ifFalse:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8914
                answer := #UseStandard
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8915
            ].    
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8916
        ].    
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8917
    ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8918
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8919
    answer isNil ifTrue:[    
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8920
        answer := OptionBox
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8921
                  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
  8922
                  label:(resources string:'Dither how')
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8923
                  image:(YesNoBox iconBitmap)
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8924
                  buttonLabels:(resources array:labels)
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8925
                  values:values
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8926
                  default:#UseStandard
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8927
                  onCancel:nil.
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8928
        answer isNil ifTrue:[^ self].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8929
    ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8930
    
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8931
    (answer == #Compute) ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8932
        ditherColors :=
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8933
            Color
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8934
                best:(1 bitShift:depth) 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8935
                ditherColorsForImage:self image
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8936
    ] ifFalse:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8937
        (answer == #UseBrowserPalette) ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8938
            ditherColors := Color colorCubeWithRed:6 green:6 blue:6. 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8939
        ] ifFalse:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8940
            answer == #TrueColor ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8941
                depth == 6 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8942
                    fixColors := FixedPalette 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8943
                                    redShift:4 redMask:3
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8944
                                    greenShift:2 greenMask:3
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8945
                                    blueShift:0 blueMask:3
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8946
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8947
                depth == 9 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8948
                    fixColors := FixedPalette 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8949
                                    redShift:6 redMask:7
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8950
                                    greenShift:3 greenMask:7
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8951
                                    blueShift:0 blueMask:7
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8952
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8953
                depth == 12 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8954
                    fixColors := FixedPalette 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8955
                                    redShift:8 redMask:16r0F
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8956
                                    greenShift:4 greenMask:16r0F
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8957
                                    blueShift:0 blueMask:16r0F
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8958
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8959
                depth == 15 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8960
                    fixColors := FixedPalette 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8961
                                    redShift:10 redMask:16r1F
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8962
                                    greenShift:5 greenMask:16r1F
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8963
                                    blueShift:0 blueMask:16r1F
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8964
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8965
                depth == 16 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8966
                    fixColors := FixedPalette 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8967
                                    redShift:11 redMask:16r1F
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8968
                                    greenShift:5 greenMask:16r3F
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8969
                                    blueShift:0 blueMask:16r1F
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8970
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8971
                depth == 18 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8972
                    fixColors := FixedPalette 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8973
                                    redShift:12 redMask:16r3F
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8974
                                    greenShift:6 greenMask:16r3F
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8975
                                    blueShift:0 blueMask:16r3F
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8976
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8977
            ] ifFalse:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8978
                depth == 1 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8979
                    ditherColors := { Color black . Color white }.
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8980
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8981
                depth == 2 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8982
                    ditherColors := { Color black . Color darkGray  .Color lightGray . Color white }.
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8983
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8984
                depth = 3 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8985
                    ditherColors := Color colorCubeWithRed:2 green:2 blue:2. 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8986
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8987
                depth = 4 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8988
                    ditherColors := Color vgaColors. 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8989
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8990
                depth = 5 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8991
                    ditherColors := Color colorCubeWithRed:3 green:4 blue:2.
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8992
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8993
                depth = 6 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8994
                    ditherColors := Color colorCubeWithRed:4 green:4 blue:3.
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8995
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8996
                depth = 7 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8997
                    ditherColors := Color colorCubeWithRed:5 green:5 blue:4. 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8998
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  8999
                depth == 8 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9000
                    ditherColors := Color standardDitherColorsForDepth8. 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9001
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9002
                depth == 9 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9003
                    ditherColors := Color colorCubeWithRed:8 green:8 blue:8. 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9004
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9005
                ditherColors isNil ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9006
                    self error:'unsupported depth'.
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9007
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9008
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9009
                "/ add as many gray colors as possible.
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9010
                nGrey := (2 raisedTo:depth) - ditherColors size.  
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9011
                nGrey > 0 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9012
                    nGrey := nGrey min:100.
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9013
                    greyColorsAlready := ditherColors select:[:clr | clr isGreyColor].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9014
                    d := 1 / nGrey.
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9015
                    moreColors := (1 to:nGrey-1) 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9016
                                    collect:[:i | Color brightness:(d * i)] 
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9017
                                    thenReject:[:clr | greyColorsAlready includes:clr ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9018
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9019
                    ditherColors := ditherColors , moreColors.
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9020
                ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9021
            ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9022
        ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9023
    ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9024
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9025
    self withExecuteCursorDo:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9026
        |newImage|
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9027
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9028
        doDither ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9029
            depth == 1 ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9030
                newImage := self image asErrorDitheredMonochromeImage
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9031
            ] ifFalse:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9032
                answer == #TrueColor ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9033
                    newImage := self image asDitheredImageUsing:fixColors depth:depth.
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9034
                ] ifFalse:[    
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9035
                    newImage := self image asDitheredImageUsing:ditherColors depth:depth.
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9036
                ]
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9037
            ]
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9038
        ] ifFalse:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9039
            answer == #TrueColor ifTrue:[
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9040
                self halt.
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9041
            ] ifFalse:[    
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9042
                newImage := self image asNearestPaintImageDepth:depth colors:ditherColors
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9043
            ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9044
        ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9045
        imageEditView newImageWithUndo:newImage.
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9046
    ].
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9047
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9048
    "Created: / 30-08-2017 / 00:33:55 / cg"
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9049
    "Modified: / 30-08-2017 / 02:13:03 / cg"
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9050
!
95c973cafdc1 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3470
diff changeset
  9051
3476
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  9052
makeInvertedBits
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  9053
    "inverts the pixels - for palettes, this leads to funny results.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  9054
     For others, this is the same as negating"
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  9055
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  9056
    self updateImageAfterDoing:#makeInvertedBits.
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  9057
2854769b212a #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 3475
diff changeset
  9058
    "Created: / 31-08-2017 / 13:51:10 / cg"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9059
! !
228524287573 intitial checkin
tz
parents:
diff changeset
  9060
2812
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9061
!ImageEditor methodsFor:'user actions-image sequences'!
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9062
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9063
editEachImageFromSequence
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9064
    |seq|
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9065
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9066
    self checkModified ifFalse:[ ^ self ].
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9067
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9068
    imageEditView releaseUndos.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9069
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9070
    seq := self image imageSequence.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9071
    seq size > 10 ifTrue:[
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9072
        (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
  9073
            ifFalse:[^ self].
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9074
    ].
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9075
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9076
    seq do:[:eachFrame |
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9077
        ImageEditor openOnImage:eachFrame image
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9078
    ].
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9079
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9080
    "Modified: / 21-10-2010 / 15:01:25 / cg"
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9081
!
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9082
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9083
gotoImageInSequence:index
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9084
    "display the next image in the image sequence"
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9085
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9086
    |img seq frame listOfColors|
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9087
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9088
    imageEditView releaseUndos.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9089
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9090
    seq := self image imageSequence.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9091
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9092
    imageSeqNr := index.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9093
    frame := seq at:imageSeqNr.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9094
    imageEditView image:(frame image).
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9095
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9096
    (img := self image) notNil ifTrue:[          
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9097
        listOfColors := self listOfColors.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9098
        img colorMap notNil ifTrue:[
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9099
            listOfColors contents:(img usedColors asSet asOrderedCollection).
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9100
        ] ifFalse:[
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9101
            listOfColors removeAll.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9102
        ].
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9103
        self findColorMapMode.     
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9104
        self updateLabelsAndHistory.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9105
        img := img onDevice:device.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9106
        imageEditView image:img.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9107
    ] ifFalse:[
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9108
        self updateForNoImage
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9109
    ].
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9110
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9111
    "Created: / 21-10-2010 / 14:22:11 / cg"
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9112
!
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9113
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9114
nextImageInSequence
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9115
    "display the next image in the image sequence"
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9116
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9117
    |seq index|
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9118
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9119
    seq := self image imageSequence.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9120
    (index := imageSeqNr) isNil ifTrue:[
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9121
        index := 1.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9122
    ].
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9123
    index := index + 1.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9124
    index > seq size ifTrue:[
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9125
        self information:'Back to first image in sequence'.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9126
        index := 1.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9127
    ].
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9128
    self gotoImageInSequence:index.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9129
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9130
    "Modified: / 21-10-2010 / 14:24:11 / cg"
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9131
!
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9132
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9133
previousImageInSequence
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9134
    "display the previous image in the image sequence"
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9135
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9136
    |seq index|
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9137
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9138
    seq := self image imageSequence.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9139
    (index := imageSeqNr) isNil ifTrue:[
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9140
        index := 1.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9141
    ].
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9142
    index := index - 1.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9143
    index < 1 ifTrue:[
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9144
        self information:'Wrap to last image in sequence'.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9145
        index := seq size.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9146
    ].
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9147
    self gotoImageInSequence:index.
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9148
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9149
    "Created: / 21-10-2010 / 14:25:03 / cg"
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9150
! !
371a8522bbd5 added:8 methods
Claus Gittinger <cg@exept.de>
parents: 2807
diff changeset
  9151
1715
9eebdb3802aa method category rename
Claus Gittinger <cg@exept.de>
parents: 1713
diff changeset
  9152
!ImageEditor methodsFor:'user actions-loading'!
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9153
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9154
doLoadFromClass
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9155
    "opens a dialog for loading an image from class and a (resource-) selector"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9156
1122
66e895f34b9b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1121
diff changeset
  9157
    |img|
66e895f34b9b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1121
diff changeset
  9158
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9159
    self checkModified ifFalse:[ ^ self ].
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9160
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  9161
    (imageEditView loadFromClass) notNil ifTrue:[
1380
9787c42843c2 allow display and extract from image sequences (gif anims)
Claus Gittinger <cg@exept.de>
parents: 1377
diff changeset
  9162
        imageSeqNr := nil.
1122
66e895f34b9b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1121
diff changeset
  9163
        (img := self image) notNil ifTrue: [
1900
41ba86fb1087 cleanup
Claus Gittinger <cg@exept.de>
parents: 1899
diff changeset
  9164
            self updateColorsFromImage:img.
574
8d82e8f101c1 undo disabling
tz
parents: 573
diff changeset
  9165
            self findColorMapMode.
1376
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  9166
            self updateLabelsAndHistory.
1054
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  9167
        ] ifFalse: [
ef98bc11d1fd addColor
Claus Gittinger <cg@exept.de>
parents: 1053
diff changeset
  9168
            self updateForNoImage
1376
ce3cf26e201e change & updates fixed (monochrome bitmaps)
Claus Gittinger <cg@exept.de>
parents: 1353
diff changeset
  9169
        ].
449
dac8dc1f9dc8 if none image found for loading clear all
tz
parents: 444
diff changeset
  9170
    ]
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9171
!
228524287573 intitial checkin
tz
parents:
diff changeset
  9172
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9173
doLoadFromFile
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9174
    "opens a dialog for loading an image from a file"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9175
2820
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9176
    |img file filters title|
1353
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9177
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9178
    self checkModified ifFalse:[ ^ self ].
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9179
1380
9787c42843c2 allow display and extract from image sequences (gif anims)
Claus Gittinger <cg@exept.de>
parents: 1377
diff changeset
  9180
    imageSeqNr := nil.
1353
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9181
    img := self image.
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9182
    img notNil ifTrue: [
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9183
        file := img fileName
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9184
    ].
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9185
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  9186
    title := (resources string:'Load Image from File:').
2820
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9187
3066
a8e197ceebed Replace references to Diplay with "Screen current" - where appropriate
Stefan Vogel <sv@exept.de>
parents: 3050
diff changeset
  9188
    (UserPreferences current useNativeFileDialog
3100
d2310ff3cbab class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3080
diff changeset
  9189
     and:[Screen current isWindowsPlatform]) ifTrue:[
2820
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9190
        self withWaitCursorDo:[
3066
a8e197ceebed Replace references to Diplay with "Screen current" - where appropriate
Stefan Vogel <sv@exept.de>
parents: 3050
diff changeset
  9191
            file := Screen current
2820
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9192
                nativeFileDialogFor:(self window topView id)
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9193
                save:false
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9194
                title:title
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9195
                inDirectory:(file notNil ifTrue:[file asFilename directory pathName] ifFalse:[LastDirectory])
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9196
                initialAnswer:(file notNil ifTrue:[file asFilename baseName] ifFalse:['image.png'])
2827
c99d2c520b28 changed:
Claus Gittinger <cg@exept.de>
parents: 2826
diff changeset
  9197
                "/ flags:#( ENABLESIZING "HIDEREADONLY" EXPLORER NOCHANGEDIR)
2820
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9198
                filter:
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9199
                  {
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9200
                          { (resources string:'Image Files') . '*.tif;*.png;*.gif;*.bmp;*.jpg'  } .
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9201
                          { (resources string:'All Files') . '*.*'  } 
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9202
                  }
2821
850aa6d37ea3 changed:
Claus Gittinger <cg@exept.de>
parents: 2820
diff changeset
  9203
                extension:nil
2827
c99d2c520b28 changed:
Claus Gittinger <cg@exept.de>
parents: 2826
diff changeset
  9204
                "blocking:false".
2820
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9205
        ].
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9206
    ] ifFalse:[    
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9207
        filters := FileSelectionBrowser loadImageFileNameFilters.
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9208
        file notNil ifTrue:[
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9209
            file := FileSelectionBrowser
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9210
                        request:title
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9211
                        fileName:file
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9212
                        withFileFilters:filters.
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9213
        ] ifFalse:[
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9214
            file := FileSelectionBrowser
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9215
                        request:title
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9216
                        inDirectory:LastDirectory
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9217
                        withFileFilters:filters.
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9218
        ].
1353
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9219
    ].
2820
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9220
1353
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9221
    file notNil ifTrue:[
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9222
        LastDirectory := file asFilename directoryName.
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9223
        self loadFromFile:file
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9224
    ]
2820
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9225
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  9226
    "Modified: / 16-02-2017 / 10:53:41 / cg"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9227
!
228524287573 intitial checkin
tz
parents:
diff changeset
  9228
2796
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9229
doLoadFromURL
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9230
    "opens a dialog for loading an image from a URL"
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9231
2866
10f8ee0f23fe changed: #doLoadFromURL
Claus Gittinger <cg@exept.de>
parents: 2841
diff changeset
  9232
    |tempFile url response|
2796
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9233
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9234
    self checkModified ifFalse:[ ^ self ].
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9235
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9236
    url := Dialog 
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  9237
                request:(resources string:'Load Image from URL:')
2796
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9238
                initialAnswer:LastURL.
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9239
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9240
    url notEmptyOrNil ifTrue:[
3050
238571e2a33b class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3027
diff changeset
  9241
        HTTPInterface isNil ifTrue:[ Smalltalk loadPackage:'stx:goodies/communication'].
238571e2a33b class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3027
diff changeset
  9242
2796
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9243
        LastURL := url.
3027
50657c666fdc class: ImageEditor
Stefan Vogel <sv@exept.de>
parents: 3022
diff changeset
  9244
        tempFile := FileStream newTemporary close fileName.
2866
10f8ee0f23fe changed: #doLoadFromURL
Claus Gittinger <cg@exept.de>
parents: 2841
diff changeset
  9245
        self withWaitCursorDo:[
3492
f212578d1276 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3489
diff changeset
  9246
            |newURL|
f212578d1276 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3489
diff changeset
  9247
            
2866
10f8ee0f23fe changed: #doLoadFromURL
Claus Gittinger <cg@exept.de>
parents: 2841
diff changeset
  9248
            response := HTTPInterface get:url destinationFile:tempFile.
3492
f212578d1276 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3489
diff changeset
  9249
            response isMovedResponse ifTrue:[
f212578d1276 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3489
diff changeset
  9250
                newURL  := response location.
f212578d1276 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3489
diff changeset
  9251
                newURL ~= url ifTrue:[
f212578d1276 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3489
diff changeset
  9252
                    response := HTTPInterface get:newURL destinationFile:tempFile.
f212578d1276 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3489
diff changeset
  9253
                ].    
f212578d1276 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3489
diff changeset
  9254
            ].    
2866
10f8ee0f23fe changed: #doLoadFromURL
Claus Gittinger <cg@exept.de>
parents: 2841
diff changeset
  9255
        ].
10f8ee0f23fe changed: #doLoadFromURL
Claus Gittinger <cg@exept.de>
parents: 2841
diff changeset
  9256
        response isErrorResponse ifTrue:[
10f8ee0f23fe changed: #doLoadFromURL
Claus Gittinger <cg@exept.de>
parents: 2841
diff changeset
  9257
            Dialog warn:(resources string:'Could not load image ("%1")' with:response responseText).
10f8ee0f23fe changed: #doLoadFromURL
Claus Gittinger <cg@exept.de>
parents: 2841
diff changeset
  9258
        ] ifFalse:[
10f8ee0f23fe changed: #doLoadFromURL
Claus Gittinger <cg@exept.de>
parents: 2841
diff changeset
  9259
            self loadFromFile:tempFile.
10f8ee0f23fe changed: #doLoadFromURL
Claus Gittinger <cg@exept.de>
parents: 2841
diff changeset
  9260
        ].
3552
2a1e3a914c9a #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3550
diff changeset
  9261
        tempFile remove
2796
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9262
    ]
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9263
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9264
    "Created: / 20-09-2010 / 11:30:59 / cg"
3492
f212578d1276 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3489
diff changeset
  9265
    "Modified: / 13-09-2017 / 17:00:28 / cg"
2796
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9266
!
f589f0efbaaf +loadFromURL
Claus Gittinger <cg@exept.de>
parents: 2792
diff changeset
  9267
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9268
doNewImage
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9269
    "opens a dialog with choices of size and color map for creating a new image"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9270
3494
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9271
    |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
  9272
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9273
    self checkModified ifFalse:[ ^ self ].
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  9274
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  9275
    defaultSize := (self class listOfDefaultSizes includes:'32x32') 
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  9276
                        ifTrue:['32x32'] 
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  9277
                        ifFalse:[self class listOfDefaultSizes first].
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9278
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9279
    dialogAspects  := IdentityDictionary new
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9280
        at:#listOfSizes         put: self class listOfDefaultSizes asValue;
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  9281
        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
  9282
        at:#selectionOfSize     put: (LastSizeString ? defaultSize) asValue;
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  9283
        at:#selectionOfColorMap put: (LastColormapMode ? self class namesOfColorMaps values asSortedCollection first) asValue;
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9284
        yourself.
228524287573 intitial checkin
tz
parents:
diff changeset
  9285
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9286
    (self openDialogInterface:#dialogSpecForNewImage withBindings:dialogAspects)
1383
179597c2abed *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1381
diff changeset
  9287
    ifTrue:[
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9288
        szString := (dialogAspects at:#selectionOfSize) value.
1960
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
  9289
        ext := self pointFromString:szString.
1962
9166ba3ce7c3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1961
diff changeset
  9290
        ext isNil ifTrue:[
9166ba3ce7c3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1961
diff changeset
  9291
            width := height := 32
9166ba3ce7c3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1961
diff changeset
  9292
        ] ifFalse:[
9166ba3ce7c3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1961
diff changeset
  9293
            width := ext x.
9166ba3ce7c3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1961
diff changeset
  9294
            height := ext y.
9166ba3ce7c3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1961
diff changeset
  9295
        ].
1960
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
  9296
"/        width  := "128 min: "(Integer readFromString: (szString upTo: $x) onError:[32]).
62c7258f3c31 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1952
diff changeset
  9297
"/        height := "128 min: " (Integer readFromString: (szString copy reverse upTo: $x) reverse onError:[32]).
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9298
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9299
        cMapString := (dialogAspects at:#selectionOfColorMap) value.
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  9300
        cMapMode   := self class namesOfColorMaps keyAtEqualValue:cMapString.
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  9301
        cMap       := self class listOfColorMaps at:cMapMode.
3494
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9302
        depth := (cMapMode startsWith:'depth') 
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9303
                    ifTrue:[ Integer readFrom:(cMapMode copyFrom:'depth' size + 1) ]
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9304
                    ifFalse:[ 
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9305
                        (cMapMode startsWith:'masked') 
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9306
                            ifTrue:[ Integer readFrom:(cMapMode copyFrom:'masked' size + 1) ]
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9307
                            ifFalse:[ cMap size highBit-1 ]].
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9308
        imageClass := Image implementorForDepth:depth.
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  9309
        image      := imageClass width: width height: height.
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  9310
        image bits:(ByteArray new:(image bytesPerRow*height)).
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9311
1637
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  9312
        LastSizeString := szString.
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  9313
        LastColormapMode := cMapString.
2b0f24d74f8e new ui-layout
Claus Gittinger <cg@exept.de>
parents: 1613
diff changeset
  9314
3494
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9315
        (cMapMode startsWith:'mask') ifTrue:[
3125
9d5624af77ab Sending of Image>>#clearMaskedPixels moved to Image >> #asFormOnDevice:
Stefan Vogel <sv@exept.de>
parents: 3122
diff changeset
  9316
            image mask: (ImageMask width: width height: height depth: 1 fromArray: (ByteArray new: width*height)).
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9317
        ].
3494
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9318
        depth == 32 ifTrue:[
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9319
            image photometric:#rgba
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9320
        ] ifFalse:[    
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9321
            image colorMap: cMap.
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9322
        ].
1847
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  9323
        (imageEditView image: image) notNil ifTrue:[
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  9324
            self updateListOfColorsAndColormapMode.
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  9325
            self updateLabelsAndHistory.
d7e8ec4f3696 partial support for depth>8 images;
Claus Gittinger <cg@exept.de>
parents: 1843
diff changeset
  9326
        ].
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9327
        image fillRectangleX:0 y:0 width:width height:height with:Color white.
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9328
    ]
3494
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9329
50e94e3563fa #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3493
diff changeset
  9330
    "Modified: / 13-09-2017 / 23:57:52 / cg"
929
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
  9331
!
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
  9332
2058
584f6f6bb171 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2054
diff changeset
  9333
doNewImageEditor
584f6f6bb171 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2054
diff changeset
  9334
    "opens a new image editor"
584f6f6bb171 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2054
diff changeset
  9335
584f6f6bb171 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2054
diff changeset
  9336
    ImageEditor open
584f6f6bb171 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2054
diff changeset
  9337
584f6f6bb171 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2054
diff changeset
  9338
    "Created: / 17-08-2006 / 09:03:14 / cg"
584f6f6bb171 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2054
diff changeset
  9339
!
584f6f6bb171 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2054
diff changeset
  9340
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  9341
doNewImageFromClipboard
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  9342
    |image|
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  9343
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9344
    self checkModified ifFalse:[ ^ self ].
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9345
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  9346
    image := imageEditView clipBoardImage.
3164
890b62a044be class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3157
diff changeset
  9347
    image isImageOrForm ifFalse:[
890b62a044be class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3157
diff changeset
  9348
        image := Image readFrom:(image asString) onError:nil.
890b62a044be class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3157
diff changeset
  9349
        image isNil ifTrue:[
890b62a044be class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3157
diff changeset
  9350
            Dialog warn:'Clipboard does not contain an image I can use/understand'.
890b62a044be class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3157
diff changeset
  9351
            ^ self.
890b62a044be class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3157
diff changeset
  9352
        ].
890b62a044be class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3157
diff changeset
  9353
    ].
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  9354
    
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9355
    imageEditView image:image.
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9356
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9357
    image notNil ifTrue:[
1900
41ba86fb1087 cleanup
Claus Gittinger <cg@exept.de>
parents: 1899
diff changeset
  9358
        self updateColorsFromImage:image.
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  9359
        self findColorMapMode.
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  9360
        self updateLabelsAndHistory.
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  9361
    ]
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  9362
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  9363
    "Modified (format): / 08-10-2017 / 08:58:03 / cg"
1682
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  9364
!
f1b2491c9dc2 color: make darker/brighter
Claus Gittinger <cg@exept.de>
parents: 1656
diff changeset
  9365
3200
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9366
doNewMaskFromClipboard
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9367
    |mask image newImage|
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9368
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9369
    self checkModified ifFalse:[ ^ self ].
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9370
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  9371
    mask := imageEditView clipBoardImage.
3200
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9372
    mask isImageOrForm ifFalse:[
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9373
        mask := Image readFrom:(mask asString) onError:nil.
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9374
        mask isNil ifTrue:[
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9375
            Dialog warn:'Clipboard does not contain an image I can use/understand'.
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9376
            ^ self.
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9377
        ].
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9378
    ].
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  9379
    
3200
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9380
    (image:= imageEditView image) isNil ifTrue:[
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9381
        image := mask.
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9382
    ].
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9383
    mask extent ~= image extent ifTrue:[
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9384
        mask := imageEditView resizedImage:mask to:image extent.
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9385
    ].
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9386
    newImage := image copy.
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9387
    newImage mask:mask.
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9388
    imageEditView newImageWithUndo:newImage.
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9389
    self updateAfterImageChange.
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  9390
3496
83bb01ebff3b #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3494
diff changeset
  9391
    "Modified (format): / 08-10-2017 / 08:57:58 / cg"
3200
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9392
!
eae3e88c5cb1 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3196
diff changeset
  9393
3422
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9394
grabFullScreenImage
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9395
    "grab all for editing"
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9396
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9397
    self grabScreenImageUsing:[ 
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9398
        Image fromScreen
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9399
    ].
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9400
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9401
    "Created: / 25-02-2017 / 12:41:29 / cg"
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9402
!
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9403
929
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
  9404
grabScreenImage
3422
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9405
    "let user choose an area and grab that area for editing"
929
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
  9406
2707
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  9407
    self grabScreenImageUsing:[ 
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  9408
        |r|
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  9409
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  9410
        [Screen current leftButtonPressed] whileTrue:[Delay waitForSeconds:0.05].
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  9411
        r := Rectangle fromUser.
2708
c180af16b1b3 changed:
Claus Gittinger <cg@exept.de>
parents: 2707
diff changeset
  9412
        (r width == 0 or:[r height == 0]) ifTrue:[
c180af16b1b3 changed:
Claus Gittinger <cg@exept.de>
parents: 2707
diff changeset
  9413
            nil
c180af16b1b3 changed:
Claus Gittinger <cg@exept.de>
parents: 2707
diff changeset
  9414
        ] ifFalse:[
c180af16b1b3 changed:
Claus Gittinger <cg@exept.de>
parents: 2707
diff changeset
  9415
            lastGrabbedScreenArea := r.
c180af16b1b3 changed:
Claus Gittinger <cg@exept.de>
parents: 2707
diff changeset
  9416
            Image fromScreen:r
c180af16b1b3 changed:
Claus Gittinger <cg@exept.de>
parents: 2707
diff changeset
  9417
        ]
2707
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  9418
    ].
3422
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9419
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9420
    "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
  9421
!
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  9422
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  9423
grabScreenImageFromLastArea
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  9424
    "grab again from the previous area for editing"
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  9425
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  9426
    self grabScreenImageUsing:[ 
2708
c180af16b1b3 changed:
Claus Gittinger <cg@exept.de>
parents: 2707
diff changeset
  9427
        Image fromScreen:lastGrabbedScreenArea
2707
6610854318eb remember last grabbed screen area
Claus Gittinger <cg@exept.de>
parents: 2704
diff changeset
  9428
    ].
2701
5abe05ebb370 added: grabWindowImage (menu)
Claus Gittinger <cg@exept.de>
parents: 2663
diff changeset
  9429
!
5abe05ebb370 added: grabWindowImage (menu)
Claus Gittinger <cg@exept.de>
parents: 2663
diff changeset
  9430
5abe05ebb370 added: grabWindowImage (menu)
Claus Gittinger <cg@exept.de>
parents: 2663
diff changeset
  9431
grabScreenImageUsing:aBlock
3422
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9432
    "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
  9433
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9434
    self checkModified ifFalse:[ ^ self ].
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9435
990
4303f0064410 delay a second before grabbing screen image (to allow for redraws to happen)
Claus Gittinger <cg@exept.de>
parents: 986
diff changeset
  9436
    Processor 
4303f0064410 delay a second before grabbing screen image (to allow for redraws to happen)
Claus Gittinger <cg@exept.de>
parents: 986
diff changeset
  9437
        addTimedBlock:[
4303f0064410 delay a second before grabbing screen image (to allow for redraws to happen)
Claus Gittinger <cg@exept.de>
parents: 986
diff changeset
  9438
            |image d8image img|
929
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
  9439
1380
9787c42843c2 allow display and extract from image sequences (gif anims)
Claus Gittinger <cg@exept.de>
parents: 1377
diff changeset
  9440
            imageSeqNr := nil.
2701
5abe05ebb370 added: grabWindowImage (menu)
Claus Gittinger <cg@exept.de>
parents: 2663
diff changeset
  9441
            image := aBlock value.
2708
c180af16b1b3 changed:
Claus Gittinger <cg@exept.de>
parents: 2707
diff changeset
  9442
            image notNil ifTrue:[
1121
9ceac76e1c8d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1076
diff changeset
  9443
                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
  9444
false ifTrue:[
1687
f4543a556b89 Convert Object>>errorSignal -> Error
Stefan Vogel <sv@exept.de>
parents: 1682
diff changeset
  9445
                    Error handle:[:ex | |sig|
2996
a1090695cfbc class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 2992
diff changeset
  9446
                        (sig := ex creator) == HaltInterrupt ifTrue:[ex reject].
1122
66e895f34b9b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1121
diff changeset
  9447
                        sig == Signal noHandlerSignal ifTrue:[ex reject].
1121
9ceac76e1c8d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1076
diff changeset
  9448
9ceac76e1c8d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1076
diff changeset
  9449
                        self warn:'Could not convert to depth8 image (too many colors)'.
9ceac76e1c8d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1076
diff changeset
  9450
                        d8image := nil.
9ceac76e1c8d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1076
diff changeset
  9451
                    ] do:[
2420
14678b9fea60 grabScreenImage - do not convert to 8bit; leave as is initially
Claus Gittinger <cg@exept.de>
parents: 2375
diff changeset
  9452
                        d8image := Depth8Image fromImage:image photometric:#palette.
1121
9ceac76e1c8d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1076
diff changeset
  9453
                    ].
9ceac76e1c8d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1076
diff changeset
  9454
                    d8image notNil ifTrue:[
9ceac76e1c8d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1076
diff changeset
  9455
                        image := d8image
9ceac76e1c8d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1076
diff changeset
  9456
                    ]
2420
14678b9fea60 grabScreenImage - do not convert to 8bit; leave as is initially
Claus Gittinger <cg@exept.de>
parents: 2375
diff changeset
  9457
].
990
4303f0064410 delay a second before grabbing screen image (to allow for redraws to happen)
Claus Gittinger <cg@exept.de>
parents: 986
diff changeset
  9458
                ].
1121
9ceac76e1c8d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1076
diff changeset
  9459
                (imageEditView image:image) notNil ifTrue:[
9ceac76e1c8d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1076
diff changeset
  9460
                    self listOfColors contents:(image colorMap).
9ceac76e1c8d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1076
diff changeset
  9461
                    self findColorMapMode.
9ceac76e1c8d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1076
diff changeset
  9462
                    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
  9463
                ]
1121
9ceac76e1c8d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1076
diff changeset
  9464
             ] 
9ceac76e1c8d checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1076
diff changeset
  9465
        ] 
990
4303f0064410 delay a second before grabbing screen image (to allow for redraws to happen)
Claus Gittinger <cg@exept.de>
parents: 986
diff changeset
  9466
        afterSeconds:1
929
7be532d91b87 help spec.
Claus Gittinger <cg@exept.de>
parents: 928
diff changeset
  9467
3422
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9468
    "Created: / 29-07-1998 / 21:24:42 / cg"
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9469
    "Modified: / 16-11-2001 / 16:21:19 / cg"
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9470
    "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
  9471
!
9787c42843c2 allow display and extract from image sequences (gif anims)
Claus Gittinger <cg@exept.de>
parents: 1377
diff changeset
  9472
2701
5abe05ebb370 added: grabWindowImage (menu)
Claus Gittinger <cg@exept.de>
parents: 2663
diff changeset
  9473
grabWindowImage
3422
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9474
    "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
  9475
5abe05ebb370 added: grabWindowImage (menu)
Claus Gittinger <cg@exept.de>
parents: 2663
diff changeset
  9476
    self grabScreenImageUsing:[
3188
351c645c0921 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3180
diff changeset
  9477
        |v topView|
2701
5abe05ebb370 added: grabWindowImage (menu)
Claus Gittinger <cg@exept.de>
parents: 2663
diff changeset
  9478
5abe05ebb370 added: grabWindowImage (menu)
Claus Gittinger <cg@exept.de>
parents: 2663
diff changeset
  9479
        (v := Screen current viewFromUser) notNil ifTrue:[
3188
351c645c0921 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3180
diff changeset
  9480
            topView := v topView.
351c645c0921 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3180
diff changeset
  9481
            topView raise; makeFullyVisible.
2704
0791984eef02 changed: #grabWindowImage
Claus Gittinger <cg@exept.de>
parents: 2701
diff changeset
  9482
            Delay waitForSeconds:0.5.   "/ give view a chance to redraw itself.
3188
351c645c0921 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3180
diff changeset
  9483
            Image fromView:topView
2701
5abe05ebb370 added: grabWindowImage (menu)
Claus Gittinger <cg@exept.de>
parents: 2663
diff changeset
  9484
        ].
5abe05ebb370 added: grabWindowImage (menu)
Claus Gittinger <cg@exept.de>
parents: 2663
diff changeset
  9485
    ].
3422
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9486
005c4ce2070d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3421
diff changeset
  9487
    "Modified (comment): / 25-02-2017 / 12:41:20 / cg"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9488
! !
228524287573 intitial checkin
tz
parents:
diff changeset
  9489
1715
9eebdb3802aa method category rename
Claus Gittinger <cg@exept.de>
parents: 1713
diff changeset
  9490
!ImageEditor methodsFor:'user actions-saving'!
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9491
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9492
doPrint
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9493
    "prints current image on the current printer"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9494
1734
98ebea4111f9 waitCursor while printing
Claus Gittinger <cg@exept.de>
parents: 1728
diff changeset
  9495
    self withWaitCursorDo:[
98ebea4111f9 waitCursor while printing
Claus Gittinger <cg@exept.de>
parents: 1728
diff changeset
  9496
        imageEditView print
98ebea4111f9 waitCursor while printing
Claus Gittinger <cg@exept.de>
parents: 1728
diff changeset
  9497
    ]
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9498
!
228524287573 intitial checkin
tz
parents:
diff changeset
  9499
1613
1d4f11252d3b saveAsButtonImage added
ca
parents: 1611
diff changeset
  9500
doSaveButtonImageToFileAs
3375
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
  9501
    "opens a dialog for saving current image to a file.
d2a64b772792 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3374
diff changeset
  9502
     Saved as a button image (i.e. with a frame around)"
1613
1d4f11252d3b saveAsButtonImage added
ca
parents: 1611
diff changeset
  9503
1d4f11252d3b saveAsButtonImage added
ca
parents: 1611
diff changeset
  9504
    imageEditView saveButtonImageToFileAs.
1d4f11252d3b saveAsButtonImage added
ca
parents: 1611
diff changeset
  9505
    self updateLabelsAndHistory.
1d4f11252d3b saveAsButtonImage added
ca
parents: 1611
diff changeset
  9506
!
1d4f11252d3b saveAsButtonImage added
ca
parents: 1611
diff changeset
  9507
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9508
doSaveImageFile
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9509
    "saves current image to current file"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9510
1481
32f1fd9d0f15 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1480
diff changeset
  9511
    imageEditView save.
3379
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  9512
    self clearModifiedAndRememberImageSaved.
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9513
!
228524287573 intitial checkin
tz
parents:
diff changeset
  9514
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9515
doSaveImageFileAs
1922
a693dc9af82f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1921
diff changeset
  9516
    "opens a dialog for saving an image to a file"
a693dc9af82f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1921
diff changeset
  9517
a693dc9af82f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1921
diff changeset
  9518
    |img file filters|
a693dc9af82f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1921
diff changeset
  9519
a693dc9af82f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1921
diff changeset
  9520
    img := self image.
a693dc9af82f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1921
diff changeset
  9521
    img notNil ifTrue: [
a693dc9af82f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1921
diff changeset
  9522
        file := img fileName
a693dc9af82f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1921
diff changeset
  9523
    ].
3426
6d0987492205 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3425
diff changeset
  9524
    
2595
e1eeda9d1639 changed: #doSaveImageFileAs
Claus Gittinger <cg@exept.de>
parents: 2592
diff changeset
  9525
    filters := FileSelectionBrowser saveImageFileNameFilters.
1922
a693dc9af82f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1921
diff changeset
  9526
3066
a8e197ceebed Replace references to Diplay with "Screen current" - where appropriate
Stefan Vogel <sv@exept.de>
parents: 3050
diff changeset
  9527
    (UserPreferences current useNativeFileDialog
3100
d2310ff3cbab class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3080
diff changeset
  9528
     and:[Screen current isWindowsPlatform]) ifTrue:[
2820
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9529
        self withWaitCursorDo:[
3379
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  9530
            "/ windows only
3066
a8e197ceebed Replace references to Diplay with "Screen current" - where appropriate
Stefan Vogel <sv@exept.de>
parents: 3050
diff changeset
  9531
            file := Screen current
2820
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9532
                nativeFileDialogFor:(self window topView id)
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9533
                save:true
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  9534
                title:(resources string:'Save Image in File')
2820
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9535
                inDirectory:(file notNil ifTrue:[file asFilename directory pathName] ifFalse:[LastDirectory])
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9536
                initialAnswer:(file notNil ifTrue:[file asFilename baseName] ifFalse:['image.png'])
2827
c99d2c520b28 changed:
Claus Gittinger <cg@exept.de>
parents: 2826
diff changeset
  9537
                "/ flags:#( ENABLESIZING "HIDEREADONLY" EXPLORER NOCHANGEDIR)
2820
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9538
                filter:
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9539
                  {
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9540
                          { (resources string:'Image Files') . '*.tif;*.png;*.gif;*.bmp'  } .
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9541
                          { (resources string:'All Files') . '*.*'  } 
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9542
                  }
2821
850aa6d37ea3 changed:
Claus Gittinger <cg@exept.de>
parents: 2820
diff changeset
  9543
                extension:nil
2827
c99d2c520b28 changed:
Claus Gittinger <cg@exept.de>
parents: 2826
diff changeset
  9544
                "blocking:false".
2807
b89a09017a97 changed: #doSaveImageFileAs
Claus Gittinger <cg@exept.de>
parents: 2796
diff changeset
  9545
        ].
3425
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  9546
    ] ifFalse:[ 
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  9547
        img fileName isNil ifTrue:[
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  9548
            LastDirectory notNil ifTrue:[
3426
6d0987492205 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3425
diff changeset
  9549
                file isNil ifTrue:[
6d0987492205 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3425
diff changeset
  9550
                    file := 'image.png'.
6d0987492205 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3425
diff changeset
  9551
                ].
3425
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  9552
                file := LastDirectory asFilename construct:(file asFilename baseName).
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  9553
            ].    
0bf8a902d844 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3424
diff changeset
  9554
        ].    
2820
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9555
        (FileSelectionBrowser isNil or:[DirectoryView isNil]) ifTrue:[
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9556
            file notNil ifTrue:[
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9557
                file := Dialog requestFileName:'Save Image To'
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9558
                            default:file
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9559
                            pattern:(filters first).
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9560
            ] ifFalse:[
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9561
                file := Dialog
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9562
                            requestFileName:'Save Image To'
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9563
                            default:'image.png'
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9564
                            pattern:(filters first)
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9565
                            fromDirectory:LastDirectory.
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9566
            ].
2807
b89a09017a97 changed: #doSaveImageFileAs
Claus Gittinger <cg@exept.de>
parents: 2796
diff changeset
  9567
        ] ifFalse:[
2820
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9568
            file notNil ifTrue:[
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9569
                file := FileSelectionBrowser
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9570
                            request:'Save Image To'
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9571
                            fileName:file
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9572
                            withFileFilters:filters.
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9573
            ] ifFalse:[
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9574
                file := FileSelectionBrowser
3405
02c67d9a5e65 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3404
diff changeset
  9575
                            request:'Save Image in File:'
2820
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9576
                            inDirectory:LastDirectory
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9577
                            withFileFilters:filters.
301557d950e6 changed:
Claus Gittinger <cg@exept.de>
parents: 2817
diff changeset
  9578
            ].
2807
b89a09017a97 changed: #doSaveImageFileAs
Claus Gittinger <cg@exept.de>
parents: 2796
diff changeset
  9579
        ].
1922
a693dc9af82f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1921
diff changeset
  9580
    ].
a693dc9af82f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1921
diff changeset
  9581
    file notNil ifTrue:[
a693dc9af82f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1921
diff changeset
  9582
        imageEditView saveImageFileAs:file.
a693dc9af82f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1921
diff changeset
  9583
        LastDirectory := file asFilename directoryName.
a693dc9af82f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1921
diff changeset
  9584
        self updateLabelsAndHistory.
3379
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  9585
        self clearModifiedAndRememberImageSavedAsFile:file.
1922
a693dc9af82f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1921
diff changeset
  9586
    ]
2807
b89a09017a97 changed: #doSaveImageFileAs
Claus Gittinger <cg@exept.de>
parents: 2796
diff changeset
  9587
3426
6d0987492205 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 3425
diff changeset
  9588
    "Modified: / 27-02-2017 / 01:26:05 / cg"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9589
!
228524287573 intitial checkin
tz
parents:
diff changeset
  9590
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9591
doSaveImageMaskFileAs
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9592
    "opens a dialog for saving mask of current image to a file"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9593
1481
32f1fd9d0f15 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1480
diff changeset
  9594
    imageEditView saveImageMaskFileAs.
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9595
!
228524287573 intitial checkin
tz
parents:
diff changeset
  9596
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9597
doSaveMethod
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9598
    "saves the image in current class and selector"
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9599
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9600
    imageEditView saveMethod ifTrue:[
2006
ae6fe65e9f33 embedding as special editors
Claus Gittinger <cg@exept.de>
parents: 1998
diff changeset
  9601
        self updateLabelsAndHistory.
3379
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  9602
        self clearModifiedAndRememberImageSaved.
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9603
    ]
228524287573 intitial checkin
tz
parents:
diff changeset
  9604
!
228524287573 intitial checkin
tz
parents:
diff changeset
  9605
767
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9606
doSaveMethodAs
ed96f735dab1 comments added
tz
parents: 763
diff changeset
  9607
    "opens a dialog for saving current image on a class and a selector"
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9608
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9609
    imageEditView saveMethodAs ifTrue:[
2006
ae6fe65e9f33 embedding as special editors
Claus Gittinger <cg@exept.de>
parents: 1998
diff changeset
  9610
        self updateLabelsAndHistory.
3379
407c5d5ec14d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 3378
diff changeset
  9611
        self clearModifiedAndRememberImageSaved.
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9612
    ]
1309
0a45ef81b47e added showStoreString menu function
Claus Gittinger <cg@exept.de>
parents: 1250
diff changeset
  9613
!
0a45ef81b47e added showStoreString menu function
Claus Gittinger <cg@exept.de>
parents: 1250
diff changeset
  9614
3022
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  9615
doShowPixelArrayLiteralString
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  9616
    "opens a dialog showing a literal array-like storeString
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  9617
     (sometimes useful to embed an image into source code)"
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  9618
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  9619
    |img|
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  9620
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  9621
    img := imageEditView image.
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  9622
    TextBox openOn:img bits storeString
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  9623
!
4cdf177f5976 class: ImageEditor
Claus Gittinger <cg@exept.de>
parents: 3020
diff changeset
  9624
1309
0a45ef81b47e added showStoreString menu function
Claus Gittinger <cg@exept.de>
parents: 1250
diff changeset
  9625
doShowStoreString
0a45ef81b47e added showStoreString menu function
Claus Gittinger <cg@exept.de>
parents: 1250
diff changeset
  9626
    "opens a dialog showing the storeString
0a45ef81b47e added showStoreString menu function
Claus Gittinger <cg@exept.de>
parents: 1250
diff changeset
  9627
     (sometimes useful to embed an image into source code)"
0a45ef81b47e added showStoreString menu function
Claus Gittinger <cg@exept.de>
parents: 1250
diff changeset
  9628
0a45ef81b47e added showStoreString menu function
Claus Gittinger <cg@exept.de>
parents: 1250
diff changeset
  9629
    |img|
0a45ef81b47e added showStoreString menu function
Claus Gittinger <cg@exept.de>
parents: 1250
diff changeset
  9630
0a45ef81b47e added showStoreString menu function
Claus Gittinger <cg@exept.de>
parents: 1250
diff changeset
  9631
    img := imageEditView image.
0a45ef81b47e added showStoreString menu function
Claus Gittinger <cg@exept.de>
parents: 1250
diff changeset
  9632
    TextBox openOn:img storeString
1975
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9633
!
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9634
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9635
save
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9636
    "saves current image on current class and selector"
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9637
14b7babca4f5 code cleanup & refactoring
Claus Gittinger <cg@exept.de>
parents: 1970
diff changeset
  9638
    self doSaveMethod
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9639
! !
228524287573 intitial checkin
tz
parents:
diff changeset
  9640
1715
9eebdb3802aa method category rename
Claus Gittinger <cg@exept.de>
parents: 1713
diff changeset
  9641
!ImageEditor methodsFor:'user actions-settings'!
1353
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9642
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9643
doChangeGridMagnification
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9644
    "change grid magnification"
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9645
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9646
    |box oldGridLimit newGridLimit|
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9647
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9648
    oldGridLimit := imageEditView class gridMagnificationLimit asPoint.
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9649
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9650
    box := EnterBox new.
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9651
    box title:(resources string:'Grid Magnification Limit:').
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9652
    box okText:(resources string:'OK').
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9653
    box abortText:(resources string:'Cancel').
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9654
    box initialText:(oldGridLimit x printString).
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9655
    box showAtPointer.
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9656
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9657
    (box accepted 
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9658
    and: [(newGridLimit := Number readFromString:(box contents) onError:[2]) notNil]
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9659
    ) ifTrue:[
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9660
        newGridLimit := (99 min: (2 max:newGridLimit)) asPoint.
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9661
        imageEditView class gridMagnificationLimit:newGridLimit.
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9662
        imageEditView invalidate
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9663
    ]
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9664
2192
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  9665
!
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  9666
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  9667
penWidth:n
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  9668
    imageEditView penWidth:n
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  9669
398c9aba6588 pen width
Claus Gittinger <cg@exept.de>
parents: 2190
diff changeset
  9670
    "Created: / 01-11-2007 / 23:47:48 / cg"
2375
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  9671
!
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  9672
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  9673
penWidthHolderChanged
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  9674
    imageEditView penWidth:(self penWidthHolder value)
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  9675
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  9676
    "Created: / 15-02-2012 / 22:32:00 / cg"
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  9677
!
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  9678
2375
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  9679
spraySpot:n
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  9680
    imageEditView spraySpot:n
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  9681
c775c95566b9 +spray and circle
Claus Gittinger <cg@exept.de>
parents: 2354
diff changeset
  9682
    "Created: / 01-11-2007 / 23:47:48 / cg"
2881
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  9683
!
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  9684
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  9685
spraySpotHolderChanged
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  9686
    imageEditView spraySpot:(self spraySpotHolder value)
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  9687
67e99e350ee0 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 2877
diff changeset
  9688
    "Created: / 15-02-2012 / 22:37:08 / cg"
1353
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9689
! !
701e41f8ff9f code cleanup
Claus Gittinger <cg@exept.de>
parents: 1345
diff changeset
  9690
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9691
!ImageEditor class methodsFor:'documentation'!
228524287573 intitial checkin
tz
parents:
diff changeset
  9692
228524287573 intitial checkin
tz
parents:
diff changeset
  9693
version
228524287573 intitial checkin
tz
parents:
diff changeset
  9694
    ^ '$Header$'
2590
9f2cb061d07f changed: #menuToolbar
Claus Gittinger <cg@exept.de>
parents: 2585
diff changeset
  9695
!
9f2cb061d07f changed: #menuToolbar
Claus Gittinger <cg@exept.de>
parents: 2585
diff changeset
  9696
9f2cb061d07f changed: #menuToolbar
Claus Gittinger <cg@exept.de>
parents: 2585
diff changeset
  9697
version_CVS
9f2cb061d07f changed: #menuToolbar
Claus Gittinger <cg@exept.de>
parents: 2585
diff changeset
  9698
    ^ '$Header$'
400
228524287573 intitial checkin
tz
parents:
diff changeset
  9699
! !
2945
facf3c7b0e31 changed: #processEvent:
Claus Gittinger <cg@exept.de>
parents: 2932
diff changeset
  9700