28#include <ksharedptr.h>
31#include "kis_global.h"
35#include "kis_colorspace.h"
37#include <koffice_export.h>
50class KRITACORE_EXPORT KisPaintInformation {
52 KisPaintInformation( double pressure = PRESSURE_DEFAULT,
53 double xTilt = 0.0, double yTilt = 0.0,
54 KisVector2D movement = KisVector2D())
55 : pressure(pressure), xTilt(xTilt), yTilt(yTilt), movement(movement) {}
62class KRITACORE_EXPORT KisPaintOp : public TDEShared
68 virtual ~KisPaintOp();
71 void setSource(KisPaintDeviceSP p);
77 virtual bool incremental() { return false; }
82 virtual KisPaintDeviceSP computeDab(KisAlphaMaskSP mask);
83 virtual KisPaintDeviceSP computeDab(KisAlphaMaskSP mask, KisColorSpace *cs);
89 virtual void splitCoordinate( double coordinate, TQ_INT32 *whole, double *fraction);
91 KisPainter * m_painter;
92 KisPaintDeviceSP m_source;
94 KisPaintDeviceSP m_dab;
97class KisPaintOpSettings {
100 KisPaintOpSettings(TQWidget *parent) { Q_UNUSED(parent); }
101 virtual ~KisPaintOpSettings() {}
103 virtual TQWidget *widget() const { return 0; }
111class KisPaintOpFactory : public TDEShared
115 KisPaintOpFactory() {}
116 virtual ~KisPaintOpFactory() {}
118 virtual KisPaintOp * createOp( const KisPaintOpSettings * settings, KisPainter * painter) = 0;
119 virtual KisID id() { return KisID( "abstractpaintop", i18n( "Abstract PaintOp")); }
138 virtual KisPaintOpSettings* settings(TQWidget* parent, const KisInputDevice& inputDevice);
KisAlphaMask is intended to create alpha values from a TQImage for use in brush creation.
A colorspace is the definition of a certain color model in Chalk.
Chalk has a large number of extensible resources.
virtual bool userVisible(KisColorSpace *cs=0) Whether this paintop is internal to a certain tool or can be used in various tools.
virtual KisPaintOpSettings * settings(TQWidget *parent, const KisInputDevice &inputDevice) Create and return an (abstracted) widget with options for this paintop when used with the specified i...
virtual TQString pixmap() The filename of the pixmap we can use to represent this paintop in the ui.
KisPainter contains the graphics primitives necessary to draw on a KisPaintDevice.
A double-based point class that can return it's coordinates approximated to integers.
|