5#ifndef WIDGETBOXTREEWIDGET_H
6#define WIDGETBOXTREEWIDGET_H
8#include <qdesigner_widgetbox_p.h>
10#include <QtWidgets/qtreewidget.h>
11#include <QtGui/qicon.h>
12#include <QtCore/qlist.h>
13#include <QtCore/qhash.h>
14#include <QtCore/qxmlstream.h>
18class QDesignerFormEditorInterface;
19class QDesignerDnDItemInterface;
38 explicit WidgetBoxTreeWidget(QDesignerFormEditorInterface *core, QWidget *parent =
nullptr);
48 void addWidget(
int cat_idx,
const Widget &wgt);
51 void dropWidgets(
const QList<QDesignerDnDItemInterface*> &item_list);
55 bool load(QDesignerWidgetBox::LoadMode loadMode);
73 void slotScratchPadItemDeleted();
74 void slotLastScratchPadItemDeleted();
76 void handleMousePress(QTreeWidgetItem *item);
77 void deleteScratchpad();
84 void adjustSubListSize(QTreeWidgetItem *cat_item);
86 static bool readCategories(
const QString &fileName,
const QString &xml, CategoryList *cats, QString *errorMessage);
87 static bool readWidget(Widget *w,
const QString &xml, QXmlStreamReader &r);
89 CategoryList loadCustomCategoryList()
const;
90 void writeCategories(QXmlStreamWriter &writer,
const CategoryList &cat_list)
const;
92 int indexOfCategory(
const QString &name)
const;
93 int indexOfScratchpad()
const;
94 int ensureScratchpad();
95 void addCustomCategories(
bool replace);
97 void saveExpandedState()
const;
98 void restoreExpandedState();
99 void updateViewMode();
101 QDesignerFormEditorInterface *m_core;
103 mutable QHash<QString, QIcon> m_pluginIcons;
105 QTimer *m_scratchPadDeleteTimer;
Combined button and popup list for selecting options.
Auxiliary methods to store/retrieve settings.
static const QDesignerMimeData * checkDragEvent(QDropEvent *event, bool acceptEventsFromWidgetBox)