X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Ftitledocument.h;h=a00c8b7dca89b1a08276e921d9c8beed602c18ed;hb=b284a0f9772513aa917c6b1bb15216e9b0ebf49a;hp=e673cc6044a8396885d2ca085198996e23d04371;hpb=5fa9e0986e09082d6094c41d0c0ff2e69d343646;p=kdenlive diff --git a/src/titledocument.h b/src/titledocument.h index e673cc60..a00c8b7d 100644 --- a/src/titledocument.h +++ b/src/titledocument.h @@ -22,34 +22,44 @@ #include class QGraphicsScene; -class QGraphicsPolygonItem; +class QGraphicsRectItem; +class QGraphicsItem; + +const int ROTATEFACTOR = 103; +const int ZOOMFACTOR = 104; class TitleDocument { - QGraphicsScene* m_scene; + public: TitleDocument(); - void setScene(QGraphicsScene* scene); - bool saveDocument(const KUrl& url, QGraphicsPolygonItem* startv, QGraphicsPolygonItem* endv); - int loadDocument(const KUrl& url, QGraphicsPolygonItem* startv, QGraphicsPolygonItem* endv); - QDomDocument xml(QGraphicsPolygonItem* startv, QGraphicsPolygonItem* endv); - int loadFromXml(QDomDocument doc, QGraphicsPolygonItem* startv, QGraphicsPolygonItem* endv); + void setScene(QGraphicsScene* scene, int width, int height); + bool saveDocument(const KUrl& url, QGraphicsRectItem* startv, QGraphicsRectItem* endv, int out, bool embed_images = false); + QDomDocument xml(QGraphicsRectItem* startv, QGraphicsRectItem* endv, bool embed_images = false); + int loadFromXml(QDomDocument doc, QGraphicsRectItem* startv, QGraphicsRectItem* endv, int *out, const QString& projectpath = ""); /** \brief Get the background color (incl. alpha) from the document, if possibly * \returns The background color of the document, inclusive alpha. If none found, returns (0,0,0,0) */ QColor getBackgroundColor(); - - static const int OriginXLeft = 0; - static const int OriginYTop = 1; - - static const int AxisDefault = 0; - static const int AxisInverted = 1; + int frameWidth() const; + int frameHeight() const; + /** \brief Extract embeded images in project titles folder. */ + static const QString extractBase64Image(const QString &titlePath, const QString &data); + + enum ItemOrigin {OriginXLeft = 0, OriginYTop = 1}; + enum AxisPosition {AxisDefault = 0, AxisInverted = 1}; private: + QGraphicsScene* m_scene; + QString m_projectPath; + int m_width; + int m_height; QString colorToString(const QColor&); QString rectFToString(const QRectF&); QRectF stringToRect(const QString &); QColor stringToColor(const QString &); QTransform stringToTransform(const QString &); + QList stringToList(const QString &); + int base64ToUrl(QGraphicsItem* item, QDomElement& content, bool embed); }; #endif