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 "pivaluetree_edit_plugin.h"
|
||||
#include "pivariantedit_plugin.h"
|
||||
|
||||
QADPiQtUtils::QADPiQtUtils(QObject * parent): QObject(parent) {
|
||||
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-on.png</file>
|
||||
<file>../../icons/valuetreeeditor.png</file>
|
||||
<file>../../icons/pivariantedit.png</file>
|
||||
</qresource>
|
||||
</RCC>
|
||||
|
||||
@@ -1,52 +1,119 @@
|
||||
#include <QApplication>
|
||||
#include "qad_types.h"
|
||||
#include "mainwindow.h"
|
||||
|
||||
#include "pitime.h"
|
||||
#include "qad_types.h"
|
||||
|
||||
#include <QApplication>
|
||||
#include <QDebug>
|
||||
#include <QScrollArea>
|
||||
#include <QTimer>
|
||||
#include <iconedlabel.h>
|
||||
|
||||
int main(int argc, char * argv[]) {
|
||||
QApplication a(argc, argv);
|
||||
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;
|
||||
w.show();
|
||||
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