Scribus API for plugins
A stable, high level and documented interface to the Scribus core that plugin developers can use to access the Scribus features.
scribusAPIDocumentItem.h
1 
5 /*
6  * This file is part of the ScribusAPIDocument plugin
7  * (c) GPL 2, Ale Rimoldi <ale@graphicslab.org>
8  * For the full copyright and license information, please view the LICENSE
9  */
10 #ifndef SCRIBUSAPIDOCUMENTITEM_H
11 #define SCRIBUSAPIDOCUMENTITEM_H
12 
13 #include <QDebug>
14 #include <QObject>
15 
16 #include <QVector>
17 #include <QSize>
18 
19 #include "scribusdoc.h"
20 
22 
24 {
25  QString filename;
26  QString filePath;
27  QString fileContent;
28 };
30 {
31  QString path;
32  QString filename;
33  QString content;
34  QSize imageSize;
35  QString description; // for alt text
36  QString mediatype;
37 };
38 
39 class ScribusAPIDocumentItem : public QObject
40 {
41  Q_OBJECT
42 public:
43  ScribusAPIDocumentItem(PageItem* item) : scribusItem{item} {}
45  PageItem* getItem() { return scribusItem; }
46  void setPageNumber(int pageNumber) { pageNumber = pageNumber; }
47  bool isBefore(ScribusAPIDocumentItem* const item) const;
51  static bool isBeforeQSort(ScribusAPIDocumentItem* const item1, ScribusAPIDocumentItem* const item2) { /*return true; } // */ return item1->isBefore(item2); }
52  int getX() const { return scribusItem->gXpos; }
53  int getY() const { return scribusItem->gYpos; }
54  void render();
55 
56  bool isTextFrame() { return scribusItem->asTextFrame(); }
57  bool isImageFrame() { return scribusItem->asImageFrame(); }
58  ScribusAPIDocumentItemText* getText();
59 
60  QString getName() { return scribusItem->itemName(); }
61 
62 
63  ScribusAPIDocumentItemImageWeb getImageWeb();
64  QList<ScribusAPIDocumentItemResourceFile> getResourceFiles();
65 
66 protected:
67  int pageNumber;
68  PageItem* scribusItem;
69 };
70 
71 QDebug operator<<(QDebug dbg, const ScribusAPIDocumentItem &scribusDocumentItem);
72 QDebug operator<<(QDebug dbg, const ScribusAPIDocumentItemResourceFile file);
73 QDebug operator<<(QDebug dbg, const ScribusAPIDocumentItemImageWeb image);
74 
75 #endif //SCRIBUSAPIDOCUMENTITEM_H
static bool isBeforeQSort(ScribusAPIDocumentItem *const item1, ScribusAPIDocumentItem *const item2)
Definition: scribusAPIDocumentItem.h:51
Definition: scribusAPIDocumentItem.h:39
Definition: scribusAPIDocumentItem.h:23
bool isBefore(ScribusAPIDocumentItem *const item) const
Definition: scribusAPIDocumentItem.cpp:26
Definition: scribusAPIDocumentItemText.h:32
Definition: scribusAPIDocumentItem.h:29