Krita Source Code Documentation
Loading...
Searching...
No Matches
GRID_GUIDE_1032 Struct Reference

#include <psd_resource_block.h>

+ Inheritance diagram for GRID_GUIDE_1032:

Public Member Functions

bool createBlock (QByteArray &data) override
 
QString displayText () override
 
 GRID_GUIDE_1032 ()
 
bool interpretBlock (QByteArray data) override
 
bool valid () override
 
- Public Member Functions inherited from PSDInterpretedResource
virtual ~PSDInterpretedResource ()
 

Public Attributes

const int documentMultiplier {32}
 
qint32 gridHorizontal
 
qint32 gridVertical
 
QList< quint32 > horizontalGuides
 
quint32 version
 
QList< quint32 > verticalGuides
 
- Public Attributes inherited from PSDInterpretedResource
QString error
 

Additional Inherited Members

- Protected Member Functions inherited from PSDInterpretedResource
void startBlock (QBuffer &buf, PSDImageResourceSection::PSDResourceID id, quint32 size)
 

Detailed Description

Definition at line 368 of file psd_resource_block.h.

Constructor & Destructor Documentation

◆ GRID_GUIDE_1032()

GRID_GUIDE_1032::GRID_GUIDE_1032 ( )
inline

Definition at line 369 of file psd_resource_block.h.

370 : version(1)
371 , gridHorizontal(0)
372 , gridVertical(0)
373 {
374 }

Member Function Documentation

◆ createBlock()

bool GRID_GUIDE_1032::createBlock ( QByteArray & data)
inlineoverridevirtual

Reimplemented from PSDInterpretedResource.

Definition at line 402 of file psd_resource_block.h.

403 {
404 QBuffer buf(&data);
405 quint32 size = 16;
406 size += (horizontalGuides.size() * 5);
407 size += (verticalGuides.size() * 5);
409 psdwrite(buf, version);
410 psdwrite(buf, (quint32)gridHorizontal);
411 psdwrite(buf, (quint32)gridVertical);
412 psdwrite(buf, quint32(horizontalGuides.size()+verticalGuides.size()));
413 Q_FOREACH(quint32 guide, verticalGuides) {
414 psdwrite(buf, quint32(guide * documentMultiplier));
415 psdwrite(buf, false);
416 }
417 Q_FOREACH(quint32 guide, horizontalGuides) {
418 psdwrite(buf, quint32(guide * documentMultiplier));
419 psdwrite(buf, true);
420 }
421 buf.close();
422 return true;
423 }
void startBlock(QBuffer &buf, PSDImageResourceSection::PSDResourceID id, quint32 size)
int size(const Forest< T > &forest)
Definition KisForest.h:1232
std::enable_if_t< std::is_arithmetic< T >::value, bool > psdwrite(QIODevice &io, T v)
Definition psd_utils.h:170
QList< quint32 > verticalGuides
QList< quint32 > horizontalGuides

References PSDImageResourceSection::GRID_GUIDE, and psdwrite().

◆ displayText()

QString GRID_GUIDE_1032::displayText ( )
inlineoverridevirtual

Reimplemented from PSDInterpretedResource.

Definition at line 430 of file psd_resource_block.h.

431 {
432 QStringList guidesText;
433 guidesText.append(QString("Grids and Guides version: %1").arg(version));
434 guidesText.append(QString("Grids vertical: %1, horizontal: %2")
435 .arg(gridVertical).arg(gridHorizontal));
436 QStringList vertical;
437 QStringList horizontal;
438 Q_FOREACH(quint32 guide, verticalGuides) {
439 vertical.append(QString::number(guide));
440 }
441 Q_FOREACH(quint32 guide, horizontalGuides) {
442 horizontal.append(QString::number(guide));
443 }
444 guidesText.append(QString("Vertical guides: %1").arg(vertical.join(", ")));
445 guidesText.append(QString("Horizontal guides: %1").arg(horizontal.join(", ")));
446 return guidesText.join("\n");
447 }

◆ interpretBlock()

bool GRID_GUIDE_1032::interpretBlock ( QByteArray data)
inlineoverridevirtual

Reimplemented from PSDInterpretedResource.

Definition at line 376 of file psd_resource_block.h.

377 {
378 dbgFile << "Reading GRID_GUIDE_1032";
379 QDataStream ds(data);
380 ds.setByteOrder(QDataStream::BigEndian);
381 qint32 guidesLength;
382
383 // version == 1, adobe documentation says that grid values are for
384 //'future implementation document-specific grids', but this future
385 // does not seem to have come to pass as of yet.
386 ds >> version >> gridHorizontal >> gridVertical >> guidesLength;
387
388 for (qint32 i=0; i < guidesLength; i++) {
389 quint32 guide;
390 bool horizontal;
391 ds >> guide >> horizontal;
392 if (horizontal) {
393 horizontalGuides.append(guide / documentMultiplier);
394 } else {
395 verticalGuides.append(guide / documentMultiplier);
396 }
397 }
398
399 return ds.atEnd();
400 }
#define dbgFile
Definition kis_debug.h:53

References dbgFile.

◆ valid()

bool GRID_GUIDE_1032::valid ( )
inlineoverridevirtual

Reimplemented from PSDInterpretedResource.

Definition at line 425 of file psd_resource_block.h.

426 {
427 return true;
428 }

Member Data Documentation

◆ documentMultiplier

const int GRID_GUIDE_1032::documentMultiplier {32}

Definition at line 449 of file psd_resource_block.h.

449{32};

◆ gridHorizontal

qint32 GRID_GUIDE_1032::gridHorizontal

Definition at line 451 of file psd_resource_block.h.

◆ gridVertical

qint32 GRID_GUIDE_1032::gridVertical

Definition at line 452 of file psd_resource_block.h.

◆ horizontalGuides

QList<quint32> GRID_GUIDE_1032::horizontalGuides

Definition at line 453 of file psd_resource_block.h.

◆ version

quint32 GRID_GUIDE_1032::version

Definition at line 450 of file psd_resource_block.h.

◆ verticalGuides

QList<quint32> GRID_GUIDE_1032::verticalGuides

Definition at line 454 of file psd_resource_block.h.


The documentation for this struct was generated from the following file: