version 2.4.0

ImageView now optionally save QImage when setImage()
piqt many stream operatorsand new helpers:
 * qSerialize
 * qDeserialize
 * piqSerialize
 * piqDeserialize
This commit is contained in:
2021-08-01 22:09:55 +03:00
parent 29e68e6e6b
commit c0ac0002e6
8 changed files with 120 additions and 114 deletions

View File

@@ -40,16 +40,18 @@ void ImageView::setPixmap(QPixmap pixmap) {
}
void ImageView::setImage(const QImage & i) {
void ImageView::setImage(const QImage & i, bool save) {
im_data.clear();
if (i.isNull()) {
item.setPixmap(QPixmap());
map = QPixmap();
return;
}
QBuffer b(&im_data); b.open(QIODevice::ReadWrite);
i.save(&b, "png");
b.close();
if (save) {
QBuffer b(&im_data); b.open(QIODevice::ReadWrite);
i.save(&b, "png");
b.close();
}
map = QPixmap::fromImage(i);
adjustView();
}

View File

@@ -33,7 +33,7 @@ public:
ImageView(QWidget * parent = 0);
~ImageView();
void setImage(const QImage & i);
void setImage(const QImage & i, bool save = true);
void setImage(const QByteArray & i);
QByteArray image() const {return im_data;}
QPixmap pixmap() const;

View File

@@ -1,69 +0,0 @@
#include "chardialog.h"
#include "chardialogplugin.h"
#include <QtCore/QtPlugin>
CharDialogPlugin::CharDialogPlugin(QObject * parent): QObject(parent) {
m_initialized = false;
}
void CharDialogPlugin::initialize(QDesignerFormEditorInterface * /* core */) {
if (m_initialized)
return;
// Add extension registrations, etc. here
m_initialized = true;
}
bool CharDialogPlugin::isInitialized() const {
return m_initialized;
}
QWidget * CharDialogPlugin::createWidget(QWidget * parent) {
return new CharDialog(parent);
}
QString CharDialogPlugin::name() const {
return QLatin1String("CharDialog");
}
QString CharDialogPlugin::group() const {
return QLatin1String("Dialogs");
}
QIcon CharDialogPlugin::icon() const {
return QIcon(":/icons/chardialog.png");
}
QString CharDialogPlugin::toolTip() const {
return QLatin1String("Character Select Dialog");
}
QString CharDialogPlugin::whatsThis() const {
return QLatin1String("Character Select Dialog");
}
bool CharDialogPlugin::isContainer() const {
return false;
}
QString CharDialogPlugin::domXml() const {
return QLatin1String("<widget class=\"CharDialog\" name=\"charDialog\">\n</widget>\n");
}
QString CharDialogPlugin::includeFile() const {
return QLatin1String("chardialog.h");
}

View File

@@ -1,36 +0,0 @@
#ifndef CHARDIALOGPLUGIN_H
#define CHARDIALOGPLUGIN_H
#include <QObject>
#if QT_VERSION >= 0x050000
# include <QtUiPlugin/QDesignerCustomWidgetInterface>
#else
# include <QDesignerCustomWidgetInterface>
#endif
class CharDialogPlugin: public QObject, public QDesignerCustomWidgetInterface
{
Q_OBJECT
Q_INTERFACES(QDesignerCustomWidgetInterface)
public:
CharDialogPlugin(QObject * parent = 0);
bool isContainer() const;
bool isInitialized() const;
QIcon icon() const;
QString domXml() const;
QString group() const;
QString includeFile() const;
QString name() const;
QString toolTip() const;
QString whatsThis() const;
QWidget * createWidget(QWidget * parent);
void initialize(QDesignerFormEditorInterface * core);
private:
bool m_initialized;
};
#endif // CHARDIALOGPLUGIN_H

View File

@@ -1,7 +1,6 @@
#include "qad_widgets.h"
#include "spinsliderplugin.h"
#include "colorbuttonplugin.h"
#include "chardialogplugin.h"
#include "shortcutsplugin.h"
#include "clineeditplugin.h"
#include "qipeditplugin.h"
@@ -22,7 +21,6 @@
QADWidgets::QADWidgets(QObject * parent): QObject(parent) {
m_widgets.append(new SpinSliderPlugin(this));
m_widgets.append(new ColorButtonPlugin(this));
m_widgets.append(new CharDialogPlugin(this));
m_widgets.append(new ShortcutsPlugin(this));
m_widgets.append(new CLineEditPlugin(this));
m_widgets.append(new QIPEditPlugin(this));

View File

@@ -34,7 +34,7 @@ QString ShortcutsPlugin::name() const {
QString ShortcutsPlugin::group() const {
return QLatin1String("Input Widgets");
return QLatin1String("Editor Widgets");
}