Krita Source Code Documentation
Loading...
Searching...
No Matches
KoPatternColorSource Class Reference

#include <kis_color_source.h>

+ Inheritance diagram for KoPatternColorSource:

Public Member Functions

void applyColorTransformation (const KoColorTransformation *transfo) override
 
void colorize (KisPaintDeviceSP, const QRect &rect, const QPoint &_offset) const override
 
const KoColorSpacecolorSpace () const override
 
 KoPatternColorSource (KisPaintDeviceSP _pattern, int _width, int _height, bool _locked)
 
virtual void resize (double xs, double ys)
 
virtual void rotate (double r)
 
void selectColor (double mix, const KisPaintInformation &pi) override
 
 ~KoPatternColorSource () override
 
- Public Member Functions inherited from KisColorSource
virtual ~KisColorSource ()
 

Private Attributes

QRect m_bounds
 
const KisPaintDeviceSP m_device
 
bool m_locked
 

Detailed Description

Definition at line 112 of file kis_color_source.h.

Constructor & Destructor Documentation

◆ KoPatternColorSource()

KoPatternColorSource::KoPatternColorSource ( KisPaintDeviceSP _pattern,
int _width,
int _height,
bool _locked )

Definition at line 204 of file kis_color_source.cpp.

205 : m_device(_pattern)
206 , m_bounds(QRect(0, 0, _width, _height))
207 , m_locked(_locked)
208{
209}
const KisPaintDeviceSP m_device

◆ ~KoPatternColorSource()

KoPatternColorSource::~KoPatternColorSource ( )
override

Definition at line 211 of file kis_color_source.cpp.

212{
213}

Member Function Documentation

◆ applyColorTransformation()

void KoPatternColorSource::applyColorTransformation ( const KoColorTransformation * transfo)
overridevirtual

Apply a color transformation on the selected color

Implements KisColorSource.

Definition at line 221 of file kis_color_source.cpp.

222{
223 Q_UNUSED(transfo);
224}

◆ colorize()

void KoPatternColorSource::colorize ( KisPaintDeviceSP ,
const QRect & rect,
const QPoint & _offset ) const
overridevirtual

Apply the color on a paint device

Implements KisColorSource.

Definition at line 231 of file kis_color_source.cpp.

232{
233 KisFillPainter painter(device);
234 if (m_locked) {
235 painter.fillRect(rect.x(), rect.y(), rect.width(), rect.height(), m_device, m_bounds);
236 }
237 else {
238 int x = offset.x() % m_bounds.width();
239 int y = offset.y() % m_bounds.height();
240
241 // Change the position, because the pattern is always applied starting
242 // from (0,0) in the paint device reference
243 device->setX(x);
244 device->setY(y);
245 painter.fillRect(rect.x() + x, rect.y() + y, rect.width(), rect.height(), m_device, m_bounds);
246 device->setX(0);
247 device->setY(0);
248 }
249}

References KisFillPainter::fillRect(), m_bounds, m_device, m_locked, KisPaintDevice::setX(), and KisPaintDevice::setY().

◆ colorSpace()

const KoColorSpace * KoPatternColorSource::colorSpace ( ) const
overridevirtual

Implements KisColorSource.

Definition at line 226 of file kis_color_source.cpp.

227{
228 return m_device->colorSpace();
229}
const KoColorSpace * colorSpace() const

References KisPaintDevice::colorSpace(), and m_device.

◆ resize()

void KoPatternColorSource::resize ( double xs,
double ys )
virtual

Definition at line 256 of file kis_color_source.cpp.

257{
258 Q_UNUSED(xs);
259 Q_UNUSED(ys);
260}

◆ rotate()

void KoPatternColorSource::rotate ( double r)
virtual

Definition at line 251 of file kis_color_source.cpp.

252{
253 Q_UNUSED(r);
254}

◆ selectColor()

void KoPatternColorSource::selectColor ( double mix,
const KisPaintInformation & pi )
overridevirtual

This is function is called to initialize the color that will be used for the dab.

Parameters
mixis a parameter between 0.0 and 1.0
pipaint information

Implements KisColorSource.

Definition at line 215 of file kis_color_source.cpp.

216{
217 Q_UNUSED(mix);
218 Q_UNUSED(pi);
219}

Member Data Documentation

◆ m_bounds

QRect KoPatternColorSource::m_bounds
private

Definition at line 126 of file kis_color_source.h.

◆ m_device

const KisPaintDeviceSP KoPatternColorSource::m_device
private

Definition at line 125 of file kis_color_source.h.

◆ m_locked

bool KoPatternColorSource::m_locked
private

Definition at line 127 of file kis_color_source.h.


The documentation for this class was generated from the following files: