From kde-commits Fri Dec 31 23:27:34 2010 From: Geoffry Song Date: Fri, 31 Dec 2010 23:27:34 +0000 To: kde-commits Subject: [Calligra] 26103a4: add KisDynamicSensorPerspective Message-Id: <20101231232734.4EDA9A609B () git ! kde ! org> X-MARC-Message: https://marc.info/?l=kde-commits&m=129383810116697 commit 26103a4bc6b7910cc772b18d2311102a4221e3cb branch master Author: Geoffry Song Date: Wed Dec 29 22:43:10 2010 -0500 add KisDynamicSensorPerspective diff --git a/krita/plugins/paintops/libpaintop/kis_dynamic_sensor.cc b/krita/plugins/paintops/libpaintop/kis_dynamic_sensor.cc index 3c34e95..0a7da23 100644 --- a/krita/plugins/paintops/libpaintop/kis_dynamic_sensor.cc +++ b/krita/plugins/paintops/libpaintop/kis_dynamic_sensor.cc @@ -63,6 +63,8 @@ KisDynamicSensor* KisDynamicSensor::id2Sensor(const KoID& id) return new KisDynamicSensorFuzzy(); } else if (id.id() == FadeId.id()) { return new KisDynamicSensorFade(); + } else if (id.id() == PerspectiveId.id()) { + return new KisDynamicSensorPerspective(); } dbgPlugins << "Unknown transform parameter :" << id.id(); @@ -91,7 +93,7 @@ KisDynamicSensor* KisDynamicSensor::createFromXML(const QDomElement& e) QList KisDynamicSensor::sensorsIds() { QList ids; - ids << PressureId << XTiltId << YTiltId << SpeedId << DrawingAngleId << RotationId << DistanceId << TimeId << FuzzyId << FadeId; + ids << PressureId << XTiltId << YTiltId << SpeedId << DrawingAngleId << RotationId << DistanceId << TimeId << FuzzyId << FadeId << PerspectiveId; return ids; } diff --git a/krita/plugins/paintops/libpaintop/kis_dynamic_sensor.h b/krita/plugins/paintops/libpaintop/kis_dynamic_sensor.h index e62b668..e55b6e1 100644 --- a/krita/plugins/paintops/libpaintop/kis_dynamic_sensor.h +++ b/krita/plugins/paintops/libpaintop/kis_dynamic_sensor.h @@ -43,6 +43,7 @@ const KoID RotationId("rotation", ki18n("Rotation")); ///< rotation coming from const KoID PressureId("pressure", ki18n("Pressure")); ///< number depending on the pressure const KoID XTiltId("xtilt", ki18n("X-Tilt")); ///< number depending on X-tilt const KoID YTiltId("ytilt", ki18n("Y-Tilt")); ///< number depending on Y-tilt +const KoID PerspectiveId("perspective", ki18n("Perspective")); ///< number depending on the distance on the perspective grid /** * Sensor are used to extract from KisPaintInformation a single diff --git a/krita/plugins/paintops/libpaintop/sensors/kis_dynamic_sensors.cc b/krita/plugins/paintops/libpaintop/sensors/kis_dynamic_sensors.cc index 2a9b30c..857c903 100644 --- a/krita/plugins/paintops/libpaintop/sensors/kis_dynamic_sensors.cc +++ b/krita/plugins/paintops/libpaintop/sensors/kis_dynamic_sensors.cc @@ -72,3 +72,8 @@ KisDynamicSensorYTilt::KisDynamicSensorYTilt() : KisDynamicSensor(YTiltId) setMaximumLabel(i18n("30°")); } +KisDynamicSensorPerspective::KisDynamicSensorPerspective() : KisDynamicSensor(PerspectiveId) +{ + setMinimumLabel(i18n("Far")); + setMaximumLabel(i18n("Near")); +} diff --git a/krita/plugins/paintops/libpaintop/sensors/kis_dynamic_sensors.h b/krita/plugins/paintops/libpaintop/sensors/kis_dynamic_sensors.h index fb12c0a..5eba10c 100644 --- a/krita/plugins/paintops/libpaintop/sensors/kis_dynamic_sensors.h +++ b/krita/plugins/paintops/libpaintop/sensors/kis_dynamic_sensors.h @@ -100,4 +100,14 @@ public: } }; +class KisDynamicSensorPerspective : public KisDynamicSensor +{ +public: + KisDynamicSensorPerspective(); + virtual ~KisDynamicSensorPerspective() { } + virtual qreal parameter(const KisPaintInformation& info) { + return info.perspective(); + } +}; + #endif