blob: cd3c6ecdaafc14a616023488114160b6871cb68f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
|
#ifndef LSLAYOUTWINDOW_H
#define LSLAYOUTWINDOW_H
#include <QMainWindow>
#include <QTabWidget>
#include <QDoubleSpinBox>
#include <QTreeView>
#include <QStackedLayout>
#include <QPushButton>
#include <QLineEdit>
#include <QListView>
#include <QSplitter>
#include "lyt/packagebase.h"
#include "lyt/layout.h"
class LSPaneEditor;
class LSMaterialEditor;
class LGLWidget;
class LSLayoutWindow : public QMainWindow {
Q_OBJECT
public:
explicit LSLayoutWindow(LYTPackageBase *pkg, const QString &layoutName, QWidget *parent = 0);
~LSLayoutWindow();
QString layoutName() const { return m_layoutName; }
// TODO: set layoutname method
LYTLayout *editedLayout() const { return m_layout; }
private:
QString m_layoutName;
LYTPackageBase *m_package;
LYTLayout *m_layout;
LGLWidget *m_renderer;
QTabWidget *m_tabWidget;
// settings
QDoubleSpinBox *m_widthBox, *m_heightBox;
// scene graph
QSplitter *m_sceneSplitter;
QStackedLayout *m_sceneListSwitcher;
QLineEdit *m_searchBox;
QPushButton *m_clearSearchButton;
QTreeView *m_sceneGraph;
QListView *m_sceneSearchList;
QStackedLayout *m_paneEditorSwitcher;
LSPaneEditor *m_paneEditor;
bool m_loadingSettings;
// material things
QSplitter *m_materialSplitter;
QListView *m_materialList;
QPushButton *m_addMaterialButton;
QPushButton *m_removeMaterialButton;
LSMaterialEditor *m_materialEditor;
private slots:
void handleWidthChanged(double v);
void handleHeightChanged(double v);
void selectedPaneChanged(const QModelIndex ¤t, const QModelIndex &previous);
void selectedMaterialChanged(const QModelIndex ¤t, const QModelIndex &previous);
signals:
public slots:
};
#endif // LSLAYOUTWINDOW_H
|