129 for (
int i=0; i < grayStrips; i++ ) {
131 float sectionPercent = 1.0 / (float)grayStrips;
132 bool isAlternating = i % 2;
172 font.setPixelSize(14);
175 m_noPreviewText = this->scene()->addText(i18n(
"No Preview for this engine"),font);
222 qreal previewSize = qBound(3.0,
m_currentPreset->settings()->paintOpSize(), 25.0 );
232 settings->setPaintOpSize(previewSize);
234 int maxTextureSize = 200;
235 int textureOffsetX = settings->getInt(
"Texture/Pattern/MaximumOffsetX")*2;
236 int textureOffsetY = settings->getInt(
"Texture/Pattern/MaximumOffsetY")*2;
237 double textureScale = settings->getDouble(
"Texture/Pattern/Scale");
238 if ( textureOffsetX*textureScale> maxTextureSize || textureOffsetY*textureScale > maxTextureSize) {
239 int maxSize = qMax(textureOffsetX, textureOffsetY);
240 double result = qreal(maxTextureSize) / maxSize;
241 settings->setProperty(
"Texture/Pattern/Scale", result);
243 if (proxy_preset->paintOp().id() ==
"spraybrush") {
247 QString brushDefinition = settings->getString(
"brush_definition");
248 if (!brushDefinition.isEmpty()) {
249 d.setContent(brushDefinition,
false);
250 element = d.firstChildElement(
"Brush");
254 qreal width = brush->image().width();
255 qreal scale = brush->scale();
256 qreal diameterToBrushRatio = 1.0;
257 qreal diameter = settings->getInt(
"Spray/diameter");
259 if (brush->filename().endsWith(
".svg", Qt::CaseInsensitive)) {
260 diameterToBrushRatio = diameter/(1000.0*scale);
261 scale = 25.0 / 1000.0;
263 if (width * scale > 25.0) {
264 diameterToBrushRatio = diameter / (width * scale);
265 scale = 25.0 / width;
267 if (!settings->getBool(
"SprayShape/proportional")) {
268 settings->setProperty(
"SprayShape/width", qRound(scale * settings->getInt(
"SprayShape/width")));
269 settings->setProperty(
"SprayShape/height", qRound(scale * settings->getInt(
"SprayShape/height")));
273 settings->setProperty(
"Spray/diameter",
int(25.0 * diameterToBrushRatio));
275 brush->setScale(scale);
277 element = d.createElement(
"Brush");
278 brush->toXML(d, element);
279 d.appendChild(element);
280 settings->setProperty(
"brush_definition", d.toString());
284 proxy_preset->setSettings(settings);
291 resources->
setOpacity(settings->paintOpOpacity());
302 if (proxy_preset->paintOp().id() ==
"mypaintbrush") {
309 if (proxy_preset->paintOp().id() ==
"sketchbrush"
310 || proxy_preset->paintOp().id() ==
"curvebrush"
311 || proxy_preset->paintOp().id() ==
"particlebrush") {
317 pointOne.
setPos(QPointF(startX, middle));
320 pointTwo.
setPos(QPointF(startX, middle));
323 for (
int i = 0; i < repeats; i++) {
328 qreal xPos = ((1.0/repeats) * (i+1) * (endX-startX) )+startX;
329 pointTwo.
setPos(QPointF(xPos, middle));
331 qreal offset = (this->height()/(repeats*1.5))*(i+1);
332 qreal handleY = middle + offset;
334 handleY = middle - offset;
340 QPointF(pointOne.
pos().x(),
342 QPointF(pointTwo.
pos().x(),
QImage convertToQImage(const KoColorProfile *dstProfile, qint32 x, qint32 y, qint32 w, qint32 h, KoColorConversionTransformation::Intent renderingIntent=KoColorConversionTransformation::internalRenderingIntent(), KoColorConversionTransformation::ConversionFlags conversionFlags=KoColorConversionTransformation::internalConversionFlags()) const