summaryrefslogtreecommitdiffstats
path: root/tools/designer/examples/filechooser/plugin
diff options
context:
space:
mode:
Diffstat (limited to 'tools/designer/examples/filechooser/plugin')
-rw-r--r--tools/designer/examples/filechooser/plugin/plugin.cpp95
-rw-r--r--tools/designer/examples/filechooser/plugin/plugin.h16
-rw-r--r--tools/designer/examples/filechooser/plugin/plugin.pro14
3 files changed, 125 insertions, 0 deletions
diff --git a/tools/designer/examples/filechooser/plugin/plugin.cpp b/tools/designer/examples/filechooser/plugin/plugin.cpp
new file mode 100644
index 0000000..9408cac
--- /dev/null
+++ b/tools/designer/examples/filechooser/plugin/plugin.cpp
@@ -0,0 +1,95 @@
+#include "plugin.h"
+#include "../widget/filechooser.h"
+
+static const char *filechooser_pixmap[] = {
+ "22 22 8 1",
+ " c Gray100",
+ ". c Gray97",
+ "X c #4f504f",
+ "o c #00007f",
+ "O c Gray0",
+ "+ c none",
+ "@ c Gray0",
+ "# c Gray0",
+ "++++++++++++++++++++++",
+ "++++++++++++++++++++++",
+ "++++++++++++++++++++++",
+ "++++++++++++++++++++++",
+ "+OOOOOOOOOOOOOOOOOOOO+",
+ "OOXXXXXXXXXXXXXXXXXXOO",
+ "OXX. OO OO O",
+ "OX. oo O O",
+ "OX. oo O .O",
+ "OX ooo oooo O O",
+ "OX oo oo oo O O",
+ "OX oooo oo oo O O",
+ "OX oo oo oo oo O O",
+ "OX oo oo oo oo O O",
+ "OX oooo oooo O O",
+ "OX OO OO O",
+ "OO..................OO",
+ "+OOOOOOOOOOOOOOOOOOOO+",
+ "++++++++++++++++++++++",
+ "++++++++++++++++++++++",
+ "++++++++++++++++++++++",
+ "++++++++++++++++++++++"
+};
+
+CustomWidgetPlugin::CustomWidgetPlugin()
+{
+}
+
+QStringList CustomWidgetPlugin::keys() const
+{
+ QStringList list;
+ list << "FileChooser";
+ return list;
+}
+
+QWidget* CustomWidgetPlugin::create( const QString &key, QWidget* parent, const char* name )
+{
+ if ( key == "FileChooser" )
+ return new FileChooser( parent, name );
+ return 0;
+}
+
+QString CustomWidgetPlugin::group( const QString& feature ) const
+{
+ if ( feature == "FileChooser" )
+ return "Input";
+ return QString::null;
+}
+
+QIconSet CustomWidgetPlugin::iconSet( const QString& ) const
+{
+ return QIconSet( QPixmap( filechooser_pixmap ) );
+}
+
+QString CustomWidgetPlugin::includeFile( const QString& feature ) const
+{
+ if ( feature == "FileChooser" )
+ return "filechooser.h";
+ return QString::null;
+}
+
+QString CustomWidgetPlugin::toolTip( const QString& feature ) const
+{
+ if ( feature == "FileChooser" )
+ return "File Chooser Widget";
+ return QString::null;
+}
+
+QString CustomWidgetPlugin::whatsThis( const QString& feature ) const
+{
+ if ( feature == "FileChooser" )
+ return "A widget to choose a file or directory";
+ return QString::null;
+}
+
+bool CustomWidgetPlugin::isContainer( const QString& ) const
+{
+ return FALSE;
+}
+
+
+Q_EXPORT_PLUGIN( CustomWidgetPlugin )
diff --git a/tools/designer/examples/filechooser/plugin/plugin.h b/tools/designer/examples/filechooser/plugin/plugin.h
new file mode 100644
index 0000000..a465c29
--- /dev/null
+++ b/tools/designer/examples/filechooser/plugin/plugin.h
@@ -0,0 +1,16 @@
+#include <qwidgetplugin.h>
+
+class CustomWidgetPlugin : public QWidgetPlugin
+{
+public:
+ CustomWidgetPlugin();
+
+ QStringList keys() const;
+ QWidget* create( const QString &classname, QWidget* parent = 0, const char* name = 0 );
+ QString group( const QString& ) const;
+ QIconSet iconSet( const QString& ) const;
+ QString includeFile( const QString& ) const;
+ QString toolTip( const QString& ) const;
+ QString whatsThis( const QString& ) const;
+ bool isContainer( const QString& ) const;
+};
diff --git a/tools/designer/examples/filechooser/plugin/plugin.pro b/tools/designer/examples/filechooser/plugin/plugin.pro
new file mode 100644
index 0000000..012f185
--- /dev/null
+++ b/tools/designer/examples/filechooser/plugin/plugin.pro
@@ -0,0 +1,14 @@
+TEMPLATE = lib
+LANGUAGE = C++
+TARGET = filechooser
+
+SOURCES += plugin.cpp ../widget/filechooser.cpp
+HEADERS += plugin.h ../widget/filechooser.h
+DESTDIR = ../../../../../plugins/designer
+
+target.path=$$plugins.path
+
+INSTALLS += target
+CONFIG += qt warn_on release plugin
+INCLUDEPATH += $$QT_SOURCE_TREE/tools/designer/interfaces
+DBFILE = plugin.db