51#if !defined(QT_QTPROPERTYBROWSER_EXPORT) && !defined(QT_QTPROPERTYBROWSER_IMPORT)
52#define QT_QTPROPERTYBROWSER_EXPORT
53#elif defined(QT_QTPROPERTYBROWSER_IMPORT)
54#if defined(QT_QTPROPERTYBROWSER_EXPORT)
55#undef QT_QTPROPERTYBROWSER_EXPORT
57#define QT_QTPROPERTYBROWSER_EXPORT __declspec(dllimport)
58#elif defined(QT_QTPROPERTYBROWSER_EXPORT)
59#undef QT_QTPROPERTYBROWSER_EXPORT
60#define QT_QTPROPERTYBROWSER_EXPORT __declspec(dllexport)
63#define QT_QTPROPERTYBROWSER_EXPORT
167template <
class PropertyManager>
178 QSetIterator<PropertyManager*> it(m_managers);
182 PropertyManager* manager = it.next();
196 if (m_managers.contains(manager))
201 m_managers.insert(manager);
203 connect(manager, SIGNAL(destroyed(QObject*)),
this, SLOT(
managerDestroyed(QObject*)));
209 if (!m_managers.contains(manager))
214 disconnect(manager, SIGNAL(destroyed(QObject*)),
this, SLOT(
managerDestroyed(QObject*)));
216 m_managers.remove(manager);
219 QSet<PropertyManager*>
229 QSetIterator<PropertyManager*> itManager(m_managers);
231 while (itManager.hasNext())
233 PropertyManager* m = itManager.next();
253 QSetIterator<PropertyManager*> it(m_managers);
257 PropertyManager* m = it.next();
261 m_managers.remove(m);
271 QSetIterator<PropertyManager*> it(m_managers);
275 PropertyManager* m = it.next();
286 QSet<PropertyManager*> m_managers;
297 QtBrowserItem*
parent()
const;
298 QList<QtBrowserItem*>
children()
const;
325 template <
class PropertyManager>
333 if (addFactory(abstractManager, abstractFactory))
370 Q_PRIVATE_SLOT(d_func(),
void slotPropertyDestroyed(
QtProperty*))
371 Q_PRIVATE_SLOT(d_func(),
void slotPropertyDataChanged(
QtProperty*))
The QtAbstractEditorFactoryBase provides an interface for editor factories.
virtual void managerDestroyed(QObject *manager)=0
virtual void breakConnection(QtAbstractPropertyManager *manager)=0
QtAbstractEditorFactoryBase(QObject *parent=0)
virtual QWidget * createEditor(QtProperty *property, QWidget *parent)=0
friend class QtAbstractPropertyBrowser
The QtAbstractEditorFactory is the base template class for editor factories.
QSet< PropertyManager * > propertyManagers() const
QWidget * createEditor(QtProperty *property, QWidget *parent) override
void removePropertyManager(PropertyManager *manager)
friend class QtAbstractPropertyEditor
virtual void connectPropertyManager(PropertyManager *manager)=0
QtAbstractEditorFactory(QObject *parent)
virtual void disconnectPropertyManager(PropertyManager *manager)=0
PropertyManager * propertyManager(QtProperty *property) const
void addPropertyManager(PropertyManager *manager)
void managerDestroyed(QObject *manager) override
virtual QWidget * createEditor(PropertyManager *manager, QtProperty *property, QWidget *parent)=0
QtAbstractPropertyBrowser provides a base class for implementing property browsers.
QtAbstractPropertyBrowser(QWidget *parent=0)
void currentItemChanged(QtBrowserItem *)
QtBrowserItem * insertProperty(QtProperty *property, QtProperty *afterProperty)
virtual QWidget * createEditor(QtProperty *property, QWidget *parent)
virtual void itemInserted(QtBrowserItem *item, QtBrowserItem *afterItem)=0
virtual void itemChanged(QtBrowserItem *item)=0
virtual void itemRemoved(QtBrowserItem *item)=0
void removeProperty(QtProperty *property)
QList< QtProperty * > properties() const
QList< QtBrowserItem * > topLevelItems() const
QtBrowserItem * addProperty(QtProperty *property)
void setFactoryForManager(PropertyManager *manager, QtAbstractEditorFactory< PropertyManager > *factory)
QtBrowserItem * topLevelItem(QtProperty *property) const
QList< QtBrowserItem * > items(QtProperty *property) const
The QtAbstractPropertyManager provides an interface for property managers.
void propertyDestroyed(QtProperty *property)
void propertyChanged(QtProperty *property)
QSet< QtProperty * > properties() const
virtual QString valueText(const QtProperty *property) const
virtual QIcon valueIcon(const QtProperty *property) const
virtual void uninitializeProperty(QtProperty *property)
virtual QString displayText(const QtProperty *property) const
virtual EchoMode echoMode(const QtProperty *) const
QtAbstractPropertyManager(QObject *parent=0)
virtual void initializeProperty(QtProperty *property)=0
void propertyRemoved(QtProperty *property, QtProperty *parent)
virtual QtProperty * createProperty()
QtProperty * addProperty(const QString &name=QString())
void propertyInserted(QtProperty *property, QtProperty *parent, QtProperty *after)
virtual bool hasValue(const QtProperty *property) const
The QtBrowserItem class represents a property in a property browser instance.
QList< QtBrowserItem * > children() const
QtBrowserItem * parent() const
QtAbstractPropertyBrowser * browser() const
friend class QtAbstractPropertyBrowserPrivate
QtProperty * property() const
The QtProperty class encapsulates an instance of a property.
QString propertyName() const
QString valueText() const
void insertSubProperty(QtProperty *property, QtProperty *afterProperty)
void removeSubProperty(QtProperty *property)
QList< QtProperty * > subProperties() const
QString statusTip() const
QtAbstractPropertyManager * propertyManager() const
void setToolTip(const QString &text)
void setModified(bool modified)
QString whatsThis() const
void setEnabled(bool enable)
void setWhatsThis(const QString &text)
friend class QtAbstractPropertyManager
void setPropertyName(const QString &text)
void setStatusTip(const QString &text)
QString displayText() const
QtProperty(QtAbstractPropertyManager *manager)
void addSubProperty(QtProperty *property)
#define QT_QTPROPERTYBROWSER_EXPORT
QLineEdit::EchoMode EchoMode