mirror of
https://github.com/OpenMW/openmw.git
synced 2025-01-21 12:23:53 +00:00
Merge remote-tracking branch 'scrawl/master'
This commit is contained in:
commit
9c4355e91c
8 changed files with 238 additions and 25 deletions
|
@ -9,6 +9,8 @@
|
||||||
|
|
||||||
#include <SDL_video.h>
|
#include <SDL_video.h>
|
||||||
|
|
||||||
|
#include <components/widgets/sharedstatebutton.hpp>
|
||||||
|
|
||||||
#include "../mwbase/environment.hpp"
|
#include "../mwbase/environment.hpp"
|
||||||
#include "../mwbase/world.hpp"
|
#include "../mwbase/world.hpp"
|
||||||
#include "../mwbase/soundmanager.hpp"
|
#include "../mwbase/soundmanager.hpp"
|
||||||
|
@ -454,16 +456,21 @@ namespace MWGui
|
||||||
|
|
||||||
std::string binding = MWBase::Environment::get().getInputManager()->getActionBindingName (*it);
|
std::string binding = MWBase::Environment::get().getInputManager()->getActionBindingName (*it);
|
||||||
|
|
||||||
MyGUI::TextBox* leftText = mControlsBox->createWidget<MyGUI::TextBox>("SandText", MyGUI::IntCoord(0,curH,w,h), MyGUI::Align::Default);
|
Gui::SharedStateButton* leftText = mControlsBox->createWidget<Gui::SharedStateButton>("SandTextButton", MyGUI::IntCoord(0,curH,w,h), MyGUI::Align::Default);
|
||||||
leftText->setCaptionWithReplacing(desc);
|
leftText->setCaptionWithReplacing(desc);
|
||||||
|
|
||||||
MyGUI::Button* rightText = mControlsBox->createWidget<MyGUI::Button>("SandTextButton", MyGUI::IntCoord(0,curH,w,h), MyGUI::Align::Default);
|
Gui::SharedStateButton* rightText = mControlsBox->createWidget<Gui::SharedStateButton>("SandTextButton", MyGUI::IntCoord(0,curH,w,h), MyGUI::Align::Default);
|
||||||
rightText->setCaptionWithReplacing(binding);
|
rightText->setCaptionWithReplacing(binding);
|
||||||
rightText->setTextAlign (MyGUI::Align::Right);
|
rightText->setTextAlign (MyGUI::Align::Right);
|
||||||
rightText->setUserData(*it); // save the action id for callbacks
|
rightText->setUserData(*it); // save the action id for callbacks
|
||||||
rightText->eventMouseButtonClick += MyGUI::newDelegate(this, &SettingsWindow::onRebindAction);
|
rightText->eventMouseButtonClick += MyGUI::newDelegate(this, &SettingsWindow::onRebindAction);
|
||||||
rightText->eventMouseWheel += MyGUI::newDelegate(this, &SettingsWindow::onInputTabMouseWheel);
|
rightText->eventMouseWheel += MyGUI::newDelegate(this, &SettingsWindow::onInputTabMouseWheel);
|
||||||
curH += h;
|
curH += h;
|
||||||
|
|
||||||
|
Gui::ButtonGroup group;
|
||||||
|
group.push_back(leftText);
|
||||||
|
group.push_back(rightText);
|
||||||
|
Gui::SharedStateButton::createButtonGroup(group);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Canvas size must be expressed with VScroll disabled, otherwise MyGUI would expand the scroll area when the scrollbar is hidden
|
// Canvas size must be expressed with VScroll disabled, otherwise MyGUI would expand the scroll area when the scrollbar is hidden
|
||||||
|
|
|
@ -3,6 +3,8 @@
|
||||||
#include <boost/lexical_cast.hpp>
|
#include <boost/lexical_cast.hpp>
|
||||||
#include <boost/format.hpp>
|
#include <boost/format.hpp>
|
||||||
|
|
||||||
|
#include <components/widgets/sharedstatebutton.hpp>
|
||||||
|
|
||||||
#include "../mwbase/windowmanager.hpp"
|
#include "../mwbase/windowmanager.hpp"
|
||||||
#include "../mwbase/environment.hpp"
|
#include "../mwbase/environment.hpp"
|
||||||
#include "../mwbase/world.hpp"
|
#include "../mwbase/world.hpp"
|
||||||
|
@ -177,7 +179,7 @@ namespace MWGui
|
||||||
for (std::vector<std::string>::const_iterator it = spellList.begin(); it != spellList.end(); ++it)
|
for (std::vector<std::string>::const_iterator it = spellList.begin(); it != spellList.end(); ++it)
|
||||||
{
|
{
|
||||||
const ESM::Spell* spell = esmStore.get<ESM::Spell>().find(*it);
|
const ESM::Spell* spell = esmStore.get<ESM::Spell>().find(*it);
|
||||||
MyGUI::Button* t = mSpellView->createWidget<MyGUI::Button>("SandTextButton",
|
Gui::SharedStateButton* t = mSpellView->createWidget<Gui::SharedStateButton>("SandTextButton",
|
||||||
MyGUI::IntCoord(4, mHeight, mWidth-8, spellHeight), MyGUI::Align::Left | MyGUI::Align::Top);
|
MyGUI::IntCoord(4, mHeight, mWidth-8, spellHeight), MyGUI::Align::Left | MyGUI::Align::Top);
|
||||||
t->setCaption(spell->mName);
|
t->setCaption(spell->mName);
|
||||||
t->setTextAlign(MyGUI::Align::Left);
|
t->setTextAlign(MyGUI::Align::Left);
|
||||||
|
@ -185,20 +187,28 @@ namespace MWGui
|
||||||
t->setUserString("Spell", *it);
|
t->setUserString("Spell", *it);
|
||||||
t->eventMouseWheel += MyGUI::newDelegate(this, &SpellWindow::onMouseWheel);
|
t->eventMouseWheel += MyGUI::newDelegate(this, &SpellWindow::onMouseWheel);
|
||||||
t->eventMouseButtonClick += MyGUI::newDelegate(this, &SpellWindow::onSpellSelected);
|
t->eventMouseButtonClick += MyGUI::newDelegate(this, &SpellWindow::onSpellSelected);
|
||||||
t->setStateSelected(*it == MWBase::Environment::get().getWindowManager()->getSelectedSpell());
|
|
||||||
|
|
||||||
// cost / success chance
|
// cost / success chance
|
||||||
MyGUI::Button* costChance = mSpellView->createWidget<MyGUI::Button>("SandTextButton",
|
Gui::SharedStateButton* costChance = mSpellView->createWidget<Gui::SharedStateButton>("SandTextButton",
|
||||||
MyGUI::IntCoord(4, mHeight, mWidth-8, spellHeight), MyGUI::Align::Left | MyGUI::Align::Top);
|
MyGUI::IntCoord(4, mHeight, mWidth-8, spellHeight), MyGUI::Align::Left | MyGUI::Align::Top);
|
||||||
std::string cost = boost::lexical_cast<std::string>(spell->mData.mCost);
|
std::string cost = boost::lexical_cast<std::string>(spell->mData.mCost);
|
||||||
std::string chance = boost::lexical_cast<std::string>(int(MWMechanics::getSpellSuccessChance(*it, player)));
|
std::string chance = boost::lexical_cast<std::string>(int(MWMechanics::getSpellSuccessChance(*it, player)));
|
||||||
costChance->setCaption(cost + "/" + chance);
|
costChance->setCaption(cost + "/" + chance);
|
||||||
costChance->setTextAlign(MyGUI::Align::Right);
|
costChance->setTextAlign(MyGUI::Align::Right);
|
||||||
costChance->setNeedMouseFocus(false);
|
costChance->setUserString("ToolTipType", "Spell");
|
||||||
costChance->setStateSelected(*it == MWBase::Environment::get().getWindowManager()->getSelectedSpell());
|
costChance->setUserString("Spell", *it);
|
||||||
|
costChance->eventMouseWheel += MyGUI::newDelegate(this, &SpellWindow::onMouseWheel);
|
||||||
|
costChance->eventMouseButtonClick += MyGUI::newDelegate(this, &SpellWindow::onSpellSelected);
|
||||||
|
|
||||||
t->setSize(mWidth-12-costChance->getTextSize().width, t->getHeight());
|
t->setSize(mWidth-12-costChance->getTextSize().width, t->getHeight());
|
||||||
|
|
||||||
|
Gui::ButtonGroup group;
|
||||||
|
group.push_back(t);
|
||||||
|
group.push_back(costChance);
|
||||||
|
Gui::SharedStateButton::createButtonGroup(group);
|
||||||
|
|
||||||
|
t->setStateSelected(*it == MWBase::Environment::get().getWindowManager()->getSelectedSpell());
|
||||||
|
|
||||||
mHeight += spellHeight;
|
mHeight += spellHeight;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -224,7 +234,7 @@ namespace MWGui
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
MyGUI::Button* t = mSpellView->createWidget<MyGUI::Button>(equipped ? "SandTextButton" : "SpellTextUnequipped",
|
Gui::SharedStateButton* t = mSpellView->createWidget<Gui::SharedStateButton>(equipped ? "SandTextButton" : "SpellTextUnequipped",
|
||||||
MyGUI::IntCoord(4, mHeight, mWidth-8, spellHeight), MyGUI::Align::Left | MyGUI::Align::Top);
|
MyGUI::IntCoord(4, mHeight, mWidth-8, spellHeight), MyGUI::Align::Left | MyGUI::Align::Top);
|
||||||
t->setCaption(item.getClass().getName(item));
|
t->setCaption(item.getClass().getName(item));
|
||||||
t->setTextAlign(MyGUI::Align::Left);
|
t->setTextAlign(MyGUI::Align::Left);
|
||||||
|
@ -233,12 +243,9 @@ namespace MWGui
|
||||||
t->setUserString("Equipped", equipped ? "true" : "false");
|
t->setUserString("Equipped", equipped ? "true" : "false");
|
||||||
t->eventMouseButtonClick += MyGUI::newDelegate(this, &SpellWindow::onEnchantedItemSelected);
|
t->eventMouseButtonClick += MyGUI::newDelegate(this, &SpellWindow::onEnchantedItemSelected);
|
||||||
t->eventMouseWheel += MyGUI::newDelegate(this, &SpellWindow::onMouseWheel);
|
t->eventMouseWheel += MyGUI::newDelegate(this, &SpellWindow::onMouseWheel);
|
||||||
if (store.getSelectedEnchantItem() != store.end())
|
|
||||||
t->setStateSelected(item == *store.getSelectedEnchantItem());
|
|
||||||
|
|
||||||
|
|
||||||
// cost / charge
|
// cost / charge
|
||||||
MyGUI::Button* costCharge = mSpellView->createWidget<MyGUI::Button>(equipped ? "SandTextButton" : "SpellTextUnequipped",
|
Gui::SharedStateButton* costCharge = mSpellView->createWidget<Gui::SharedStateButton>(equipped ? "SandTextButton" : "SpellTextUnequipped",
|
||||||
MyGUI::IntCoord(4, mHeight, mWidth-8, spellHeight), MyGUI::Align::Left | MyGUI::Align::Top);
|
MyGUI::IntCoord(4, mHeight, mWidth-8, spellHeight), MyGUI::Align::Left | MyGUI::Align::Top);
|
||||||
|
|
||||||
float enchantCost = enchant->mData.mCost;
|
float enchantCost = enchant->mData.mCost;
|
||||||
|
@ -257,11 +264,22 @@ namespace MWGui
|
||||||
charge = "100";
|
charge = "100";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
costCharge->setUserData(item);
|
||||||
|
costCharge->setUserString("ToolTipType", "ItemPtr");
|
||||||
|
costCharge->setUserString("Equipped", equipped ? "true" : "false");
|
||||||
|
costCharge->eventMouseButtonClick += MyGUI::newDelegate(this, &SpellWindow::onEnchantedItemSelected);
|
||||||
|
costCharge->eventMouseWheel += MyGUI::newDelegate(this, &SpellWindow::onMouseWheel);
|
||||||
costCharge->setCaption(cost + "/" + charge);
|
costCharge->setCaption(cost + "/" + charge);
|
||||||
costCharge->setTextAlign(MyGUI::Align::Right);
|
costCharge->setTextAlign(MyGUI::Align::Right);
|
||||||
costCharge->setNeedMouseFocus(false);
|
|
||||||
|
Gui::ButtonGroup group;
|
||||||
|
group.push_back(t);
|
||||||
|
group.push_back(costCharge);
|
||||||
|
Gui::SharedStateButton::createButtonGroup(group);
|
||||||
|
|
||||||
if (store.getSelectedEnchantItem() != store.end())
|
if (store.getSelectedEnchantItem() != store.end())
|
||||||
costCharge->setStateSelected(item == *store.getSelectedEnchantItem());
|
t->setStateSelected(item == *store.getSelectedEnchantItem());
|
||||||
|
|
||||||
t->setSize(mWidth-12-costCharge->getTextSize().width, t->getHeight());
|
t->setSize(mWidth-12-costCharge->getTextSize().width, t->getHeight());
|
||||||
|
|
||||||
|
|
|
@ -1179,7 +1179,14 @@ namespace MWScript
|
||||||
virtual void execute (Interpreter::Runtime& runtime)
|
virtual void execute (Interpreter::Runtime& runtime)
|
||||||
{
|
{
|
||||||
MWWorld::Ptr ptr = R()(runtime);
|
MWWorld::Ptr ptr = R()(runtime);
|
||||||
|
|
||||||
|
if (ptr == MWBase::Environment::get().getWorld()->getPlayerPtr())
|
||||||
ptr.getClass().getCreatureStats(ptr).resurrect();
|
ptr.getClass().getCreatureStats(ptr).resurrect();
|
||||||
|
else if (ptr.getClass().getCreatureStats(ptr).isDead())
|
||||||
|
{
|
||||||
|
// resets runtime state such as inventory, stats and AI. does not reset position in the world
|
||||||
|
ptr.getRefData().setCustomData(NULL);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -859,16 +859,16 @@ namespace MWWorld
|
||||||
// Try to overwrite existing record
|
// Try to overwrite existing record
|
||||||
if (!pathgrid.mCell.empty())
|
if (!pathgrid.mCell.empty())
|
||||||
{
|
{
|
||||||
std::pair<Interior::iterator, bool> found = mInt.insert(std::make_pair(pathgrid.mCell, pathgrid));
|
std::pair<Interior::iterator, bool> ret = mInt.insert(std::make_pair(pathgrid.mCell, pathgrid));
|
||||||
if (found.second)
|
if (!ret.second)
|
||||||
found.first->second = pathgrid;
|
ret.first->second = pathgrid;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
std::pair<Exterior::iterator, bool> found = mExt.insert(std::make_pair(std::make_pair(pathgrid.mData.mX, pathgrid.mData.mY),
|
std::pair<Exterior::iterator, bool> ret = mExt.insert(std::make_pair(std::make_pair(pathgrid.mData.mX, pathgrid.mData.mY),
|
||||||
pathgrid));
|
pathgrid));
|
||||||
if (found.second)
|
if (!ret.second)
|
||||||
found.first->second = pathgrid;
|
ret.first->second = pathgrid;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -953,9 +953,9 @@ namespace MWWorld
|
||||||
record.load(esm);
|
record.load(esm);
|
||||||
|
|
||||||
// Try to overwrite existing record
|
// Try to overwrite existing record
|
||||||
std::pair<typename Static::iterator, bool> found = mStatic.insert(std::make_pair(record.mIndex, record));
|
std::pair<typename Static::iterator, bool> ret = mStatic.insert(std::make_pair(record.mIndex, record));
|
||||||
if (found.second)
|
if (!ret.second)
|
||||||
found.first->second = record;
|
ret.first->second = record;
|
||||||
}
|
}
|
||||||
|
|
||||||
int getSize() const {
|
int getSize() const {
|
||||||
|
|
|
@ -96,7 +96,7 @@ add_component_dir (ogreinit
|
||||||
)
|
)
|
||||||
|
|
||||||
add_component_dir (widgets
|
add_component_dir (widgets
|
||||||
box imagebutton tags list numericeditbox widgets
|
box imagebutton tags list numericeditbox sharedstatebutton widgets
|
||||||
)
|
)
|
||||||
|
|
||||||
add_component_dir (fontloader
|
add_component_dir (fontloader
|
||||||
|
|
128
components/widgets/sharedstatebutton.cpp
Normal file
128
components/widgets/sharedstatebutton.cpp
Normal file
|
@ -0,0 +1,128 @@
|
||||||
|
#include "sharedstatebutton.hpp"
|
||||||
|
|
||||||
|
namespace Gui
|
||||||
|
{
|
||||||
|
|
||||||
|
SharedStateButton::SharedStateButton()
|
||||||
|
: mIsMousePressed(false)
|
||||||
|
, mIsMouseFocus(false)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
void SharedStateButton::shutdownOverride()
|
||||||
|
{
|
||||||
|
ButtonGroup group = mSharedWith; // make a copy so that we don't nuke the vector during iteration
|
||||||
|
for (ButtonGroup::iterator it = group.begin(); it != group.end(); ++it)
|
||||||
|
{
|
||||||
|
(*it)->shareStateWith(ButtonGroup());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void SharedStateButton::shareStateWith(ButtonGroup shared)
|
||||||
|
{
|
||||||
|
mSharedWith = shared;
|
||||||
|
}
|
||||||
|
|
||||||
|
void SharedStateButton::onMouseButtonPressed(int _left, int _top, MyGUI::MouseButton _id)
|
||||||
|
{
|
||||||
|
mIsMousePressed = true;
|
||||||
|
Base::onMouseButtonPressed(_left, _top, _id);
|
||||||
|
updateButtonState();
|
||||||
|
}
|
||||||
|
|
||||||
|
void SharedStateButton::onMouseButtonReleased(int _left, int _top, MyGUI::MouseButton _id)
|
||||||
|
{
|
||||||
|
mIsMousePressed = false;
|
||||||
|
Base::onMouseButtonReleased(_left, _top, _id);
|
||||||
|
updateButtonState();
|
||||||
|
}
|
||||||
|
|
||||||
|
void SharedStateButton::onMouseSetFocus(MyGUI::Widget *_old)
|
||||||
|
{
|
||||||
|
mIsMouseFocus = true;
|
||||||
|
Base::onMouseSetFocus(_old);
|
||||||
|
updateButtonState();
|
||||||
|
}
|
||||||
|
|
||||||
|
void SharedStateButton::onMouseLostFocus(MyGUI::Widget *_new)
|
||||||
|
{
|
||||||
|
mIsMouseFocus = false;
|
||||||
|
Base::onMouseLostFocus(_new);
|
||||||
|
updateButtonState();
|
||||||
|
}
|
||||||
|
|
||||||
|
void SharedStateButton::baseUpdateEnable()
|
||||||
|
{
|
||||||
|
Base::baseUpdateEnable();
|
||||||
|
updateButtonState();
|
||||||
|
}
|
||||||
|
|
||||||
|
void SharedStateButton::setStateSelected(bool _value)
|
||||||
|
{
|
||||||
|
Base::setStateSelected(_value);
|
||||||
|
updateButtonState();
|
||||||
|
|
||||||
|
for (ButtonGroup::iterator it = mSharedWith.begin(); it != mSharedWith.end(); ++it)
|
||||||
|
{
|
||||||
|
(*it)->MyGUI::Button::setStateSelected(getStateSelected());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
bool SharedStateButton::_setState(const std::string &_value)
|
||||||
|
{
|
||||||
|
bool ret = _setWidgetState(_value);
|
||||||
|
if (ret)
|
||||||
|
{
|
||||||
|
for (ButtonGroup::iterator it = mSharedWith.begin(); it != mSharedWith.end(); ++it)
|
||||||
|
{
|
||||||
|
(*it)->_setWidgetState(_value);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
void SharedStateButton::updateButtonState()
|
||||||
|
{
|
||||||
|
if (getStateSelected())
|
||||||
|
{
|
||||||
|
if (!getInheritedEnabled())
|
||||||
|
{
|
||||||
|
if (!_setState("disabled_checked"))
|
||||||
|
_setState("disabled");
|
||||||
|
}
|
||||||
|
else if (mIsMousePressed)
|
||||||
|
{
|
||||||
|
if (!_setState("pushed_checked"))
|
||||||
|
_setState("pushed");
|
||||||
|
}
|
||||||
|
else if (mIsMouseFocus)
|
||||||
|
{
|
||||||
|
if (!_setState("highlighted_checked"))
|
||||||
|
_setState("pushed");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
_setState("normal_checked");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (!getInheritedEnabled())
|
||||||
|
_setState("disabled");
|
||||||
|
else if (mIsMousePressed)
|
||||||
|
_setState("pushed");
|
||||||
|
else if (mIsMouseFocus)
|
||||||
|
_setState("highlighted");
|
||||||
|
else
|
||||||
|
_setState("normal");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void SharedStateButton::createButtonGroup(ButtonGroup group)
|
||||||
|
{
|
||||||
|
for (ButtonGroup::iterator it = group.begin(); it != group.end(); ++it)
|
||||||
|
{
|
||||||
|
(*it)->shareStateWith(group);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
51
components/widgets/sharedstatebutton.hpp
Normal file
51
components/widgets/sharedstatebutton.hpp
Normal file
|
@ -0,0 +1,51 @@
|
||||||
|
#ifndef OPENMW_WIDGETS_SHAREDSTATEBUTTON_HPP
|
||||||
|
#define OPENMW_WIDGETS_SHAREDSTATEBUTTON_HPP
|
||||||
|
|
||||||
|
#include <MyGUI_Button.h>
|
||||||
|
|
||||||
|
namespace Gui
|
||||||
|
{
|
||||||
|
|
||||||
|
class SharedStateButton;
|
||||||
|
|
||||||
|
typedef std::vector<SharedStateButton*> ButtonGroup;
|
||||||
|
|
||||||
|
/// @brief A button that applies its own state changes to other widgets, to do this you define it as part of a ButtonGroup.
|
||||||
|
class SharedStateButton : public MyGUI::Button
|
||||||
|
{
|
||||||
|
MYGUI_RTTI_DERIVED(SharedStateButton)
|
||||||
|
|
||||||
|
public:
|
||||||
|
SharedStateButton();
|
||||||
|
|
||||||
|
protected:
|
||||||
|
void updateButtonState();
|
||||||
|
|
||||||
|
virtual void onMouseButtonPressed(int _left, int _top, MyGUI::MouseButton _id);
|
||||||
|
virtual void onMouseButtonReleased(int _left, int _top, MyGUI::MouseButton _id);
|
||||||
|
virtual void onMouseSetFocus(MyGUI::Widget* _old);
|
||||||
|
virtual void onMouseLostFocus(MyGUI::Widget* _new);
|
||||||
|
virtual void baseUpdateEnable();
|
||||||
|
|
||||||
|
virtual void shutdownOverride();
|
||||||
|
|
||||||
|
bool _setState(const std::string &_value);
|
||||||
|
|
||||||
|
public:
|
||||||
|
void shareStateWith(ButtonGroup shared);
|
||||||
|
|
||||||
|
/// @note The ButtonGroup connection will be destroyed when any widget in the group gets destroyed.
|
||||||
|
static void createButtonGroup(ButtonGroup group);
|
||||||
|
|
||||||
|
//! Set button selected state
|
||||||
|
void setStateSelected(bool _value);
|
||||||
|
|
||||||
|
private:
|
||||||
|
ButtonGroup mSharedWith;
|
||||||
|
|
||||||
|
bool mIsMousePressed;
|
||||||
|
bool mIsMouseFocus;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif
|
|
@ -6,6 +6,7 @@
|
||||||
#include "numericeditbox.hpp"
|
#include "numericeditbox.hpp"
|
||||||
#include "box.hpp"
|
#include "box.hpp"
|
||||||
#include "imagebutton.hpp"
|
#include "imagebutton.hpp"
|
||||||
|
#include "sharedstatebutton.hpp"
|
||||||
|
|
||||||
namespace Gui
|
namespace Gui
|
||||||
{
|
{
|
||||||
|
@ -20,6 +21,7 @@ namespace Gui
|
||||||
MyGUI::FactoryManager::getInstance().registerFactory<Gui::AutoSizedButton>("Widget");
|
MyGUI::FactoryManager::getInstance().registerFactory<Gui::AutoSizedButton>("Widget");
|
||||||
MyGUI::FactoryManager::getInstance().registerFactory<Gui::ImageButton>("Widget");
|
MyGUI::FactoryManager::getInstance().registerFactory<Gui::ImageButton>("Widget");
|
||||||
MyGUI::FactoryManager::getInstance().registerFactory<Gui::NumericEditBox>("Widget");
|
MyGUI::FactoryManager::getInstance().registerFactory<Gui::NumericEditBox>("Widget");
|
||||||
|
MyGUI::FactoryManager::getInstance().registerFactory<Gui::SharedStateButton>("Widget");
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue