diff options
Diffstat (limited to 'demos')
-rw-r--r-- | demos/arthurplugin/plugin.cpp | 74 | ||||
-rw-r--r-- | demos/embeddeddialogs/customproxy.cpp | 17 | ||||
-rw-r--r-- | demos/embeddeddialogs/customproxy.h | 1 | ||||
-rw-r--r-- | demos/embeddeddialogs/main.cpp | 1 | ||||
-rw-r--r-- | demos/qtdemo/colors.cpp | 34 | ||||
-rw-r--r-- | demos/qtdemo/colors.h | 4 | ||||
-rw-r--r-- | demos/qtdemo/mainwindow.cpp | 15 | ||||
-rw-r--r-- | demos/qtdemo/menumanager.cpp | 3 | ||||
-rw-r--r-- | demos/qtdemo/xml/examples.xml | 8 |
9 files changed, 90 insertions, 67 deletions
diff --git a/demos/arthurplugin/plugin.cpp b/demos/arthurplugin/plugin.cpp index e2bf54e..c26aae7 100644 --- a/demos/arthurplugin/plugin.cpp +++ b/demos/arthurplugin/plugin.cpp @@ -55,7 +55,26 @@ QT_FORWARD_DECLARE_CLASS(QDesignerFormEditorInterface) -static inline QString customWidgetDomXml(const QString &className) +// Specify "text" to be a singleline property (no richtext) +static inline QString textSingleLinePropertyDeclaration(const QString &className) +{ + QString rc = QLatin1String( + "<customwidgets>\n" + " <customwidget>\n" + " <class>"); + rc += className; + rc += QLatin1String("</class>\n" + " <propertyspecifications>\n" + " <stringpropertyspecification name=\"text\" type=\"singleline\"/>\n" + " </propertyspecifications>\n" + " </customwidget>\n" + "</customwidgets>\n"); + return rc; +} + +// Plain XML for a custom widget +static inline QString customWidgetDomXml(const QString &className, + const QString &customSection = QString()) { QString rc = QLatin1String("<ui language=\"c++\"><widget class=\""); rc += className; @@ -63,7 +82,9 @@ static inline QString customWidgetDomXml(const QString &className) QString objectName = className; objectName[0] = objectName.at(0).toLower(); rc += objectName; - rc += QLatin1String("\"/></ui>"); + rc += QLatin1String("\"/>"); + rc += customSection; + rc += QLatin1String("</ui>"); return rc; } @@ -80,7 +101,7 @@ class DemoPlugin : public QDesignerCustomWidgetInterface Q_INTERFACES(QDesignerCustomWidgetInterface) protected: - DemoPlugin(const QString &className); + explicit DemoPlugin(const QString &className, const QString &customSection = QString()); public: QString name() const { return m_className; } @@ -105,9 +126,9 @@ private: bool m_initialized; }; -DemoPlugin::DemoPlugin(const QString &className) : +DemoPlugin::DemoPlugin(const QString &className, const QString &customSection) : m_className(className), - m_domXml(customWidgetDomXml(className)), + m_domXml(customWidgetDomXml(className, customSection)), m_initialized(false) { } @@ -117,8 +138,8 @@ class DeformPlugin : public QObject, public DemoPlugin Q_OBJECT public: - DeformPlugin(QObject *parent = 0) : QObject(parent), DemoPlugin(QLatin1String("PathDeformRendererEx")) { } - QString includeFile() const { return "deform.h"; } + explicit DeformPlugin(QObject *parent = 0); + QString includeFile() const { return QLatin1String("deform.h"); } QWidget *createWidget(QWidget *parent) { @@ -126,12 +147,19 @@ public: deform->setRadius(70); deform->setAnimated(false); deform->setFontSize(20); - deform->setText("Arthur Widgets Demo"); + deform->setText(QLatin1String("Arthur Widgets Demo")); return deform; } }; +DeformPlugin::DeformPlugin(QObject *parent) : + QObject(parent), + DemoPlugin(QLatin1String("PathDeformRendererEx"), + textSingleLinePropertyDeclaration(QLatin1String("PathDeformRendererEx"))) +{ +} + class XFormRendererEx : public XFormView { Q_OBJECT @@ -144,24 +172,30 @@ class XFormPlugin : public QObject, public DemoPlugin { Q_OBJECT public: - XFormPlugin(QObject *parent = 0) : QObject(parent), DemoPlugin(QLatin1String("XFormRendererEx")) { } - QString includeFile() const { return "xform.h"; } + explicit XFormPlugin(QObject *parent = 0); + QString includeFile() const { return QLatin1String("xform.h"); } QWidget *createWidget(QWidget *parent) { XFormRendererEx *xform = new XFormRendererEx(parent); - xform->setText("Qt - Hello World!!"); - xform->setPixmap(QPixmap(":/trolltech/arthurplugin/bg1.jpg")); + xform->setText(QLatin1String("Qt - Hello World!!")); + xform->setPixmap(QPixmap(QLatin1String(":/trolltech/arthurplugin/bg1.jpg"))); return xform; } }; +XFormPlugin::XFormPlugin(QObject *parent) : + QObject(parent), + DemoPlugin(QLatin1String("XFormRendererEx"), + textSingleLinePropertyDeclaration(QLatin1String("XFormRendererEx"))) +{ +} class GradientEditorPlugin : public QObject, public DemoPlugin { Q_OBJECT public: - GradientEditorPlugin(QObject *parent = 0) : QObject(parent), DemoPlugin(QLatin1String("GradientEditor")) { } + explicit GradientEditorPlugin(QObject *parent = 0) : QObject(parent), DemoPlugin(QLatin1String("GradientEditor")) { } QString includeFile() const { return "gradients.h"; } QWidget *createWidget(QWidget *parent) @@ -184,7 +218,7 @@ class GradientRendererPlugin : public QObject, public DemoPlugin Q_OBJECT public: GradientRendererPlugin(QObject *parent = 0) : QObject(parent), DemoPlugin(QLatin1String("GradientRendererEx")) { } - QString includeFile() const { return "gradients.h"; } + QString includeFile() const { return QLatin1String("gradients.h"); } QWidget *createWidget(QWidget *parent) { @@ -198,7 +232,7 @@ class PathStrokeRendererEx : public PathStrokeRenderer { Q_OBJECT public: - PathStrokeRendererEx(QWidget *p) : PathStrokeRenderer(p) { } + explicit PathStrokeRendererEx(QWidget *p) : PathStrokeRenderer(p) { } QSize sizeHint() const { return QSize(300, 200); } }; @@ -206,8 +240,8 @@ class StrokeRenderPlugin : public QObject, public DemoPlugin { Q_OBJECT public: - StrokeRenderPlugin(QObject *parent = 0) : QObject(parent), DemoPlugin(QLatin1String("PathStrokeRendererEx")) { } - QString includeFile() const { return "pathstroke.h"; } + explicit StrokeRenderPlugin(QObject *parent = 0) : QObject(parent), DemoPlugin(QLatin1String("PathStrokeRendererEx")) { } + QString includeFile() const { return QLatin1String("pathstroke.h"); } QWidget *createWidget(QWidget *parent) { @@ -221,8 +255,8 @@ class CompositionModePlugin : public QObject, public DemoPlugin { Q_OBJECT public: - CompositionModePlugin(QObject *parent = 0) : QObject(parent), DemoPlugin(QLatin1String("CompositionRenderer")) { } - QString includeFile() const { return "composition.h"; } + explicit CompositionModePlugin(QObject *parent = 0) : QObject(parent), DemoPlugin(QLatin1String("CompositionRenderer")) { } + QString includeFile() const { return QLatin1String("composition.h"); } QWidget *createWidget(QWidget *parent) { @@ -239,7 +273,7 @@ class ArthurPlugins : public QObject, public QDesignerCustomWidgetCollectionInte Q_INTERFACES(QDesignerCustomWidgetCollectionInterface) public: - ArthurPlugins(QObject *parent = 0); + explicit ArthurPlugins(QObject *parent = 0); QList<QDesignerCustomWidgetInterface*> customWidgets() const { return m_plugins; } private: diff --git a/demos/embeddeddialogs/customproxy.cpp b/demos/embeddeddialogs/customproxy.cpp index 56a0548..dd8766f 100644 --- a/demos/embeddeddialogs/customproxy.cpp +++ b/demos/embeddeddialogs/customproxy.cpp @@ -44,7 +44,7 @@ #include <QtGui> CustomProxy::CustomProxy(QGraphicsItem *parent, Qt::WindowFlags wFlags) - : QGraphicsProxyWidget(parent, wFlags), popupShown(false) + : QGraphicsProxyWidget(parent, wFlags), popupShown(false), currentPopup(0) { timeLine = new QTimeLine(250, this); connect(timeLine, SIGNAL(valueChanged(qreal)), @@ -111,8 +111,19 @@ bool CustomProxy::sceneEventFilter(QGraphicsItem *watched, QEvent *event) QVariant CustomProxy::itemChange(GraphicsItemChange change, const QVariant &value) { - if (change == ItemChildRemovedChange) - removeSceneEventFilter(this); + if (change == ItemChildAddedChange || change == ItemChildRemovedChange) { + if (change == ItemChildAddedChange) { + currentPopup = qVariantValue<QGraphicsItem *>(value); + currentPopup->setCacheMode(ItemCoordinateCache); + if (scene()) + currentPopup->installSceneEventFilter(this); + } else if (scene()) { + currentPopup->removeSceneEventFilter(this); + currentPopup = 0; + } + } else if (currentPopup && change == ItemSceneHasChanged) { + currentPopup->installSceneEventFilter(this); + } return QGraphicsProxyWidget::itemChange(change, value); } diff --git a/demos/embeddeddialogs/customproxy.h b/demos/embeddeddialogs/customproxy.h index 0a5fbaf..d324426 100644 --- a/demos/embeddeddialogs/customproxy.h +++ b/demos/embeddeddialogs/customproxy.h @@ -70,6 +70,7 @@ private slots: private: QTimeLine *timeLine; bool popupShown; + QGraphicsItem *currentPopup; }; #endif diff --git a/demos/embeddeddialogs/main.cpp b/demos/embeddeddialogs/main.cpp index 4cf7325..cfb31c4 100644 --- a/demos/embeddeddialogs/main.cpp +++ b/demos/embeddeddialogs/main.cpp @@ -68,7 +68,6 @@ int main(int argc, char *argv[]) proxy->setCacheMode(QGraphicsItem::DeviceCoordinateCache); scene.addItem(proxy); - proxy->installSceneEventFilter(proxy); } } scene.setSceneRect(scene.itemsBoundingRect()); diff --git a/demos/qtdemo/colors.cpp b/demos/qtdemo/colors.cpp index 18343cb..733b285 100644 --- a/demos/qtdemo/colors.cpp +++ b/demos/qtdemo/colors.cpp @@ -72,10 +72,8 @@ int Colors::contentHeight = 510; // Properties: bool Colors::openGlRendering = false; -bool Colors::direct3dRendering = false; bool Colors::softwareRendering = false; -bool Colors::openGlAwailable = true; -bool Colors::direct3dAwailable = true; +bool Colors::openGlAvailable = true; bool Colors::xRenderPresent = true; bool Colors::noTicker = false; @@ -206,8 +204,6 @@ void Colors::parseArgs(int argc, char *argv[]) QString s(argv[i]); if (s == "-opengl") Colors::openGlRendering = true; - else if (s == "-direct3d") - Colors::direct3dRendering = true; else if (s == "-software") Colors::softwareRendering = true; else if (s == "-no-opengl") // support old style @@ -270,7 +266,7 @@ void Colors::parseArgs(int argc, char *argv[]) Colors::fps = int(parseFloat(s, "-fps")); else if (s.startsWith("-h") || s.startsWith("-help")){ QMessageBox::warning(0, "Arguments", - QString("Usage: qtdemo [-verbose] [-no-adapt] [-opengl] [-direct3d] [-software] [-fullscreen] [-ticker[0|1]] ") + QString("Usage: qtdemo [-verbose] [-no-adapt] [-opengl] [-software] [-fullscreen] [-ticker[0|1]] ") + "[-animations[0|1]] [-no-blending] [-no-sync] [-use-timer-update[0|1]] [-pause[0|1]] " + "[-use-window-mask] [-no-rescale] " + "[-use-pixmaps] [-show-fps] [-show-br] [-8bit[0|1]] [-menu<int>] [-use-loop] [-use-balls] " @@ -278,6 +274,9 @@ void Colors::parseArgs(int argc, char *argv[]) + "[-low] [-ticker-letters<int>] [-ticker-speed<float>] [-no-ticker-morph] " + "[-ticker-morph-speed<float>] [-ticker-text<string>]"); exit(0); + } else{ + QMessageBox::warning(0, "QtDemo", QString("Unrecognized argument:\n") + s); + exit(0); } } @@ -287,7 +286,6 @@ void Colors::parseArgs(int argc, char *argv[]) void Colors::setLowSettings() { Colors::openGlRendering = false; - Colors::direct3dRendering = false; Colors::softwareRendering = true; Colors::noTicker = true; Colors::noTimerUpdate = true; @@ -322,15 +320,11 @@ void Colors::detectSystemResources() qDebug() << "- OpenGL not supported by current build of Qt"; #endif { - Colors::openGlAwailable = false; + Colors::openGlAvailable = false; if (Colors::verbose) qDebug("- OpenGL not recommended on this system"); } -#if defined(Q_WS_WIN) - Colors::direct3dAwailable = false; // for now. -#endif - #if defined(Q_WS_X11) // check if X render is present: QPixmap tmp(1, 1); @@ -366,21 +360,9 @@ void Colors::postConfigure() } } -#if !defined(Q_WS_WIN) - if (Colors::direct3dRendering){ - Colors::direct3dRendering = false; - qDebug() << "- WARNING: Direct3D specified, but not supported on this platform"; - } -#endif - - if (!Colors::openGlRendering && !Colors::direct3dRendering && !Colors::softwareRendering){ + if (!Colors::openGlRendering && !Colors::softwareRendering){ // The user has not decided rendering system. So we do it instead: -#if defined(Q_WS_WIN) - if (Colors::direct3dAwailable) - Colors::direct3dRendering = true; - else -#endif - if (Colors::openGlAwailable) + if (Colors::openGlAvailable) Colors::openGlRendering = true; else Colors::softwareRendering = true; diff --git a/demos/qtdemo/colors.h b/demos/qtdemo/colors.h index 58865c6..31eb93b 100644 --- a/demos/qtdemo/colors.h +++ b/demos/qtdemo/colors.h @@ -81,11 +81,9 @@ public: static int contentHeight; // properties: + static bool openGlAvailable; static bool openGlRendering; - static bool direct3dRendering; static bool softwareRendering; - static bool openGlAwailable; - static bool direct3dAwailable; static bool xRenderPresent; static bool noAdapt; static bool noTicker; diff --git a/demos/qtdemo/mainwindow.cpp b/demos/qtdemo/mainwindow.cpp index 8723823..0da69b2 100644 --- a/demos/qtdemo/mainwindow.cpp +++ b/demos/qtdemo/mainwindow.cpp @@ -100,14 +100,8 @@ void MainWindow::setRenderingSystem() { QWidget *viewport = 0; - if (Colors::direct3dRendering){ - viewport->setAttribute(Qt::WA_MSWindowsUseDirect3D); - setCacheMode(QGraphicsView::CacheNone); - if (Colors::verbose) - qDebug() << "- using Direct3D"; - } #ifndef QT_NO_OPENGL - else if (Colors::openGlRendering){ + if (Colors::openGlRendering) { QGLWidget *glw = new QGLWidget(QGLFormat(QGL::SampleBuffers)); if (Colors::noScreenSync) glw->format().setSwapInterval(0); @@ -116,9 +110,10 @@ void MainWindow::setRenderingSystem() setCacheMode(QGraphicsView::CacheNone); if (Colors::verbose) qDebug() << "- using OpenGL"; - } + } else // software rendering #endif - else{ // software rendering + { + // software rendering viewport = new QWidget; setCacheMode(QGraphicsView::CacheBackground); if (Colors::verbose) @@ -389,8 +384,6 @@ void MainWindow::keyPressEvent(QKeyEvent *event) s += "Rendering system: "; if (Colors::openGlRendering) s += "OpenGL"; - else if (Colors::direct3dRendering) - s += "Direct3D"; else s += "software"; diff --git a/demos/qtdemo/menumanager.cpp b/demos/qtdemo/menumanager.cpp index bfa2e3f..a9e9b4b 100644 --- a/demos/qtdemo/menumanager.cpp +++ b/demos/qtdemo/menumanager.cpp @@ -184,7 +184,6 @@ void MenuManager::itemSelected(int userCode, const QString &menuName) this->tickerInAnim->startDelay = 2000; this->ticker->useGuideQt(); this->score->queueMovie("ticker", Score::NEW_ANIMATION_ONLY); - this->window->switchTimerOnOff(true); } break; case MENU1: @@ -220,7 +219,6 @@ void MenuManager::itemSelected(int userCode, const QString &menuName) this->score->queueMovie(this->currentInfo + " -buttons", Score::NEW_ANIMATION_ONLY); if (!Colors::noTicker){ this->score->queueMovie("ticker -out", Score::NEW_ANIMATION_ONLY); - this->window->switchTimerOnOff(false); } break; case UP:{ @@ -257,7 +255,6 @@ void MenuManager::itemSelected(int userCode, const QString &menuName) this->ticker->doIntroTransitions = false; this->tickerInAnim->startDelay = 500; this->score->queueMovie("ticker", Score::NEW_ANIMATION_ONLY); - this->window->switchTimerOnOff(true); } } else if (this->currentMenuCode != ROOT) itemSelected(ROOT, Colors::rootMenuName); diff --git a/demos/qtdemo/xml/examples.xml b/demos/qtdemo/xml/examples.xml index df2d93b..96a3e80 100644 --- a/demos/qtdemo/xml/examples.xml +++ b/demos/qtdemo/xml/examples.xml @@ -118,6 +118,7 @@ <example filename="threadedfortuneserver" name="Threaded Fort. Server" /> <example filename="torrent" name="Torrent Client" /> <example filename="securesocketclient" name="Secure Socket Client" /> + <example filename="googlesuggest" name="Google Suggest" /> </category> <category dirname="opengl" name="OpenGL"> <example filename="2dpainting" name="2D Painting" /> @@ -137,6 +138,7 @@ <example filename="fontsampler" name="Font Sampler" /> <example filename="imagecomposition" name="Image Composition" /> <example filename="painterpaths" name="Painter Paths" /> + <example filename="svggenerator" name="SVG Generator" /> <example filename="svgviewer" name="SVG Viewer" /> <example filename="transformations" name="Transformations" /> </category> @@ -212,6 +214,12 @@ <example filename="wiggly" name="Wiggly" /> <example filename="windowflags" name="Window Flags" /> </category> + <category dirname="webkit" name="WebKit"> + <example filename="formextractor" name="Form Extractor" /> + <example filename="previewer" name="HTML Previewer" /> + <example filename="fancybrowser" name="Fancy Browser" /> + <example filename="googlechat" name="Google Chat" /> + </category> <category dirname="xml" name="XML"> <example filename="saxbookmarks" name="SAX Bookmarks" /> <example filename="dombookmarks" name="DOM Bookmarks" /> |