21#include "kis_composite_op.h"
24std::map<KisID, CompositeOp> KisCompositeOp::s_idOpMap;
26KisCompositeOp::KisCompositeOp()
31KisCompositeOp::KisCompositeOp( const TQString& id)
33 if (s_idOpMap.empty()) {
37 KisIDCompositeOpMap::const_iterator it;
40 for (it = s_idOpMap.begin(); it != s_idOpMap.end(); ++it) {
42 const KisID& kisId = (*it).first;
44 if (kisId.id() == id) {
54KisCompositeOp::KisCompositeOp(CompositeOp compositeOp)
56 if (s_idOpMap.empty()) {
60 KisIDCompositeOpMap::const_iterator it;
63 for (it = s_idOpMap.begin(); it != s_idOpMap.end(); ++it) {
65 CompositeOp compOp = (*it).second;
67 if (compOp == compositeOp) {
77bool KisCompositeOp::operator==( const KisCompositeOp& other) const
79 if (isValid() && other.isValid()) {
80 return op() == other.op();
85bool KisCompositeOp::operator!=( const KisCompositeOp& other) const
87 return !(* this == other);
90void KisCompositeOp::fillMap()
92 s_idOpMap[KisID( "normal", i18n( "Normal"))] = COMPOSITE_OVER;
93 s_idOpMap[KisID( "alphadarken", i18n( "Alpha Darken"))] = COMPOSITE_ALPHA_DARKEN;
94 s_idOpMap[KisID( "in", i18n( "In"))] = COMPOSITE_IN;
95 s_idOpMap[KisID( "out", i18n( "Out"))] = COMPOSITE_OUT;
96 s_idOpMap[KisID( "atop", i18n( "Atop"))] = COMPOSITE_ATOP;
97 s_idOpMap[KisID( "xor", i18n( "Xor"))] = COMPOSITE_XOR;
98 s_idOpMap[KisID( "plus", i18n( "Plus"))] = COMPOSITE_PLUS;
99 s_idOpMap[KisID( "minus", i18n( "Minus"))] = COMPOSITE_MINUS;
100 s_idOpMap[KisID( "add", i18n( "Add"))] = COMPOSITE_ADD;
101 s_idOpMap[KisID( "subtract", i18n( "Subtract"))] = COMPOSITE_SUBTRACT;
102 s_idOpMap[KisID( "diff", i18n( "Diff"))] = COMPOSITE_DIFF;
103 s_idOpMap[KisID( "multiply", i18n( "Multiply"))] = COMPOSITE_MULT;
104 s_idOpMap[KisID( "divide", i18n( "Divide"))] = COMPOSITE_DIVIDE;
105 s_idOpMap[KisID( "dodge", i18n( "Dodge"))] = COMPOSITE_DODGE;
106 s_idOpMap[KisID( "burn", i18n( "Burn"))] = COMPOSITE_BURN;
107 s_idOpMap[KisID( "bumpmap", i18n( "Bumpmap"))] = COMPOSITE_BUMPMAP;
108 s_idOpMap[KisID( "copy", i18n( "Copy"))] = COMPOSITE_COPY;
109 s_idOpMap[KisID( "copyred", i18n( "Copy Red"))] = COMPOSITE_COPY_RED;
110 s_idOpMap[KisID( "copygreen", i18n( "Copy Green"))] = COMPOSITE_COPY_GREEN;
111 s_idOpMap[KisID( "copyblue", i18n( "Copy Blue"))] = COMPOSITE_COPY_BLUE;
112 s_idOpMap[KisID( "copyopacity", i18n( "Copy Opacity"))] = COMPOSITE_COPY_OPACITY;
113 s_idOpMap[KisID( "clear", i18n( "Clear"))] = COMPOSITE_CLEAR;
114 s_idOpMap[KisID( "dissolve", i18n( "Dissolve"))] = COMPOSITE_DISSOLVE;
115 s_idOpMap[KisID( "displace", i18n( "Displace"))] = COMPOSITE_DISPLACE;
117 s_idOpMap[KisID( "modulate", i18n( "Modulate"))] = COMPOSITE_MODULATE;
118 s_idOpMap[KisID( "threshold", i18n( "Threshold"))] = COMPOSITE_THRESHOLD;
120 s_idOpMap[KisID( "nocomposition",i18n( "No Composition"))] = COMPOSITE_NO;
121 s_idOpMap[KisID( "darken", i18n( "Darken"))] = COMPOSITE_DARKEN;
122 s_idOpMap[KisID( "lighten", i18n( "Lighten"))] = COMPOSITE_LIGHTEN;
123 s_idOpMap[KisID( "hue", i18n( "Hue"))] = COMPOSITE_HUE;
124 s_idOpMap[KisID( "saturation", i18n( "Saturation"))] = COMPOSITE_SATURATION;
125 s_idOpMap[KisID( "value", i18n( "Value"))] = COMPOSITE_VALUE;
126 s_idOpMap[KisID( "color", i18n( "Color"))] = COMPOSITE_COLOR;
127 s_idOpMap[KisID( "colorize", i18n( "Colorize"))] = COMPOSITE_COLORIZE;
128 s_idOpMap[KisID( "luminize", i18n( "Luminize"))] = COMPOSITE_LUMINIZE;
129 s_idOpMap[KisID( "screen", i18n( "Screen"))] = COMPOSITE_SCREEN;
130 s_idOpMap[KisID( "overlay", i18n( "Overlay"))] = COMPOSITE_OVERLAY;
131 s_idOpMap[KisID( "copycyan", i18n( "Copy Cyan"))] = COMPOSITE_COPY_CYAN;
132 s_idOpMap[KisID( "copymagenta", i18n( "Copy Magenta"))] = COMPOSITE_COPY_MAGENTA;
133 s_idOpMap[KisID( "copyyellow", i18n( "Copy Yellow"))] = COMPOSITE_COPY_YELLOW;
134 s_idOpMap[KisID( "copyblack", i18n( "Copy Black"))] = COMPOSITE_COPY_BLACK;
135 s_idOpMap[KisID( "erase", i18n( "Erase"))] = COMPOSITE_ERASE;
136 s_idOpMap[KisID( "undefined", i18n( "Undefined"))] = COMPOSITE_UNDEF;
|