aboutsummaryrefslogtreecommitdiffstats
path: root/Plugins/MultiEditorImage/multieditorimage.h
diff options
context:
space:
mode:
authorLibravatarUnit 193 <unit193@ubuntu.com>2018-07-27 23:54:15 -0400
committerLibravatarUnit 193 <unit193@ubuntu.com>2018-07-27 23:54:15 -0400
commit6d3d39356473078c6b47e03b8a7616e4b34de928 (patch)
treefe5be2e6a08e4cfc73207746aba4c9fccfecfa10 /Plugins/MultiEditorImage/multieditorimage.h
parentf98e49169a40876bcf1df832de6e908d1b350193 (diff)
parentfeda8a7db8d1d7c5439aa8f8feef7cc0dd2b59a0 (diff)
Update upstream source from tag 'upstream/3.2.1+dfsg1'
Update to upstream version '3.2.1+dfsg1' with Debian dir 5ea0333565de4dc898c062cc0ff4ba1153e2c1e4
Diffstat (limited to 'Plugins/MultiEditorImage/multieditorimage.h')
-rw-r--r--Plugins/MultiEditorImage/multieditorimage.h67
1 files changed, 67 insertions, 0 deletions
diff --git a/Plugins/MultiEditorImage/multieditorimage.h b/Plugins/MultiEditorImage/multieditorimage.h
new file mode 100644
index 0000000..7a305cf
--- /dev/null
+++ b/Plugins/MultiEditorImage/multieditorimage.h
@@ -0,0 +1,67 @@
+#ifndef MULTIEDITORIMAGE_H
+#define MULTIEDITORIMAGE_H
+
+#include "multieditor/multieditorwidget.h"
+#include "multieditor/multieditorwidgetplugin.h"
+#include "multieditorimage_global.h"
+#include "datatype.h"
+#include "plugins/genericplugin.h"
+#include <QVariant>
+
+class QLabel;
+class QScrollArea;
+class QScrollBar;
+
+class MultiEditorImage : public MultiEditorWidget
+{
+ Q_OBJECT
+
+ public:
+ MultiEditorImage();
+
+ void setValue(const QVariant& value);
+ QVariant getValue();
+ void setReadOnly(bool boolValue);
+ QList<QWidget*> getNoScrollWidgets();
+ void focusThisWidget();
+ void notifyAboutUnload();
+
+ private:
+ void scale(double factor);
+
+ QByteArray imgData;
+ QByteArray imgFormat;
+ QScrollArea* scrollArea = nullptr;
+ QLabel* imgLabel = nullptr;
+ QAction* loadAction = nullptr;
+ QAction* zoomInAct = nullptr;
+ QAction* zoomOutAct = nullptr;
+ double currentZoom = 1.0;
+
+ private slots:
+ void openFile();
+ void saveFile();
+ void zoomIn();
+ void zoomOut();
+ void resetZoom();
+};
+
+class MULTIEDITORIMAGE_EXPORT MultiEditorImagePlugin : public GenericPlugin, public MultiEditorWidgetPlugin
+{
+ Q_OBJECT
+
+ SQLITESTUDIO_PLUGIN("multieditorimage.json")
+
+ public:
+ MultiEditorWidget* getInstance();
+ bool validFor(const DataType& dataType);
+ int getPriority(const DataType& dataType);
+ QString getTabLabel();
+ bool init();
+ void deinit();
+
+ private:
+ QList<MultiEditorImage*> instances;
+};
+
+#endif // MULTIEDITORIMAGE_H