add plugin for PIVariantEdit
This commit is contained in:
BIN
icons/pivariantedit.png
Normal file
BIN
icons/pivariantedit.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1.3 KiB |
70
libs/piqt_utils/plugin/pivariantedit_plugin.cpp
Normal file
70
libs/piqt_utils/plugin/pivariantedit_plugin.cpp
Normal file
@@ -0,0 +1,70 @@
|
|||||||
|
#include "pivariantedit_plugin.h"
|
||||||
|
|
||||||
|
#include "pivariant_edit.h"
|
||||||
|
|
||||||
|
#include <QtCore/QtPlugin>
|
||||||
|
|
||||||
|
|
||||||
|
PIVariantEditPlugin::PIVariantEditPlugin(QObject * parent): QObject(parent) {
|
||||||
|
m_initialized = m_designer = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void PIVariantEditPlugin::initialize(QDesignerFormEditorInterface * /* core */) {
|
||||||
|
m_designer = true;
|
||||||
|
if (m_initialized) return;
|
||||||
|
|
||||||
|
// Add extension registrations, etc. here
|
||||||
|
|
||||||
|
m_initialized = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
bool PIVariantEditPlugin::isInitialized() const {
|
||||||
|
return m_initialized;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
QWidget * PIVariantEditPlugin::createWidget(QWidget * parent) {
|
||||||
|
return new PIVariantEdit(parent);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
QString PIVariantEditPlugin::name() const {
|
||||||
|
return QLatin1String("PIVariantEdit");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
QString PIVariantEditPlugin::group() const {
|
||||||
|
return QLatin1String("Input Widgets");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
QIcon PIVariantEditPlugin::icon() const {
|
||||||
|
return QIcon(":/icons/pivariantedit.png");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
QString PIVariantEditPlugin::toolTip() const {
|
||||||
|
return QLatin1String(""); // QLatin1String("Widget for display any math graphics with grid and navigation");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
QString PIVariantEditPlugin::whatsThis() const {
|
||||||
|
return QLatin1String("");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
bool PIVariantEditPlugin::isContainer() const {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
QString PIVariantEditPlugin::domXml() const {
|
||||||
|
return QLatin1String("<widget class=\"PIVariantEdit\" name=\"pivariantEdit\">\n</widget>\n");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
QString PIVariantEditPlugin::includeFile() const {
|
||||||
|
return QLatin1String("pivariant_edit.h");
|
||||||
|
}
|
||||||
36
libs/piqt_utils/plugin/pivariantedit_plugin.h
Normal file
36
libs/piqt_utils/plugin/pivariantedit_plugin.h
Normal file
@@ -0,0 +1,36 @@
|
|||||||
|
#ifndef pivariantedit_plugin_H
|
||||||
|
#define pivariantedit_plugin_H
|
||||||
|
|
||||||
|
#include <QObject>
|
||||||
|
#if QT_VERSION >= 0x050000
|
||||||
|
# include <QtUiPlugin/QDesignerCustomWidgetInterface>
|
||||||
|
#else
|
||||||
|
# include <QDesignerCustomWidgetInterface>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
class PIVariantEditPlugin
|
||||||
|
: public QObject
|
||||||
|
, public QDesignerCustomWidgetInterface {
|
||||||
|
Q_OBJECT
|
||||||
|
Q_INTERFACES(QDesignerCustomWidgetInterface)
|
||||||
|
|
||||||
|
public:
|
||||||
|
PIVariantEditPlugin(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, m_designer;
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif
|
||||||
@@ -1,9 +1,11 @@
|
|||||||
#include "qad_piqt_utils.h"
|
#include "qad_piqt_utils.h"
|
||||||
|
|
||||||
#include "pivaluetree_edit_plugin.h"
|
#include "pivaluetree_edit_plugin.h"
|
||||||
|
#include "pivariantedit_plugin.h"
|
||||||
|
|
||||||
QADPiQtUtils::QADPiQtUtils(QObject * parent): QObject(parent) {
|
QADPiQtUtils::QADPiQtUtils(QObject * parent): QObject(parent) {
|
||||||
m_widgets.append(new PIValueTreeEditPlugin(this));
|
m_widgets.append(new PIValueTreeEditPlugin(this));
|
||||||
|
m_widgets.append(new PIVariantEditPlugin(this));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -14,5 +14,6 @@
|
|||||||
<file>../../icons/layer-visible-off.png</file>
|
<file>../../icons/layer-visible-off.png</file>
|
||||||
<file>../../icons/layer-visible-on.png</file>
|
<file>../../icons/layer-visible-on.png</file>
|
||||||
<file>../../icons/valuetreeeditor.png</file>
|
<file>../../icons/valuetreeeditor.png</file>
|
||||||
|
<file>../../icons/pivariantedit.png</file>
|
||||||
</qresource>
|
</qresource>
|
||||||
</RCC>
|
</RCC>
|
||||||
|
|||||||
@@ -1,52 +1,119 @@
|
|||||||
#include <QApplication>
|
|
||||||
#include "qad_types.h"
|
|
||||||
#include "mainwindow.h"
|
#include "mainwindow.h"
|
||||||
|
|
||||||
#include "pitime.h"
|
#include "pitime.h"
|
||||||
#include <QDebug>
|
#include "qad_types.h"
|
||||||
|
|
||||||
int main(int argc, char *argv[]) {
|
#include <QApplication>
|
||||||
|
#include <QDebug>
|
||||||
|
#include <QScrollArea>
|
||||||
|
#include <QTimer>
|
||||||
|
#include <iconedlabel.h>
|
||||||
|
|
||||||
|
int main(int argc, char * argv[]) {
|
||||||
QApplication a(argc, argv);
|
QApplication a(argc, argv);
|
||||||
enableHighDPI();
|
enableHighDPI();
|
||||||
|
/*struct {
|
||||||
|
QStyle::StandardPixmap v;
|
||||||
|
const char * n;
|
||||||
|
} list[] = {
|
||||||
|
{QStyle::SP_TitleBarMenuButton, "TitleBarMenuButton, "},
|
||||||
|
{QStyle::SP_TitleBarMinButton, "TitleBarMinButton, "},
|
||||||
|
{QStyle::SP_TitleBarMaxButton, "TitleBarMaxButton, "},
|
||||||
|
{QStyle::SP_TitleBarCloseButton, "TitleBarCloseButton, "},
|
||||||
|
{QStyle::SP_TitleBarNormalButton, "TitleBarNormalButton, "},
|
||||||
|
{QStyle::SP_TitleBarShadeButton, "TitleBarShadeButton, "},
|
||||||
|
{QStyle::SP_TitleBarUnshadeButton, "TitleBarUnshadeButton, "},
|
||||||
|
{QStyle::SP_TitleBarContextHelpButton, "TitleBarContextHelpButton, "},
|
||||||
|
{QStyle::SP_DockWidgetCloseButton, "DockWidgetCloseButton, "},
|
||||||
|
{QStyle::SP_MessageBoxInformation, "MessageBoxInformation, "},
|
||||||
|
{QStyle::SP_MessageBoxWarning, "MessageBoxWarning, "},
|
||||||
|
{QStyle::SP_MessageBoxCritical, "MessageBoxCritical, "},
|
||||||
|
{QStyle::SP_MessageBoxQuestion, "MessageBoxQuestion, "},
|
||||||
|
{QStyle::SP_DesktopIcon, "DesktopIcon, "},
|
||||||
|
{QStyle::SP_TrashIcon, "TrashIcon, "},
|
||||||
|
{QStyle::SP_ComputerIcon, "ComputerIcon, "},
|
||||||
|
{QStyle::SP_DriveFDIcon, "DriveFDIcon, "},
|
||||||
|
{QStyle::SP_DriveHDIcon, "DriveHDIcon, "},
|
||||||
|
{QStyle::SP_DriveCDIcon, "DriveCDIcon, "},
|
||||||
|
{QStyle::SP_DriveDVDIcon, "DriveDVDIcon, "},
|
||||||
|
{QStyle::SP_DriveNetIcon, "DriveNetIcon, "},
|
||||||
|
{QStyle::SP_DirOpenIcon, "DirOpenIcon, "},
|
||||||
|
{QStyle::SP_DirClosedIcon, "DirClosedIcon, "},
|
||||||
|
{QStyle::SP_DirLinkIcon, "DirLinkIcon, "},
|
||||||
|
{QStyle::SP_DirLinkOpenIcon, "DirLinkOpenIcon, "},
|
||||||
|
{QStyle::SP_FileIcon, "FileIcon, "},
|
||||||
|
{QStyle::SP_FileLinkIcon, "FileLinkIcon, "},
|
||||||
|
{QStyle::SP_ToolBarHorizontalExtensionButton, "ToolBarHorizontalExtensionButton,"},
|
||||||
|
{QStyle::SP_ToolBarVerticalExtensionButton, "ToolBarVerticalExtensionButton, "},
|
||||||
|
{QStyle::SP_FileDialogStart, "FileDialogStart, "},
|
||||||
|
{QStyle::SP_FileDialogEnd, "FileDialogEnd, "},
|
||||||
|
{QStyle::SP_FileDialogToParent, "FileDialogToParent, "},
|
||||||
|
{QStyle::SP_FileDialogNewFolder, "FileDialogNewFolder, "},
|
||||||
|
{QStyle::SP_FileDialogDetailedView, "FileDialogDetailedView, "},
|
||||||
|
{QStyle::SP_FileDialogInfoView, "FileDialogInfoView, "},
|
||||||
|
{QStyle::SP_FileDialogContentsView, "FileDialogContentsView, "},
|
||||||
|
{QStyle::SP_FileDialogListView, "FileDialogListView, "},
|
||||||
|
{QStyle::SP_FileDialogBack, "FileDialogBack, "},
|
||||||
|
{QStyle::SP_DirIcon, "DirIcon, "},
|
||||||
|
{QStyle::SP_DialogOkButton, "DialogOkButton, "},
|
||||||
|
{QStyle::SP_DialogCancelButton, "DialogCancelButton, "},
|
||||||
|
{QStyle::SP_DialogHelpButton, "DialogHelpButton, "},
|
||||||
|
{QStyle::SP_DialogOpenButton, "DialogOpenButton, "},
|
||||||
|
{QStyle::SP_DialogSaveButton, "DialogSaveButton, "},
|
||||||
|
{QStyle::SP_DialogCloseButton, "DialogCloseButton, "},
|
||||||
|
{QStyle::SP_DialogApplyButton, "DialogApplyButton, "},
|
||||||
|
{QStyle::SP_DialogResetButton, "DialogResetButton, "},
|
||||||
|
{QStyle::SP_DialogDiscardButton, "DialogDiscardButton, "},
|
||||||
|
{QStyle::SP_DialogYesButton, "DialogYesButton, "},
|
||||||
|
{QStyle::SP_DialogNoButton, "DialogNoButton, "},
|
||||||
|
{QStyle::SP_ArrowUp, "ArrowUp, "},
|
||||||
|
{QStyle::SP_ArrowDown, "ArrowDown, "},
|
||||||
|
{QStyle::SP_ArrowLeft, "ArrowLeft, "},
|
||||||
|
{QStyle::SP_ArrowRight, "ArrowRight, "},
|
||||||
|
{QStyle::SP_ArrowBack, "ArrowBack, "},
|
||||||
|
{QStyle::SP_ArrowForward, "ArrowForward, "},
|
||||||
|
{QStyle::SP_DirHomeIcon, "DirHomeIcon, "},
|
||||||
|
{QStyle::SP_CommandLink, "CommandLink, "},
|
||||||
|
{QStyle::SP_VistaShield, "VistaShield, "},
|
||||||
|
{QStyle::SP_BrowserReload, "BrowserReload, "},
|
||||||
|
{QStyle::SP_BrowserStop, "BrowserStop, "},
|
||||||
|
{QStyle::SP_MediaPlay, "MediaPlay, "},
|
||||||
|
{QStyle::SP_MediaStop, "MediaStop, "},
|
||||||
|
{QStyle::SP_MediaPause, "MediaPause, "},
|
||||||
|
{QStyle::SP_MediaSkipForward, "MediaSkipForward, "},
|
||||||
|
{QStyle::SP_MediaSkipBackward, "MediaSkipBackward, "},
|
||||||
|
{QStyle::SP_MediaSeekForward, "MediaSeekForward, "},
|
||||||
|
{QStyle::SP_MediaSeekBackward, "MediaSeekBackward, "},
|
||||||
|
{QStyle::SP_MediaVolume, "MediaVolume, "},
|
||||||
|
{QStyle::SP_MediaVolumeMuted, "MediaVolumeMuted, "},
|
||||||
|
{QStyle::SP_LineEditClearButton, "LineEditClearButton, "},
|
||||||
|
{QStyle::SP_DialogYesToAllButton, "DialogYesToAllButton, "},
|
||||||
|
{QStyle::SP_DialogNoToAllButton, "DialogNoToAllButton, "},
|
||||||
|
{QStyle::SP_DialogSaveAllButton, "DialogSaveAllButton, "},
|
||||||
|
{QStyle::SP_DialogAbortButton, "DialogAbortButton, "},
|
||||||
|
{QStyle::SP_DialogRetryButton, "DialogRetryButton, "},
|
||||||
|
{QStyle::SP_DialogIgnoreButton, "DialogIgnoreButton, "},
|
||||||
|
{QStyle::SP_RestoreDefaultsButton, "RestoreDefaultsButton, "},
|
||||||
|
{QStyle::SP_CustomBase, nullptr }
|
||||||
|
};
|
||||||
|
QScrollArea area;
|
||||||
|
auto * lay = new QBoxLayout(QBoxLayout::TopToBottom);
|
||||||
|
area.setWidget(new QWidget());
|
||||||
|
area.widget()->setLayout(lay);
|
||||||
|
QTimer::singleShot(500, [lay, list] {
|
||||||
|
auto * s = qApp->style();
|
||||||
|
for (int i = 0;; ++i) {
|
||||||
|
if (!list[i].n) break;
|
||||||
|
auto * r = new IconedLabel();
|
||||||
|
r->setIcon(s->standardIcon(list[i].v));
|
||||||
|
r->setText(list[i].n);
|
||||||
|
lay->addWidget(r);
|
||||||
|
r->show();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
area.setWidgetResizable(true);
|
||||||
|
area.show();
|
||||||
|
*/
|
||||||
MainWindow w;
|
MainWindow w;
|
||||||
w.show();
|
w.show();
|
||||||
return a.exec();
|
return a.exec();
|
||||||
|
|
||||||
/*PITimeMeasurer tm;
|
|
||||||
int cnt = 1000000;
|
|
||||||
int el_o = 0, el_n = 0, el_q = 0;
|
|
||||||
double v = 0.;
|
|
||||||
NO_UNUSED(v);
|
|
||||||
|
|
||||||
PIStringList nums({"", "1", "123456789", "12.3456789", ".01E+12", "-12345.6789E+123", "-E+100", "-", "-0", "-.", "-0."});
|
|
||||||
for (PIString s: nums) {
|
|
||||||
piCout << "\nstring \"" << s << "\"";
|
|
||||||
const char * data = s.dataAscii();
|
|
||||||
QString qs(data);
|
|
||||||
|
|
||||||
tm.reset();
|
|
||||||
piForTimes (cnt) {
|
|
||||||
v = atof(data);
|
|
||||||
}
|
|
||||||
el_o = tm.elapsed_u();
|
|
||||||
piCout << v << "," << el_o << "us";
|
|
||||||
|
|
||||||
tm.reset();
|
|
||||||
piForTimes (cnt) {
|
|
||||||
v = s.toDouble();
|
|
||||||
}
|
|
||||||
el_n = tm.elapsed_u();
|
|
||||||
piCout << v << "," << el_n << "us";
|
|
||||||
|
|
||||||
tm.reset();
|
|
||||||
piForTimes (cnt) {
|
|
||||||
v = qs.toDouble();
|
|
||||||
}
|
|
||||||
el_q = tm.elapsed_u();
|
|
||||||
qDebug() << v << "," << el_q << "us";
|
|
||||||
|
|
||||||
piCout << "atof/PIP =" << (double)el_o / el_n;
|
|
||||||
piCout << " Qt/PIP =" << (double)el_q / el_n;
|
|
||||||
}
|
|
||||||
return 0;*/
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user