mirror of
https://github.com/OpenMW/openmw.git
synced 2025-06-25 13:11:37 +00:00
disable element visibility buttons that do not apply to the respective cell type
This commit is contained in:
parent
b7cf114d5d
commit
406cf2b981
7 changed files with 29 additions and 5 deletions
|
@ -22,6 +22,7 @@
|
||||||
|
|
||||||
#include "../widget/scenetooltoggle.hpp"
|
#include "../widget/scenetooltoggle.hpp"
|
||||||
#include "../widget/scenetoolmode.hpp"
|
#include "../widget/scenetoolmode.hpp"
|
||||||
|
#include "../widget/scenetooltoggle2.hpp"
|
||||||
|
|
||||||
#include "editmode.hpp"
|
#include "editmode.hpp"
|
||||||
#include "elements.hpp"
|
#include "elements.hpp"
|
||||||
|
@ -212,6 +213,14 @@ void CSVRender::PagedWorldspaceWidget::mouseDoubleClickEvent (QMouseEvent *event
|
||||||
WorldspaceWidget::mouseDoubleClickEvent(event);
|
WorldspaceWidget::mouseDoubleClickEvent(event);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void CSVRender::PagedWorldspaceWidget::addVisibilitySelectorButtons (
|
||||||
|
CSVWidget::SceneToolToggle2 *tool)
|
||||||
|
{
|
||||||
|
WorldspaceWidget::addVisibilitySelectorButtons (tool);
|
||||||
|
tool->addButton (Element_Terrain, "Terrain");
|
||||||
|
tool->addButton (Element_Fog, "Fog", "", true);
|
||||||
|
}
|
||||||
|
|
||||||
void CSVRender::PagedWorldspaceWidget::addEditModeSelectorButtons (
|
void CSVRender::PagedWorldspaceWidget::addEditModeSelectorButtons (
|
||||||
CSVWidget::SceneToolMode *tool)
|
CSVWidget::SceneToolMode *tool)
|
||||||
{
|
{
|
||||||
|
|
|
@ -83,6 +83,8 @@ namespace CSVRender
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
|
|
||||||
|
virtual void addVisibilitySelectorButtons (CSVWidget::SceneToolToggle2 *tool);
|
||||||
|
|
||||||
virtual void addEditModeSelectorButtons (CSVWidget::SceneToolMode *tool);
|
virtual void addEditModeSelectorButtons (CSVWidget::SceneToolMode *tool);
|
||||||
|
|
||||||
virtual void updateOverlay();
|
virtual void updateOverlay();
|
||||||
|
|
|
@ -153,6 +153,14 @@ void CSVRender::UnpagedWorldspaceWidget::referenceAdded (const QModelIndex& pare
|
||||||
flagAsModified();
|
flagAsModified();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void CSVRender::UnpagedWorldspaceWidget::addVisibilitySelectorButtons (
|
||||||
|
CSVWidget::SceneToolToggle2 *tool)
|
||||||
|
{
|
||||||
|
WorldspaceWidget::addVisibilitySelectorButtons (tool);
|
||||||
|
tool->addButton (Element_Terrain, "Terrain", "", true);
|
||||||
|
tool->addButton (Element_Fog, "Fog");
|
||||||
|
}
|
||||||
|
|
||||||
std::string CSVRender::UnpagedWorldspaceWidget::getStartupInstruction()
|
std::string CSVRender::UnpagedWorldspaceWidget::getStartupInstruction()
|
||||||
{
|
{
|
||||||
Ogre::Vector3 position = getCamera()->getPosition();
|
Ogre::Vector3 position = getCamera()->getPosition();
|
||||||
|
|
|
@ -60,6 +60,10 @@ namespace CSVRender
|
||||||
|
|
||||||
virtual std::string getStartupInstruction();
|
virtual std::string getStartupInstruction();
|
||||||
|
|
||||||
|
protected:
|
||||||
|
|
||||||
|
virtual void addVisibilitySelectorButtons (CSVWidget::SceneToolToggle2 *tool);
|
||||||
|
|
||||||
private slots:
|
private slots:
|
||||||
|
|
||||||
void cellDataChanged (const QModelIndex& topLeft, const QModelIndex& bottomRight);
|
void cellDataChanged (const QModelIndex& topLeft, const QModelIndex& bottomRight);
|
||||||
|
|
|
@ -263,10 +263,8 @@ void CSVRender::WorldspaceWidget::addVisibilitySelectorButtons (
|
||||||
CSVWidget::SceneToolToggle2 *tool)
|
CSVWidget::SceneToolToggle2 *tool)
|
||||||
{
|
{
|
||||||
tool->addButton (Element_Reference, "References");
|
tool->addButton (Element_Reference, "References");
|
||||||
tool->addButton (Element_Terrain, "Terrain");
|
|
||||||
tool->addButton (Element_Water, "Water");
|
tool->addButton (Element_Water, "Water");
|
||||||
tool->addButton (Element_Pathgrid, "Pathgrid");
|
tool->addButton (Element_Pathgrid, "Pathgrid");
|
||||||
tool->addButton (Element_Fog, "Fog");
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void CSVRender::WorldspaceWidget::addEditModeSelectorButtons (CSVWidget::SceneToolMode *tool)
|
void CSVRender::WorldspaceWidget::addEditModeSelectorButtons (CSVWidget::SceneToolMode *tool)
|
||||||
|
|
|
@ -72,7 +72,7 @@ void CSVWidget::SceneToolToggle2::showPanel (const QPoint& position)
|
||||||
}
|
}
|
||||||
|
|
||||||
void CSVWidget::SceneToolToggle2::addButton (unsigned int id,
|
void CSVWidget::SceneToolToggle2::addButton (unsigned int id,
|
||||||
const QString& name, const QString& tooltip)
|
const QString& name, const QString& tooltip, bool disabled)
|
||||||
{
|
{
|
||||||
std::ostringstream stream;
|
std::ostringstream stream;
|
||||||
stream << mSingleIcon << id;
|
stream << mSingleIcon << id;
|
||||||
|
@ -84,6 +84,9 @@ void CSVWidget::SceneToolToggle2::addButton (unsigned int id,
|
||||||
button->setIconSize (QSize (mIconSize, mIconSize));
|
button->setIconSize (QSize (mIconSize, mIconSize));
|
||||||
button->setFixedSize (mButtonSize, mButtonSize);
|
button->setFixedSize (mButtonSize, mButtonSize);
|
||||||
|
|
||||||
|
if (disabled)
|
||||||
|
button->setDisabled (true);
|
||||||
|
|
||||||
mLayout->addWidget (button);
|
mLayout->addWidget (button);
|
||||||
|
|
||||||
ButtonDesc desc;
|
ButtonDesc desc;
|
||||||
|
@ -95,7 +98,7 @@ void CSVWidget::SceneToolToggle2::addButton (unsigned int id,
|
||||||
|
|
||||||
connect (button, SIGNAL (clicked()), this, SLOT (selected()));
|
connect (button, SIGNAL (clicked()), this, SLOT (selected()));
|
||||||
|
|
||||||
if (mButtons.size()==1)
|
if (mButtons.size()==1 && !disabled)
|
||||||
mFirst = button;
|
mFirst = button;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -56,7 +56,7 @@ namespace CSVWidget
|
||||||
/// \attention After the last button has been added, setSelection must be called at
|
/// \attention After the last button has been added, setSelection must be called at
|
||||||
/// least once to finalise the layout.
|
/// least once to finalise the layout.
|
||||||
void addButton (unsigned int id,
|
void addButton (unsigned int id,
|
||||||
const QString& name, const QString& tooltip = "");
|
const QString& name, const QString& tooltip = "", bool disabled = false);
|
||||||
|
|
||||||
unsigned int getSelection() const;
|
unsigned int getSelection() const;
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue