1 // SPDX-License-Identifier: GPL-2.0-or-later 2 /* 3 * Copyright (C) 2007 Authors: 4 * Christopher Brown <audiere@gmail.com> 5 * Ted Gould <ted@gould.cx> 6 * 7 * Released under GNU GPL v2+, read the file 'COPYING' for more information. 8 */ 9 10 #include "extension/effect.h" 11 #include "extension/system.h" 12 13 #include "wave.h" 14 #include <Magick++.h> 15 16 namespace Inkscape { 17 namespace Extension { 18 namespace Internal { 19 namespace Bitmap { 20 21 void applyEffect(Magick::Image * image)22Wave::applyEffect(Magick::Image* image) { 23 image->wave(_amplitude, _wavelength); 24 } 25 26 void refreshParameters(Inkscape::Extension::Effect * module)27Wave::refreshParameters(Inkscape::Extension::Effect* module) { 28 _amplitude = module->get_param_float("amplitude"); 29 _wavelength = module->get_param_float("wavelength"); 30 } 31 32 #include "../clear-n_.h" 33 34 void init()35Wave::init() 36 { 37 // clang-format off 38 Inkscape::Extension::build_from_mem( 39 "<inkscape-extension xmlns=\"" INKSCAPE_EXTENSION_URI "\">\n" 40 "<name>" N_("Wave") "</name>\n" 41 "<id>org.inkscape.effect.bitmap.wave</id>\n" 42 "<param name=\"amplitude\" gui-text=\"" N_("Amplitude:") "\" type=\"float\" min=\"-720.0\" max=\"720.0\">25</param>\n" 43 "<param name=\"wavelength\" gui-text=\"" N_("Wavelength:") "\" type=\"float\" min=\"-720.0\" max=\"720.0\">150</param>\n" 44 "<effect>\n" 45 "<object-type>all</object-type>\n" 46 "<effects-menu>\n" 47 "<submenu name=\"" N_("Raster") "\" />\n" 48 "</effects-menu>\n" 49 "<menu-tip>" N_("Alter selected bitmap(s) along sine wave") "</menu-tip>\n" 50 "</effect>\n" 51 "</inkscape-extension>\n", new Wave()); 52 // clang-format on 53 } 54 55 }; /* namespace Bitmap */ 56 }; /* namespace Internal */ 57 }; /* namespace Extension */ 58 }; /* namespace Inkscape */ 59