2017-04-07 21:01:51 +03:00
|
|
|
#ifndef DIALOGDESIGNER_H
|
|
|
|
#define DIALOGDESIGNER_H
|
|
|
|
|
|
|
|
#include <QObject>
|
|
|
|
#include <QVector>
|
2017-04-11 11:23:34 +03:00
|
|
|
#include <QToolBar>
|
2017-04-07 21:01:51 +03:00
|
|
|
|
|
|
|
class QDesignerFormEditorInterface;
|
|
|
|
class QDesignerFormWindowInterface;
|
|
|
|
class QDesignerIntegrationInterface;
|
|
|
|
class QDesignerWidgetBoxInterface;
|
|
|
|
class QDesignerActionEditorInterface;
|
|
|
|
class QDesignerPropertyEditorInterface;
|
|
|
|
class QDesignerObjectInspectorInterface;
|
|
|
|
class QDesignerFormWindowManagerInterface;
|
|
|
|
|
|
|
|
namespace LimeReport{
|
|
|
|
|
|
|
|
class DialogDesigner : public QObject
|
|
|
|
{
|
|
|
|
Q_OBJECT
|
|
|
|
public:
|
|
|
|
explicit DialogDesigner(QObject *parent = 0);
|
|
|
|
~DialogDesigner();
|
2017-04-11 11:23:34 +03:00
|
|
|
void initToolBar(QToolBar* tb);
|
2017-04-07 21:01:51 +03:00
|
|
|
QWidget* createFormEditor(const QString& content);
|
2017-04-11 11:23:34 +03:00
|
|
|
QByteArray getDialogDescription(QWidget* form);
|
2017-04-07 21:01:51 +03:00
|
|
|
void setActiveEditor(QWidget* widget);
|
|
|
|
QWidget* widgetBox() const;
|
|
|
|
QWidget* actionEditor() const;
|
|
|
|
QWidget* propertyEditor() const;
|
|
|
|
QWidget* objectInspector() const;
|
|
|
|
QWidget* signalSlotEditor() const;
|
|
|
|
QWidget* resourcesEditor() const;
|
2017-04-11 11:23:34 +03:00
|
|
|
signals:
|
|
|
|
void dialogChanged();
|
2017-04-07 21:01:51 +03:00
|
|
|
private slots:
|
2017-04-11 11:23:34 +03:00
|
|
|
void slotObjectDestroyed(QObject* object);
|
|
|
|
void slotEditWidgets();
|
|
|
|
void slotActiveFormWindowChanged(QDesignerFormWindowInterface *formWindow);
|
|
|
|
private:
|
|
|
|
QString iconPathByName(const QString& name);
|
2017-04-07 21:01:51 +03:00
|
|
|
private:
|
|
|
|
QDesignerFormEditorInterface* m_formEditor;
|
|
|
|
QDesignerIntegrationInterface* m_designerIntegration;
|
|
|
|
QDesignerWidgetBoxInterface* m_widgetBox;
|
|
|
|
QDesignerActionEditorInterface* m_actionEditor;
|
|
|
|
QDesignerPropertyEditorInterface* m_propertyEditor;
|
|
|
|
QDesignerObjectInspectorInterface* m_objectInspector;
|
|
|
|
QWidget* m_signalSlotEditor;
|
|
|
|
QWidget* m_resourcesEditor;
|
|
|
|
QVector<QWidget*> m_designerToolWindows;
|
2017-04-11 11:23:34 +03:00
|
|
|
QAction* m_editWidgetsAction;
|
|
|
|
QActionGroup* m_modes;
|
|
|
|
QString m_activeWindowName;
|
2017-04-07 21:01:51 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
} // namespace LimeReport
|
|
|
|
|
|
|
|
#endif // DIALOGDESIGNER_H
|