add QAD::VirtualKeyboard library, vkbd for widgets with JSON-based description
This commit is contained in:
1
libs/virtual_keyboard/plugin/CMakeLists.txt
Normal file
1
libs/virtual_keyboard/plugin/CMakeLists.txt
Normal file
@@ -0,0 +1 @@
|
||||
qad_plugin(virtual_keyboard "Gui;Widgets" "")
|
||||
17
libs/virtual_keyboard/plugin/qad_virtual_keyboard.cpp
Normal file
17
libs/virtual_keyboard/plugin/qad_virtual_keyboard.cpp
Normal file
@@ -0,0 +1,17 @@
|
||||
#include "qad_virtual_keyboard.h"
|
||||
|
||||
#include "virtual_keyboard_plugin.h"
|
||||
|
||||
QADVirtualKeyboard::QADVirtualKeyboard(QObject * parent): QObject(parent) {
|
||||
m_widgets << new VirtualKeyboardPlugin(this);
|
||||
}
|
||||
|
||||
|
||||
QList<QDesignerCustomWidgetInterface *> QADVirtualKeyboard::customWidgets() const {
|
||||
return m_widgets;
|
||||
}
|
||||
|
||||
|
||||
#if QT_VERSION < 0x050000
|
||||
Q_EXPORT_PLUGIN2(qad_virtual_keyboard_plugin, QADVirtualKeyboard)
|
||||
#endif
|
||||
24
libs/virtual_keyboard/plugin/qad_virtual_keyboard.h
Normal file
24
libs/virtual_keyboard/plugin/qad_virtual_keyboard.h
Normal file
@@ -0,0 +1,24 @@
|
||||
#ifndef qad_virtual_keyboard_h
|
||||
#define qad_virtual_keyboard_h
|
||||
|
||||
#include <QtCore/qplugin.h>
|
||||
#include <QtDesigner/QtDesigner>
|
||||
|
||||
class QADVirtualKeyboard
|
||||
: public QObject
|
||||
, public QDesignerCustomWidgetCollectionInterface {
|
||||
Q_OBJECT
|
||||
#if QT_VERSION >= 0x050000
|
||||
Q_PLUGIN_METADATA(IID "qad.virtual_keyboard")
|
||||
#endif
|
||||
Q_INTERFACES(QDesignerCustomWidgetCollectionInterface)
|
||||
|
||||
public:
|
||||
explicit QADVirtualKeyboard(QObject * parent = 0);
|
||||
virtual QList<QDesignerCustomWidgetInterface *> customWidgets() const;
|
||||
|
||||
private:
|
||||
QList<QDesignerCustomWidgetInterface *> m_widgets;
|
||||
};
|
||||
|
||||
#endif
|
||||
62
libs/virtual_keyboard/plugin/virtual_keyboard_plugin.cpp
Normal file
62
libs/virtual_keyboard/plugin/virtual_keyboard_plugin.cpp
Normal file
@@ -0,0 +1,62 @@
|
||||
#include "virtual_keyboard_plugin.h"
|
||||
|
||||
#include "virtual_keyboard.h"
|
||||
|
||||
#include <QDesignerFormEditorInterface>
|
||||
#include <QDesignerPropertyEditorInterface>
|
||||
#include <QtCore/QtPlugin>
|
||||
|
||||
|
||||
VirtualKeyboardPlugin::VirtualKeyboardPlugin(QObject * parent): QObject(parent) {
|
||||
m_initialized = false;
|
||||
}
|
||||
|
||||
void VirtualKeyboardPlugin::initialize(QDesignerFormEditorInterface * /* core */) {
|
||||
if (m_initialized) return;
|
||||
|
||||
// Add extension registrations, etc. here
|
||||
|
||||
m_initialized = true;
|
||||
}
|
||||
|
||||
bool VirtualKeyboardPlugin::isInitialized() const {
|
||||
return m_initialized;
|
||||
}
|
||||
|
||||
QWidget * VirtualKeyboardPlugin::createWidget(QWidget * parent) {
|
||||
auto ret = new VirtualKeyboard(parent);
|
||||
ret->setAlwaysVisible(true);
|
||||
return ret;
|
||||
}
|
||||
|
||||
QString VirtualKeyboardPlugin::name() const {
|
||||
return QLatin1String("VirtualKeyboard");
|
||||
}
|
||||
|
||||
QString VirtualKeyboardPlugin::group() const {
|
||||
return QLatin1String("Touch Widgets");
|
||||
}
|
||||
|
||||
QIcon VirtualKeyboardPlugin::icon() const {
|
||||
return QIcon(":/icons/virtual_keyboard.png");
|
||||
}
|
||||
|
||||
QString VirtualKeyboardPlugin::toolTip() const {
|
||||
return QLatin1String("");
|
||||
}
|
||||
|
||||
QString VirtualKeyboardPlugin::whatsThis() const {
|
||||
return QLatin1String("");
|
||||
}
|
||||
|
||||
bool VirtualKeyboardPlugin::isContainer() const {
|
||||
return false;
|
||||
}
|
||||
|
||||
QString VirtualKeyboardPlugin::domXml() const {
|
||||
return QLatin1String("<widget class=\"VirtualKeyboard\" name=\"virtualKeyboard\">\n</widget>\n");
|
||||
}
|
||||
|
||||
QString VirtualKeyboardPlugin::includeFile() const {
|
||||
return QLatin1String("virtual_keyboard.h");
|
||||
}
|
||||
36
libs/virtual_keyboard/plugin/virtual_keyboard_plugin.h
Normal file
36
libs/virtual_keyboard/plugin/virtual_keyboard_plugin.h
Normal file
@@ -0,0 +1,36 @@
|
||||
#ifndef virtual_keyboard_plugin_h
|
||||
#define virtual_keyboard_plugin_h
|
||||
|
||||
#include <QObject>
|
||||
#if QT_VERSION >= 0x050000
|
||||
# include <QtUiPlugin/QDesignerCustomWidgetInterface>
|
||||
#else
|
||||
# include <QDesignerCustomWidgetInterface>
|
||||
#endif
|
||||
|
||||
class VirtualKeyboardPlugin
|
||||
: public QObject
|
||||
, public QDesignerCustomWidgetInterface {
|
||||
Q_OBJECT
|
||||
Q_INTERFACES(QDesignerCustomWidgetInterface)
|
||||
|
||||
public:
|
||||
VirtualKeyboardPlugin(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
|
||||
Reference in New Issue
Block a user