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

#include <ora_converter.h>

+ Inheritance diagram for OraConverter:

Public Slots

virtual void cancel ()
 

Public Member Functions

vKisNodeSP activeNodes ()
 
KisImportExportErrorCode buildFile (QIODevice *io, KisImageSP image, vKisNodeSP activeNodes)
 
KisImportExportErrorCode buildImage (QIODevice *io)
 
KisImageSP image ()
 
 OraConverter (KisDocument *doc)
 
 ~OraConverter () override
 

Private Attributes

vKisNodeSP m_activeNodes
 
KisDocumentm_doc
 
KisImageSP m_image
 
bool m_stop
 

Detailed Description

Definition at line 17 of file ora_converter.h.

Constructor & Destructor Documentation

◆ OraConverter()

OraConverter::OraConverter ( KisDocument * doc)

Definition at line 25 of file ora_converter.cpp.

26 : m_doc(doc)
27 , m_stop(false)
28{
29}
KisDocument * m_doc

◆ ~OraConverter()

OraConverter::~OraConverter ( )
override

Definition at line 31 of file ora_converter.cpp.

32{
33}

Member Function Documentation

◆ activeNodes()

vKisNodeSP OraConverter::activeNodes ( )

Definition at line 66 of file ora_converter.cpp.

67{
68 return m_activeNodes;
69}
vKisNodeSP m_activeNodes

References m_activeNodes.

◆ buildFile()

KisImportExportErrorCode OraConverter::buildFile ( QIODevice * io,
KisImageSP image,
vKisNodeSP activeNodes )

Definition at line 71 of file ora_converter.cpp.

72{
73
74 // Open file for writing
75 KoStore* store = KoStore::createStore(io, KoStore::Write, "image/openraster", KoStore::Zip);
76 if (!store) {
77 delete store;
79 }
80
81 KisOpenRasterSaveContext osc(store);
83
84 image->rootLayer()->accept(orssv);
85
86 if (store->open("Thumbnails/thumbnail.png")) {
87 QSize previewSize = image->bounds().size();
88 previewSize.scale(QSize(256,256), Qt::KeepAspectRatio);
89
90 QImage preview = image->convertToQImage(previewSize, 0);
91
92 KoStoreDevice io(store);
93 if (io.open(QIODevice::WriteOnly)) {
94 preview.save(&io, "PNG");
95 }
96 io.close();
97 store->close();
98 }
99
101 KisPNGConverter::saveDeviceToStore("mergedimage.png", image->bounds(), image->xRes(), image->yRes(), dev, store);
102
103 delete store;
105}
QImage convertToQImage(qint32 x1, qint32 y1, qint32 width, qint32 height, const KoColorProfile *profile)
KisGroupLayerSP rootLayer() const
KisPaintDeviceSP projection() const
double xRes() const
double yRes() const
QRect bounds() const override
static bool saveDeviceToStore(const QString &filename, const QRect &imageRect, const qreal xRes, const qreal yRes, KisPaintDeviceSP dev, KoStore *store, KisMetaData::Store *metaData=0)
saveDeviceToStore saves the given paint device to the KoStore. If the device is not 8 bits sRGB,...
bool close()
Definition KoStore.cpp:156
@ Write
Definition KoStore.h:29
@ Zip
Definition KoStore.h:30
static KoStore * createStore(const QString &fileName, Mode mode, const QByteArray &appIdentification=QByteArray(), Backend backend=Auto, bool writeMimetype=true)
Definition KoStore.cpp:39
bool open(const QString &name)
Definition KoStore.cpp:109
vKisNodeSP activeNodes()
KisImageSP image()
bool accept(KisNodeVisitor &v) override

References KisGroupLayer::accept(), activeNodes(), KisImage::bounds(), KoStore::close(), KoStoreDevice::close(), KisImage::convertToQImage(), KoStore::createStore(), ImportExportCodes::Failure, image(), ImportExportCodes::OK, KoStore::open(), KoStoreDevice::open(), KisImage::projection(), KisImage::rootLayer(), KisPNGConverter::saveDeviceToStore(), KoStore::Write, KisImage::xRes(), KisImage::yRes(), and KoStore::Zip.

◆ buildImage()

KisImportExportErrorCode OraConverter::buildImage ( QIODevice * io)

Definition at line 35 of file ora_converter.cpp.

36{
37 KoStore* store = KoStore::createStore(io, KoStore::Read, "image/openraster", KoStore::Zip);
38 if (!store) {
39 delete store;
41 }
42
43 KisOpenRasterLoadContext olc(store);
45 orslv.loadImage();
46 m_image = orslv.image();
47
48 qDebug() << "m_image" << m_image;
49
50 if (!m_image) {
51 delete store;
53 }
54
55 m_activeNodes = orslv.activeNodes();
56 delete store;
57
59}
KisUndoStore * createUndoStore()
@ Read
Definition KoStore.h:29
KisImageSP m_image

References KisOpenRasterStackLoadVisitor::activeNodes(), KoStore::createStore(), KisDocument::createUndoStore(), ImportExportCodes::ErrorWhileReading, ImportExportCodes::FileFormatIncorrect, KisOpenRasterStackLoadVisitor::image(), KisOpenRasterStackLoadVisitor::loadImage(), m_activeNodes, m_doc, m_image, ImportExportCodes::OK, KoStore::Read, and KoStore::Zip.

◆ cancel

void OraConverter::cancel ( )
virtualslot

Definition at line 108 of file ora_converter.cpp.

109{
110 m_stop = true;
111}

References m_stop.

◆ image()

KisImageSP OraConverter::image ( )

Retrieve the constructed image

Definition at line 61 of file ora_converter.cpp.

62{
63 return m_image;
64}

References m_image.

Member Data Documentation

◆ m_activeNodes

vKisNodeSP OraConverter::m_activeNodes
private

Definition at line 36 of file ora_converter.h.

◆ m_doc

KisDocument* OraConverter::m_doc
private

Definition at line 35 of file ora_converter.h.

◆ m_image

KisImageSP OraConverter::m_image
private

Definition at line 34 of file ora_converter.h.

◆ m_stop

bool OraConverter::m_stop
private

Definition at line 37 of file ora_converter.h.


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