|  | Home · All Classes · Main Classes · Grouped Classes · Modules · Functions |

# customwidgetplugin.cpp Example File
designer/customwidgetplugin/customwidgetplugin.cpp

        /****************************************************************************
        **
        ** Copyright (C) 2005-2006 Trolltech ASA. All rights reserved.
        **
        ** This file is part of the example classes of the Qt Toolkit.
        **
        ** Licensees holding valid Qt Preview licenses may use this file in
        ** accordance with the Qt Preview License Agreement provided with the
        ** Software.
        **
        ** See http://www.trolltech.com/pricing.html or email sales@trolltech.com for
        ** information about Qt Commercial License Agreements.
        **
        ** Contact info@trolltech.com if any conditions of this licensing are
        ** not clear to you.
        **
        ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
        ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
        **
        ****************************************************************************/

        #include "analogclock.h"
        #include "customwidgetplugin.h"

        #include <QtPlugin>

        AnalogClockPlugin::AnalogClockPlugin(QObject *parent)
            : QObject(parent)
        {
            initialized = false;
        }

        void AnalogClockPlugin::initialize(QDesignerFormEditorInterface * /* core */)
        {
            if (initialized)
                return;

            initialized = true;
        }

        bool AnalogClockPlugin::isInitialized() const
        {
            return initialized;
        }

        QWidget *AnalogClockPlugin::createWidget(QWidget *parent)
        {
            return new AnalogClock(parent);
        }

        QString AnalogClockPlugin::name() const
        {
            return "AnalogClock";
        }

        QString AnalogClockPlugin::group() const
        {
            return "Display Widgets [Examples]";
        }

        QIcon AnalogClockPlugin::icon() const
        {
            return QIcon();
        }

        QString AnalogClockPlugin::toolTip() const
        {
            return "";
        }

        QString AnalogClockPlugin::whatsThis() const
        {
            return "";
        }

        bool AnalogClockPlugin::isContainer() const
        {
            return false;
        }

        QString AnalogClockPlugin::domXml() const
        {
            return "<widget class=\"AnalogClock\" name=\"analogClock\">\n"
                   " <property name=\"geometry\">\n"
                   "  <rect>\n"
                   "   <x>0</x>\n"
                   "   <y>0</y>\n"
                   "   <width>100</width>\n"
                   "   <height>100</height>\n"
                   "  </rect>\n"
                   " </property>\n"
                   " <property name=\"toolTip\" >\n"
                   "  <string>The current time</string>\n"
                   " </property>\n"
                   " <property name=\"whatsThis\" >\n"
                   "  <string>The analog clock widget displays "
                   "the current time.</string>\n"
                   " </property>\n"
                   "</widget>\n";
        }

        QString AnalogClockPlugin::includeFile() const
        {
            return "analogclock.h";
        }

        Q_EXPORT_PLUGIN2(customwidgetplugin, AnalogClockPlugin)