4#ifndef ITEMLISTEDITOR_H
5#define ITEMLISTEDITOR_H
7#include "ui_itemlisteditor.h"
9#include <QtWidgets/qdialog.h>
13class QDesignerFormWindowInterface;
22class DesignerIconCache;
33 inline explicit BoolBlocker(
bool &b)
noexcept : block(b), reset(b) { block =
true; }
114 void deleteListItemButtonClicked();
115 void moveListItemUpButtonClicked();
116 void moveListItemDownButtonClicked();
117 void listWidgetCurrentRowChanged();
118 void listWidgetItemChanged(QListWidgetItem * item);
119 void togglePropertyBrowser();
120 void cacheReloaded();
123 void setItemData(
int role,
const QVariant &v)
override;
128 void setPropertyBrowserVisible(
bool v);
130 Ui::ItemListEditor ui;
131 uint m_alignDefault = 0;
133 QString m_newItemText;
The QtProperty class encapsulates an instance of a property.
The QtTreePropertyBrowser class provides QTreeWidget based property browser.
The QtVariantProperty class is a convenience class handling QVariant based properties.
QList< QtVariantProperty * > m_rootProperties
void injectPropertyBrowser(QWidget *parent, QWidget *widget)
QtTreePropertyBrowser * m_propertyBrowser
DesignerPropertyManager * m_propertyManager
virtual void setItemData(int role, const QVariant &v)=0
QHash< QtVariantProperty *, int > m_propertyToRole
QList< QtVariantProperty * > m_properties
DesignerIconCache * m_iconCache
virtual QVariant getItemData(int role) const =0
DesignerEditorFactory * m_editorFactory
QSplitter * m_propertySplitter
virtual int defaultItemFlags() const =0
DesignerIconCache * iconCache() const
void setupObject(QWidget *object)
void setupProperties(const PropertyDefinition *propList, Qt::Alignment alignDefault=Qt::AlignLeading|Qt::AlignVCenter)
void setupEditor(QWidget *object, const PropertyDefinition *propDefs, Qt::Alignment alignDefault=Qt::AlignLeading|Qt::AlignVCenter)
BoolBlocker(bool &b) noexcept
int defaultItemFlags() const override
QVariant getItemData(int role) const override
QListWidget * listWidget() const
void setItemData(int role, const QVariant &v) override
void itemMovedDown(int idx)
uint alignDefault() const
void itemInserted(int idx)
void setCurrentIndex(int idx)
void setNewItemText(const QString &tpl)
void itemMovedUp(int idx)
void itemDeleted(int idx)
void itemChanged(int idx, int role, const QVariant &v)
QString newItemText() const
void setAlignDefault(uint newAlignDefault)
void setupEditor(QWidget *object, const PropertyDefinition *propDefs, Qt::Alignment alignDefault=Qt::AlignLeading|Qt::AlignVCenter)
Combined button and popup list for selecting options.
Auxiliary methods to store/retrieve settings.