add missing files
This commit is contained in:
73
src/noggit/Red/PresetEditor/ModelView.cpp
Normal file
73
src/noggit/Red/PresetEditor/ModelView.cpp
Normal file
@@ -0,0 +1,73 @@
|
||||
#include "ModelView.hpp"
|
||||
|
||||
using namespace noggit::Red::PresetEditor;
|
||||
|
||||
ModelViewer::ModelViewer(QWidget *parent)
|
||||
: AssetBrowser::ModelViewer(parent, noggit::NoggitRenderContext::PRESET_EDITOR)
|
||||
, _world(std::make_unique<World> ("azeroth", 0, noggit::NoggitRenderContext::PRESET_EDITOR))
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void ModelViewer::paintGL()
|
||||
{
|
||||
const qreal now(_startup_time.elapsed() / 1000.0);
|
||||
opengl::context::scoped_setter const _ (::gl, context());
|
||||
makeCurrent();
|
||||
|
||||
gl.clear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
|
||||
|
||||
tick(now - _last_update);
|
||||
|
||||
_last_update = now;
|
||||
|
||||
MinimapRenderSettings _settings_unused;
|
||||
std::map<int, misc::random_color> area_id_colors;
|
||||
|
||||
_world->draw(model_view().transposed()
|
||||
, projection().transposed()
|
||||
, math::vector_3d(0.f, 0.f, 0.f)
|
||||
, 0.f
|
||||
, math::vector_4d(1.f, 1.f, 1.f, 1.f)
|
||||
, CursorType::CIRCLE
|
||||
, 0.f
|
||||
, false
|
||||
, false
|
||||
, 0.f
|
||||
, math::vector_3d(0.f, 0.f, 0.f)
|
||||
, 0.f
|
||||
, 0.f
|
||||
, false
|
||||
, false
|
||||
, false
|
||||
, false
|
||||
, false
|
||||
, editing_mode::ground
|
||||
, math::vector_3d(0.f, 0.f, 0.f)
|
||||
, true
|
||||
, false
|
||||
, false
|
||||
, false
|
||||
, true
|
||||
, true
|
||||
, true
|
||||
, true
|
||||
, true
|
||||
, true
|
||||
, false
|
||||
, false
|
||||
, false
|
||||
, &_settings_unused
|
||||
, area_id_colors
|
||||
, false
|
||||
, eTerrainType::eTerrainType_Flat
|
||||
, 0
|
||||
, display_mode::in_3D
|
||||
|
||||
);
|
||||
|
||||
// Sorting issues may naturally occur here due to draw order. But we can't avoid them if we want world as an underlay.
|
||||
// It is just a preview after all.
|
||||
|
||||
draw();
|
||||
}
|
||||
29
src/noggit/Red/PresetEditor/ModelView.hpp
Normal file
29
src/noggit/Red/PresetEditor/ModelView.hpp
Normal file
@@ -0,0 +1,29 @@
|
||||
#ifndef NOGGIT_MODELVIEW_HPP
|
||||
#define NOGGIT_MODELVIEW_HPP
|
||||
|
||||
#include <noggit/Red/AssetBrowser/ModelView.hpp>
|
||||
#include <noggit/World.h>
|
||||
|
||||
|
||||
namespace noggit
|
||||
{
|
||||
namespace Red::PresetEditor
|
||||
{
|
||||
class ModelViewer : public Red::AssetBrowser::ModelViewer
|
||||
{
|
||||
public:
|
||||
explicit ModelViewer(QWidget* parent = nullptr);
|
||||
|
||||
private:
|
||||
std::unique_ptr<World> _world;
|
||||
|
||||
void paintGL() override;
|
||||
|
||||
};
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
#endif //NOGGIT_MODELVIEW_HPP
|
||||
185
src/noggit/Red/PresetEditor/Ui/PresetEditor.cpp
Normal file
185
src/noggit/Red/PresetEditor/Ui/PresetEditor.cpp
Normal file
@@ -0,0 +1,185 @@
|
||||
#include "PresetEditor.hpp"
|
||||
#include <noggit/ui/FramelessWindow.hpp>
|
||||
#include <noggit/ui/font_noggit.hpp>
|
||||
|
||||
|
||||
using namespace noggit::Red::PresetEditor::Ui;
|
||||
using namespace noggit::ui;
|
||||
|
||||
PresetEditorWidget::PresetEditorWidget(QWidget *parent)
|
||||
: QMainWindow(parent, Qt::Window)
|
||||
{
|
||||
setWindowTitle("Preset Editor");
|
||||
|
||||
auto body = new QWidget(this);
|
||||
ui = new ::Ui::PresetEditor;
|
||||
ui->setupUi(body);
|
||||
setCentralWidget(body);
|
||||
|
||||
auto titlebar = new QWidget(this);
|
||||
ui::setupFramelessWindow(titlebar, this, minimumSize(), maximumSize(), true);
|
||||
setMenuWidget(titlebar);
|
||||
|
||||
setWindowFlags(windowFlags() | Qt::Tool | Qt::WindowStaysOnTopHint);
|
||||
|
||||
_model = new QFileSystemModel(this);
|
||||
_sort_model = new QSortFilterProxyModel(this);
|
||||
_sort_model->setFilterCaseSensitivity(Qt::CaseInsensitive);
|
||||
_sort_model->setFilterRole(Qt::UserRole);
|
||||
_sort_model->setRecursiveFilteringEnabled(true);
|
||||
|
||||
auto overlay = new QWidget(ui->viewport);
|
||||
viewport_overlay_ui = new ::Ui::PresetEditorOverlay();
|
||||
viewport_overlay_ui->setupUi(overlay);
|
||||
overlay->setAttribute(Qt::WA_TranslucentBackground);
|
||||
overlay->setMouseTracking(true);
|
||||
overlay->setGeometry(0,0,ui->viewport->width(),ui->viewport->height());
|
||||
|
||||
connect(ui->viewport, &ModelViewer::resized
|
||||
,[this, overlay]()
|
||||
{
|
||||
overlay->setGeometry(0,0,ui->viewport->width(),ui->viewport->height());
|
||||
}
|
||||
);
|
||||
|
||||
viewport_overlay_ui->toggleAnimationButton->setIcon(font_noggit_icon(font_noggit::icons::VISIBILITY_ANIMATION));
|
||||
viewport_overlay_ui->toggleModelsButton->setIcon(font_noggit_icon(font_noggit::icons::VISIBILITY_DOODADS));
|
||||
viewport_overlay_ui->toggleParticlesButton->setIcon(font_noggit_icon(font_noggit::icons::VISIBILITY_UNUSED));
|
||||
viewport_overlay_ui->toggleBoundingBoxButton->setIcon(font_noggit_icon(font_noggit::icons::VISIBILITY_WITH_BOX));
|
||||
viewport_overlay_ui->toggleWMOButton->setIcon(font_noggit_icon(font_noggit::icons::VISIBILITY_WMO));
|
||||
viewport_overlay_ui->toggleGridButton->setIcon(font_noggit_icon(font_noggit::icons::VISIBILITY_LINES));
|
||||
|
||||
ui->viewport->installEventFilter(overlay);
|
||||
overlay->show();
|
||||
|
||||
ui->viewport->setLightDirection(120.0f, 60.0f);
|
||||
|
||||
// drag'n'drop
|
||||
ui->listfileTree->setDragEnabled(true);
|
||||
ui->listfileTree->setDragDropMode(QAbstractItemView::DragOnly);
|
||||
|
||||
ui->listfileTree->setIconSize(QSize(90, 90));
|
||||
|
||||
_sort_model->setSourceModel(_model);
|
||||
ui->listfileTree->setModel(_sort_model);
|
||||
|
||||
_preview_renderer = new PreviewRenderer(90, 90,
|
||||
noggit::NoggitRenderContext::PRESET_EDITOR_PREVIEW, this);
|
||||
_preview_renderer->setVisible(false);
|
||||
|
||||
// just to initialize context, ugly-ish
|
||||
_preview_renderer->setModelOffscreen("world/wmo/azeroth/buildings/human_farm/farm.wmo");
|
||||
_preview_renderer->renderToPixmap();
|
||||
|
||||
setupConnectsCommon();
|
||||
|
||||
}
|
||||
|
||||
void PresetEditorWidget::setupConnectsCommon()
|
||||
{
|
||||
connect(ui->searchButton, &QPushButton::clicked
|
||||
,[this]()
|
||||
{
|
||||
_sort_model->setFilterFixedString(ui->searchField->text());
|
||||
}
|
||||
|
||||
);
|
||||
|
||||
connect(viewport_overlay_ui->lightDirY, &QDial::valueChanged
|
||||
,[this]()
|
||||
{
|
||||
ui->viewport->setLightDirection(viewport_overlay_ui->lightDirY->value(),
|
||||
viewport_overlay_ui->lightDirZ->value());
|
||||
}
|
||||
);
|
||||
|
||||
connect(viewport_overlay_ui->lightDirZ, &QSlider::valueChanged
|
||||
,[this]()
|
||||
{
|
||||
ui->viewport->setLightDirection(viewport_overlay_ui->lightDirY->value(),
|
||||
viewport_overlay_ui->lightDirZ->value());
|
||||
}
|
||||
);
|
||||
|
||||
connect(viewport_overlay_ui->moveSensitivitySlider, &QSlider::valueChanged
|
||||
,[this]()
|
||||
{
|
||||
ui->viewport->setMoveSensitivity(static_cast<float>(viewport_overlay_ui->moveSensitivitySlider->value()));
|
||||
}
|
||||
);
|
||||
|
||||
connect(ui->viewport, &ModelViewer::sensitivity_changed
|
||||
,[this]()
|
||||
{
|
||||
viewport_overlay_ui->moveSensitivitySlider->setValue(ui->viewport->getMoveSensitivity() * 30.0f);
|
||||
}
|
||||
);
|
||||
|
||||
connect(viewport_overlay_ui->cameraXButton, &QPushButton::clicked
|
||||
,[this]()
|
||||
{
|
||||
ui->viewport->resetCamera(0.f, 0.f, 0.f, 0.f, -90.f, 0.f);
|
||||
}
|
||||
);
|
||||
|
||||
connect(viewport_overlay_ui->cameraYButton, &QPushButton::clicked
|
||||
,[this]()
|
||||
{
|
||||
ui->viewport->resetCamera(0.f, 0.f, 0.f, 0.f, 0, 90.f);
|
||||
}
|
||||
);
|
||||
|
||||
connect(viewport_overlay_ui->cameraZButton, &QPushButton::clicked
|
||||
,[this]()
|
||||
{
|
||||
ui->viewport->resetCamera(0.f, 0.f, 0.f, 0.f, 0.f, 0.f);
|
||||
}
|
||||
);
|
||||
|
||||
connect(viewport_overlay_ui->cameraResetButton, &QPushButton::clicked
|
||||
,[this]()
|
||||
{
|
||||
ui->viewport->resetCamera();
|
||||
}
|
||||
);
|
||||
|
||||
connect(viewport_overlay_ui->doodadSetSelector, qOverload<int>(&QComboBox::currentIndexChanged)
|
||||
,[this](int index)
|
||||
{
|
||||
ui->viewport->setActiveDoodadSet(ui->viewport->getLastSelectedModel(),
|
||||
viewport_overlay_ui->doodadSetSelector->currentText().toStdString());
|
||||
}
|
||||
);
|
||||
|
||||
// Render toggles
|
||||
connect(viewport_overlay_ui->toggleWMOButton, &QPushButton::clicked,
|
||||
[this]() {ui->viewport->_draw_wmo.toggle();});
|
||||
connect(viewport_overlay_ui->toggleBoundingBoxButton, &QPushButton::clicked,
|
||||
[this]() {ui->viewport->_draw_boxes.toggle();});
|
||||
connect(viewport_overlay_ui->toggleParticlesButton, &QPushButton::clicked,
|
||||
[this]() {ui->viewport->_draw_particles.toggle();});
|
||||
connect(viewport_overlay_ui->toggleModelsButton, &QPushButton::clicked,
|
||||
[this]() {ui->viewport->_draw_models.toggle();});
|
||||
connect(viewport_overlay_ui->toggleAnimationButton, &QPushButton::clicked,
|
||||
[this]() {ui->viewport->_draw_animated.toggle();});
|
||||
connect(viewport_overlay_ui->toggleGridButton, &QPushButton::clicked,
|
||||
[this]() {ui->viewport->_draw_grid.toggle();});
|
||||
|
||||
connect(&ui->viewport->_draw_wmo, &bool_toggle_property::changed,
|
||||
[this](bool state) {ui->viewport->_draw_wmo.set(state);});
|
||||
connect(&ui->viewport->_draw_boxes, &bool_toggle_property::changed,
|
||||
[this](bool state) {ui->viewport->_draw_boxes.set(state);});
|
||||
connect(&ui->viewport->_draw_particles, &bool_toggle_property::changed,
|
||||
[this](bool state) {ui->viewport->_draw_particles.set(state);});
|
||||
connect(&ui->viewport->_draw_models, &bool_toggle_property::changed,
|
||||
[this](bool state) {ui->viewport->_draw_models.set(state);});
|
||||
connect(&ui->viewport->_draw_animated, &bool_toggle_property::changed,
|
||||
[this](bool state) {ui->viewport->_draw_animated.set(state);});
|
||||
connect(&ui->viewport->_draw_grid, &bool_toggle_property::changed,
|
||||
[this](bool state) {ui->viewport->_draw_grid.set(state);});
|
||||
}
|
||||
|
||||
PresetEditorWidget::~PresetEditorWidget()
|
||||
{
|
||||
|
||||
}
|
||||
39
src/noggit/Red/PresetEditor/Ui/PresetEditor.hpp
Normal file
39
src/noggit/Red/PresetEditor/Ui/PresetEditor.hpp
Normal file
@@ -0,0 +1,39 @@
|
||||
#ifndef NOGGIT_PRESETEDITOR_HPP
|
||||
#define NOGGIT_PRESETEDITOR_HPP
|
||||
|
||||
#include <ui_PresetEditor.h>
|
||||
#include <ui_PresetEditorOverlay.h>
|
||||
|
||||
#include <noggit/Red/PreviewRenderer/PreviewRenderer.hpp>
|
||||
#include <noggit/Red/PresetEditor/ModelView.hpp>
|
||||
|
||||
#include <QWidget>
|
||||
#include <QMainWindow>
|
||||
#include <QFileSystemModel>
|
||||
#include <QSortFilterProxyModel>
|
||||
|
||||
namespace noggit
|
||||
{
|
||||
namespace Red::PresetEditor::Ui
|
||||
{
|
||||
class PresetEditorWidget : public QMainWindow
|
||||
{
|
||||
public:
|
||||
PresetEditorWidget(QWidget* parent = nullptr);
|
||||
~PresetEditorWidget();
|
||||
|
||||
private:
|
||||
void setupConnectsCommon();
|
||||
|
||||
::Ui::PresetEditor* ui;
|
||||
::Ui::PresetEditorOverlay* viewport_overlay_ui;
|
||||
QFileSystemModel* _model;
|
||||
QSortFilterProxyModel* _sort_model;
|
||||
PreviewRenderer* _preview_renderer;
|
||||
|
||||
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
#endif //NOGGIT_PRESETEDITOR_HPP
|
||||
359
src/noggit/Red/PresetEditor/Ui/PresetEditor.ui
Normal file
359
src/noggit/Red/PresetEditor/Ui/PresetEditor.ui
Normal file
@@ -0,0 +1,359 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>PresetEditor</class>
|
||||
<widget class="QWidget" name="PresetEditor">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>1724</width>
|
||||
<height>818</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>1280</width>
|
||||
<height>720</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="acceptDrops">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>Preset Editor</string>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_2">
|
||||
<property name="spacing">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="leftMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QWidget" name="body" native="true">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>1280</width>
|
||||
<height>720</height>
|
||||
</size>
|
||||
</property>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_2">
|
||||
<item>
|
||||
<widget class="QSplitter" name="splitter_2">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>720</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<widget class="QSplitter" name="splitter">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<widget class="QWidget" name="verticalLayoutWidget">
|
||||
<layout class="QVBoxLayout" name="verticalLayout">
|
||||
<property name="spacing">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QWidget" name="widget" native="true">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout">
|
||||
<property name="leftMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QLineEdit" name="searchField"/>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="searchButton">
|
||||
<property name="text">
|
||||
<string>Search</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QTreeView" name="listfileTree">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="MinimumExpanding" vsizetype="MinimumExpanding">
|
||||
<horstretch>20</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>200</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="sizeIncrement">
|
||||
<size>
|
||||
<width>1</width>
|
||||
<height>1</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="baseSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="verticalScrollBarPolicy">
|
||||
<enum>Qt::ScrollBarAlwaysOn</enum>
|
||||
</property>
|
||||
<property name="horizontalScrollBarPolicy">
|
||||
<enum>Qt::ScrollBarAlwaysOn</enum>
|
||||
</property>
|
||||
<property name="alternatingRowColors">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="iconSize">
|
||||
<size>
|
||||
<width>64</width>
|
||||
<height>64</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="uniformRowHeights">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="sortingEnabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="animated">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="headerHidden">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="expandsOnDoubleClick">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<widget class="QWidget" name="widget_2" native="true">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="MinimumExpanding" vsizetype="MinimumExpanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>500</width>
|
||||
<height>500</height>
|
||||
</size>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_5">
|
||||
<property name="spacing">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="leftMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="noggit::Red::PresetEditor::ModelViewer" name="viewport">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="MinimumExpanding" vsizetype="MinimumExpanding">
|
||||
<horstretch>1</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>500</width>
|
||||
<height>400</height>
|
||||
</size>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</widget>
|
||||
<widget class="QWidget" name="toolPanel" native="true">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>400</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_3">
|
||||
<item>
|
||||
<widget class="QToolBox" name="toolBox">
|
||||
<property name="currentIndex">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<widget class="QWidget" name="page">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>561</width>
|
||||
<height>702</height>
|
||||
</rect>
|
||||
</property>
|
||||
<attribute name="label">
|
||||
<string>World navigation</string>
|
||||
</attribute>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_4">
|
||||
<item>
|
||||
<widget class="QWidget" name="widget_3" native="true">
|
||||
<layout class="QVBoxLayout" name="verticalLayout_6">
|
||||
<property name="spacing">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="leftMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QWidget" name="mapSelector_2" native="true">
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_4">
|
||||
<property name="spacing">
|
||||
<number>-1</number>
|
||||
</property>
|
||||
<property name="leftMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Maximum" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Map:</string>
|
||||
</property>
|
||||
<property name="scaledContents">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QComboBox" name="comboBox_3"/>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="noggit::ui::minimap_widget" name="minimapHolder_2" native="true">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="MinimumExpanding" vsizetype="MinimumExpanding">
|
||||
<horstretch>1</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<widget class="QWidget" name="page_2">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>561</width>
|
||||
<height>702</height>
|
||||
</rect>
|
||||
</property>
|
||||
<attribute name="label">
|
||||
<string>Page 2</string>
|
||||
</attribute>
|
||||
</widget>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<customwidgets>
|
||||
<customwidget>
|
||||
<class>noggit::Red::PresetEditor::ModelViewer</class>
|
||||
<extends>QOpenGLWidget</extends>
|
||||
<header location="global">noggit/Red/PresetEditor/ModelView.hpp</header>
|
||||
</customwidget>
|
||||
<customwidget>
|
||||
<class>noggit::ui::minimap_widget</class>
|
||||
<extends>QWidget</extends>
|
||||
<header location="global">noggit/ui/minimap_widget.hpp</header>
|
||||
<container>1</container>
|
||||
</customwidget>
|
||||
</customwidgets>
|
||||
<resources/>
|
||||
<connections/>
|
||||
</ui>
|
||||
585
src/noggit/Red/PresetEditor/Ui/PresetEditorOverlay.ui
Normal file
585
src/noggit/Red/PresetEditor/Ui/PresetEditorOverlay.ui
Normal file
@@ -0,0 +1,585 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>PresetEditorOverlay</class>
|
||||
<widget class="QWidget" name="PresetEditorOverlay">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>1007</width>
|
||||
<height>667</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>Form</string>
|
||||
</property>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout">
|
||||
<property name="leftMargin">
|
||||
<number>5</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>5</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>5</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>5</number>
|
||||
</property>
|
||||
<item>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_2">
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_2">
|
||||
<property name="spacing">
|
||||
<number>6</number>
|
||||
</property>
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_8">
|
||||
<property name="spacing">
|
||||
<number>6</number>
|
||||
</property>
|
||||
<property name="sizeConstraint">
|
||||
<enum>QLayout::SetDefaultConstraint</enum>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QPushButton" name="toggleModelsButton">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>32</width>
|
||||
<height>32</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>32</width>
|
||||
<height>32</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Draw models</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
<property name="iconSize">
|
||||
<size>
|
||||
<width>24</width>
|
||||
<height>24</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="checkable">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="checked">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="toggleWMOButton">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>32</width>
|
||||
<height>32</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>32</width>
|
||||
<height>32</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Draw WMOs</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
<property name="iconSize">
|
||||
<size>
|
||||
<width>24</width>
|
||||
<height>24</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="checkable">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="checked">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="toggleParticlesButton">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>32</width>
|
||||
<height>32</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>32</width>
|
||||
<height>32</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Draw particles</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
<property name="iconSize">
|
||||
<size>
|
||||
<width>24</width>
|
||||
<height>24</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="checkable">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="checked">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="toggleAnimationButton">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>32</width>
|
||||
<height>32</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>32</width>
|
||||
<height>32</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Draw animation</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
<property name="iconSize">
|
||||
<size>
|
||||
<width>24</width>
|
||||
<height>24</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="checkable">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="checked">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="toggleBoundingBoxButton">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>32</width>
|
||||
<height>32</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>32</width>
|
||||
<height>32</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Draw bounding boxes</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
<property name="iconSize">
|
||||
<size>
|
||||
<width>24</width>
|
||||
<height>24</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="checkable">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="toggleGridButton">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>32</width>
|
||||
<height>32</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>32</width>
|
||||
<height>32</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Draw grid</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
<property name="iconSize">
|
||||
<size>
|
||||
<width>24</width>
|
||||
<height>24</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="checkable">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="checked">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="horizontalSpacer_3">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::MinimumExpanding</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>550</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="verticalSpacer_3">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>40</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="horizontalSpacer">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>40</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="verticalSpacer_2">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>40</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_3">
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_7">
|
||||
<property name="spacing">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QPushButton" name="cameraXButton">
|
||||
<property name="text">
|
||||
<string>X</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="cameraYButton">
|
||||
<property name="text">
|
||||
<string>Y</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="cameraZButton">
|
||||
<property name="text">
|
||||
<string>Z</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="cameraResetButton">
|
||||
<property name="text">
|
||||
<string>Reset</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="horizontalSpacer_2">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>40</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="label_3">
|
||||
<property name="accessibleName">
|
||||
<string>overlay_label</string>
|
||||
</property>
|
||||
<property name="autoFillBackground">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Doodadset:</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QComboBox" name="doodadSetSelector"/>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="horizontalSpacer_4">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>40</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="accessibleName">
|
||||
<string>overlay_label</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Move sensitivity:</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QSlider" name="moveSensitivitySlider">
|
||||
<property name="accessibleName">
|
||||
<string>overlay_slider_horizontal</string>
|
||||
</property>
|
||||
<property name="autoFillBackground">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="minimum">
|
||||
<number>1</number>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<number>30</number>
|
||||
</property>
|
||||
<property name="value">
|
||||
<number>15</number>
|
||||
</property>
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="invertedAppearance">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_3">
|
||||
<item>
|
||||
<spacer name="verticalSpacer_4">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::MinimumExpanding</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>500</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="accessibleName">
|
||||
<string>overlay_label</string>
|
||||
</property>
|
||||
<property name="autoFillBackground">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Light direction:</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_6">
|
||||
<item>
|
||||
<widget class="QDial" name="lightDirZ">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>100</width>
|
||||
<height>100</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>100</width>
|
||||
<height>100</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="autoFillBackground">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="minimum">
|
||||
<number>-180</number>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<number>180</number>
|
||||
</property>
|
||||
<property name="pageStep">
|
||||
<number>1</number>
|
||||
</property>
|
||||
<property name="value">
|
||||
<number>60</number>
|
||||
</property>
|
||||
<property name="wrapping">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QSlider" name="lightDirY">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>100</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>100</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="accessibleName">
|
||||
<string>overlay_slider_vertical</string>
|
||||
</property>
|
||||
<property name="minimum">
|
||||
<number>-180</number>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<number>180</number>
|
||||
</property>
|
||||
<property name="value">
|
||||
<number>120</number>
|
||||
</property>
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="invertedAppearance">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="invertedControls">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<resources/>
|
||||
<connections/>
|
||||
</ui>
|
||||
Reference in New Issue
Block a user