构建模板编辑界面
This commit is contained in:
parent
35101bb2f5
commit
9b6ad519f3
|
@ -74,7 +74,6 @@ public:
|
||||||
void recoveryFrom(const QJsonObject& obj) override;
|
void recoveryFrom(const QJsonObject& obj) override;
|
||||||
void saveTo(QJsonObject& obj) const override;
|
void saveTo(QJsonObject& obj) const override;
|
||||||
|
|
||||||
|
|
||||||
void execute(std::shared_ptr<ImmediateMap> map, std::shared_ptr<const TypesQuery> in, QList<std::shared_ptr<TypesQueryResult>>& out) override;
|
void execute(std::shared_ptr<ImmediateMap> map, std::shared_ptr<const TypesQuery> in, QList<std::shared_ptr<TypesQueryResult>>& out) override;
|
||||||
void execute(std::shared_ptr<ImmediateMap> map, std::shared_ptr<const TempletOperate> in, QList<std::shared_ptr<RespondDefault>>& out) override;
|
void execute(std::shared_ptr<ImmediateMap> map, std::shared_ptr<const TempletOperate> in, QList<std::shared_ptr<RespondDefault>>& out) override;
|
||||||
void execute(std::shared_ptr<ImmediateMap> map, std::shared_ptr<const EntityOperate> in, QList<std::shared_ptr<RespondDefault>>& out) override;
|
void execute(std::shared_ptr<ImmediateMap> map, std::shared_ptr<const EntityOperate> in, QList<std::shared_ptr<RespondDefault>>& out) override;
|
||||||
|
|
|
@ -99,6 +99,7 @@
|
||||||
</Link>
|
</Link>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<ClCompile Include="TempletAssemble.cpp" />
|
||||||
<QtRcc Include="sims_world.qrc" />
|
<QtRcc Include="sims_world.qrc" />
|
||||||
<QtUic Include="sims_world.ui" />
|
<QtUic Include="sims_world.ui" />
|
||||||
<QtMoc Include="sims_world.h" />
|
<QtMoc Include="sims_world.h" />
|
||||||
|
@ -107,6 +108,9 @@
|
||||||
<None Include="SimsWorld.ico" />
|
<None Include="SimsWorld.ico" />
|
||||||
<ResourceCompile Include="SimsWorld.rc" />
|
<ResourceCompile Include="SimsWorld.rc" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<QtMoc Include="TempletAssemble.h" />
|
||||||
|
</ItemGroup>
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||||
<ImportGroup Condition="Exists('$(QtMsBuild)\qt.targets')">
|
<ImportGroup Condition="Exists('$(QtMsBuild)\qt.targets')">
|
||||||
<Import Project="$(QtMsBuild)\qt.targets" />
|
<Import Project="$(QtMsBuild)\qt.targets" />
|
||||||
|
|
|
@ -46,5 +46,13 @@
|
||||||
<ClCompile Include="main.cpp">
|
<ClCompile Include="main.cpp">
|
||||||
<Filter>Source Files</Filter>
|
<Filter>Source Files</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
|
<ClCompile Include="TempletAssemble.cpp">
|
||||||
|
<Filter>Source Files</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<QtMoc Include="TempletAssemble.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</QtMoc>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
</Project>
|
</Project>
|
|
@ -0,0 +1,48 @@
|
||||||
|
#include "TempletAssemble.h"
|
||||||
|
#include <QLineEdit>
|
||||||
|
#include <QGridLayout>
|
||||||
|
#include <QVBoxLayout>
|
||||||
|
#include <QSplitter>
|
||||||
|
#include <QLabel>
|
||||||
|
#include <QGroupBox>
|
||||||
|
|
||||||
|
TempletAssemble::TempletAssemble()
|
||||||
|
:QWidget(nullptr),
|
||||||
|
_templet_present(new QListView(this)),
|
||||||
|
_templet_model(new QStandardItemModel(this)),
|
||||||
|
_t_add(new QPushButton(u8"添加模板",this)),
|
||||||
|
_t_remove(new QPushButton(u8"移除模板", this)),
|
||||||
|
_templet_name(new QLineEdit(this)),
|
||||||
|
_component_types(new QComboBox(this)),
|
||||||
|
_comp_add(new QPushButton(u8"添加组件", this)),
|
||||||
|
_comp_remove(new QPushButton(u8"移除组件", this)),
|
||||||
|
_component_present(new QListView(this)),
|
||||||
|
_component_model(new QStandardItemModel(this)),
|
||||||
|
_apply(new QPushButton(u8"应用", this))
|
||||||
|
{
|
||||||
|
auto layout = new QVBoxLayout(this);
|
||||||
|
auto split = new QSplitter(this);
|
||||||
|
layout->addWidget(split);
|
||||||
|
|
||||||
|
auto left_widget = new QGroupBox(u8"模板列表", this);
|
||||||
|
split->addWidget(left_widget);
|
||||||
|
auto llayout = new QGridLayout(left_widget);
|
||||||
|
llayout->addWidget(_templet_present, 0, 0, 3, 2);
|
||||||
|
llayout->addWidget(_t_add, 3, 0);
|
||||||
|
llayout->addWidget(_t_remove, 3, 1);
|
||||||
|
|
||||||
|
|
||||||
|
auto right_widget = new QWidget(this);
|
||||||
|
split->addWidget(right_widget);
|
||||||
|
auto rlayout = new QGridLayout(right_widget);
|
||||||
|
rlayout->addWidget(new QLabel(u8"模板名称", this), 0, 0);
|
||||||
|
rlayout->addWidget(_templet_name, 0, 1, 1, 4);
|
||||||
|
rlayout->addWidget(new QLabel(u8"组件类型", this), 1, 0);
|
||||||
|
rlayout->addWidget(_component_types, 1, 1, 1, 2);
|
||||||
|
rlayout->addWidget(_comp_add, 1, 3);
|
||||||
|
rlayout->addWidget(_comp_remove, 1, 4);
|
||||||
|
rlayout->addWidget(_component_present, 2, 0, 3, 5);
|
||||||
|
rlayout->addWidget(_apply, 5, 0, 1, 5);
|
||||||
|
|
||||||
|
rlayout->setColumnStretch(1, 1);
|
||||||
|
}
|
|
@ -0,0 +1,29 @@
|
||||||
|
#pragma once
|
||||||
|
#include <QWidget>
|
||||||
|
#include <QListView>
|
||||||
|
#include <QStandardItemModel>
|
||||||
|
#include <QComboBox>
|
||||||
|
#include <QPushButton>
|
||||||
|
|
||||||
|
class TempletAssemble : public QWidget
|
||||||
|
{
|
||||||
|
Q_OBJECT
|
||||||
|
private:
|
||||||
|
QListView *const _templet_present;
|
||||||
|
QStandardItemModel *const _templet_model;
|
||||||
|
QPushButton *const _t_add, *const _t_remove;
|
||||||
|
|
||||||
|
QLineEdit *const _templet_name;
|
||||||
|
QComboBox *const _component_types;
|
||||||
|
QPushButton *const _comp_add, *const _comp_remove;
|
||||||
|
QListView *const _component_present;
|
||||||
|
QStandardItemModel *const _component_model;
|
||||||
|
QPushButton *const _apply;
|
||||||
|
|
||||||
|
public:
|
||||||
|
TempletAssemble();
|
||||||
|
virtual ~TempletAssemble() = default;
|
||||||
|
|
||||||
|
|
||||||
|
};
|
||||||
|
|
|
@ -1,10 +1,15 @@
|
||||||
#include "sims_world.h"
|
#include "sims_world.h"
|
||||||
|
#include "TempletAssemble.h"
|
||||||
#include <QtWidgets/QApplication>
|
#include <QtWidgets/QApplication>
|
||||||
|
|
||||||
int main(int argc, char *argv[])
|
int main(int argc, char *argv[])
|
||||||
{
|
{
|
||||||
QApplication a(argc, argv);
|
QApplication a(argc, argv);
|
||||||
SimsWorld w;
|
//SimsWorld w;
|
||||||
w.show();
|
//w.show();
|
||||||
|
|
||||||
|
TempletAssemble tass;
|
||||||
|
tass.show();
|
||||||
|
|
||||||
return a.exec();
|
return a.exec();
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue