void PictureShape::setMode(PictureShape::PictureMode mode) { if ( mode != m_mode ) { m_mode = mode; KFilterEffect* filterMode = filterEffectStack()->takeFilterEffect(0); delete filterMode; switch( mode ) { case Greyscale: filterMode = new GreyscaleFilterEffect(); break; case Mono: filterMode = new MonoFilterEffect(); break; default: filterMode = new WatermarkFilterEffect(); break; } if ( filterMode ) filterEffectStack()->appendFilterEffect(filterMode); update(); } }
void PictureShape::setColorMode(PictureShape::ColorMode mode) { if (mode != m_colorMode) { filterEffectStack()->removeFilterEffect(0); switch(mode) { case Greyscale: filterEffectStack()->appendFilterEffect(new GreyscaleFilterEffect()); break; case Mono: filterEffectStack()->appendFilterEffect(new MonoFilterEffect()); break; case Watermark: filterEffectStack()->appendFilterEffect(new WatermarkFilterEffect()); break; default: break; } m_colorMode = mode; update(); } }