mirror of
https://github.com/OpenMW/openmw.git
synced 2025-04-28 00:36:50 +00:00
some editing code
This commit is contained in:
parent
7ee038fdd7
commit
1c0dd3ccc5
8 changed files with 294 additions and 81 deletions
|
@ -8,7 +8,9 @@ namespace MWGui
|
||||||
EnchantingDialog::EnchantingDialog(MWBase::WindowManager &parWindowManager)
|
EnchantingDialog::EnchantingDialog(MWBase::WindowManager &parWindowManager)
|
||||||
: WindowBase("openmw_enchanting_dialog.layout", parWindowManager)
|
: WindowBase("openmw_enchanting_dialog.layout", parWindowManager)
|
||||||
{
|
{
|
||||||
|
getWidget(mCancelButton, "CancelButton");
|
||||||
|
|
||||||
|
mCancelButton->eventMouseButtonClick += MyGUI::newDelegate(this, &EnchantingDialog::onCancelButtonClicked);
|
||||||
}
|
}
|
||||||
|
|
||||||
void EnchantingDialog::open()
|
void EnchantingDialog::open()
|
||||||
|
@ -27,4 +29,8 @@ namespace MWGui
|
||||||
mWindowManager.removeGuiMode (GM_Enchanting);
|
mWindowManager.removeGuiMode (GM_Enchanting);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void EnchantingDialog::onCancelButtonClicked(MyGUI::Widget* sender)
|
||||||
|
{
|
||||||
|
mWindowManager.removeGuiMode (GM_Enchanting);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -19,6 +19,10 @@ namespace MWGui
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
virtual void onReferenceUnavailable();
|
virtual void onReferenceUnavailable();
|
||||||
|
|
||||||
|
void onCancelButtonClicked(MyGUI::Widget* sender);
|
||||||
|
|
||||||
|
MyGUI::Button* mCancelButton;
|
||||||
};
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -15,6 +15,7 @@
|
||||||
|
|
||||||
#include "tooltips.hpp"
|
#include "tooltips.hpp"
|
||||||
#include "widgets.hpp"
|
#include "widgets.hpp"
|
||||||
|
#include "class.hpp"
|
||||||
|
|
||||||
namespace
|
namespace
|
||||||
{
|
{
|
||||||
|
@ -31,6 +32,7 @@ namespace MWGui
|
||||||
|
|
||||||
EditEffectDialog::EditEffectDialog(MWBase::WindowManager &parWindowManager)
|
EditEffectDialog::EditEffectDialog(MWBase::WindowManager &parWindowManager)
|
||||||
: WindowModal("openmw_edit_effect.layout", parWindowManager)
|
: WindowModal("openmw_edit_effect.layout", parWindowManager)
|
||||||
|
, mEditing(false)
|
||||||
{
|
{
|
||||||
getWidget(mCancelButton, "CancelButton");
|
getWidget(mCancelButton, "CancelButton");
|
||||||
getWidget(mOkButton, "OkButton");
|
getWidget(mOkButton, "OkButton");
|
||||||
|
@ -64,7 +66,27 @@ namespace MWGui
|
||||||
onRangeButtonClicked(mRangeButton);
|
onRangeButtonClicked(mRangeButton);
|
||||||
}
|
}
|
||||||
|
|
||||||
void EditEffectDialog::setEffect (const ESM::MagicEffect *effect)
|
void EditEffectDialog::newEffect (const ESM::MagicEffect *effect)
|
||||||
|
{
|
||||||
|
setMagicEffect(effect);
|
||||||
|
mEditing = false;
|
||||||
|
|
||||||
|
mDeleteButton->setVisible (false);
|
||||||
|
}
|
||||||
|
|
||||||
|
void EditEffectDialog::editEffect (ESM::ENAMstruct effect)
|
||||||
|
{
|
||||||
|
const ESM::MagicEffect* magicEffect = MWBase::Environment::get().getWorld()->getStore().magicEffects.find(effect.mEffectID);
|
||||||
|
|
||||||
|
setMagicEffect(magicEffect);
|
||||||
|
|
||||||
|
mEffect = effect;
|
||||||
|
mEditing = true;
|
||||||
|
|
||||||
|
mDeleteButton->setVisible (true);
|
||||||
|
}
|
||||||
|
|
||||||
|
void EditEffectDialog::setMagicEffect (const ESM::MagicEffect *effect)
|
||||||
{
|
{
|
||||||
std::string icon = effect->mIcon;
|
std::string icon = effect->mIcon;
|
||||||
icon[icon.size()-3] = 'd';
|
icon[icon.size()-3] = 'd';
|
||||||
|
@ -75,6 +97,8 @@ namespace MWGui
|
||||||
mEffectImage->setImageTexture (icon);
|
mEffectImage->setImageTexture (icon);
|
||||||
|
|
||||||
mEffectName->setCaptionWithReplacing("#{"+ESM::MagicEffect::effectIdToString (effect->mIndex)+"}");
|
mEffectName->setCaptionWithReplacing("#{"+ESM::MagicEffect::effectIdToString (effect->mIndex)+"}");
|
||||||
|
|
||||||
|
mEffect.mEffectID = effect->mIndex;
|
||||||
}
|
}
|
||||||
|
|
||||||
void EditEffectDialog::onRangeButtonClicked (MyGUI::Widget* sender)
|
void EditEffectDialog::onRangeButtonClicked (MyGUI::Widget* sender)
|
||||||
|
@ -94,12 +118,19 @@ namespace MWGui
|
||||||
|
|
||||||
void EditEffectDialog::onDeleteButtonClicked (MyGUI::Widget* sender)
|
void EditEffectDialog::onDeleteButtonClicked (MyGUI::Widget* sender)
|
||||||
{
|
{
|
||||||
|
setVisible(false);
|
||||||
|
|
||||||
|
eventEffectRemoved(mEffect);
|
||||||
}
|
}
|
||||||
|
|
||||||
void EditEffectDialog::onOkButtonClicked (MyGUI::Widget* sender)
|
void EditEffectDialog::onOkButtonClicked (MyGUI::Widget* sender)
|
||||||
{
|
{
|
||||||
setVisible(false);
|
setVisible(false);
|
||||||
|
|
||||||
|
if (mEditing)
|
||||||
|
eventEffectModified(mEffect);
|
||||||
|
else
|
||||||
|
eventEffectAdded(mEffect);
|
||||||
}
|
}
|
||||||
|
|
||||||
void EditEffectDialog::onCancelButtonClicked (MyGUI::Widget* sender)
|
void EditEffectDialog::onCancelButtonClicked (MyGUI::Widget* sender)
|
||||||
|
@ -107,6 +138,16 @@ namespace MWGui
|
||||||
setVisible(false);
|
setVisible(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void EditEffectDialog::setSkill (int skill)
|
||||||
|
{
|
||||||
|
mEffect.mSkill = skill;
|
||||||
|
}
|
||||||
|
|
||||||
|
void EditEffectDialog::setAttribute (int attribute)
|
||||||
|
{
|
||||||
|
mEffect.mAttribute = attribute;
|
||||||
|
}
|
||||||
|
|
||||||
// ------------------------------------------------------------------------------------------------
|
// ------------------------------------------------------------------------------------------------
|
||||||
|
|
||||||
SpellCreationDialog::SpellCreationDialog(MWBase::WindowManager &parWindowManager)
|
SpellCreationDialog::SpellCreationDialog(MWBase::WindowManager &parWindowManager)
|
||||||
|
@ -130,6 +171,10 @@ namespace MWGui
|
||||||
mBuyButton->eventMouseButtonClick += MyGUI::newDelegate(this, &SpellCreationDialog::onBuyButtonClicked);
|
mBuyButton->eventMouseButtonClick += MyGUI::newDelegate(this, &SpellCreationDialog::onBuyButtonClicked);
|
||||||
|
|
||||||
mAvailableEffectsList->eventWidgetSelected += MyGUI::newDelegate(this, &SpellCreationDialog::onAvailableEffectClicked);
|
mAvailableEffectsList->eventWidgetSelected += MyGUI::newDelegate(this, &SpellCreationDialog::onAvailableEffectClicked);
|
||||||
|
|
||||||
|
mAddEffectDialog.eventEffectAdded += MyGUI::newDelegate(this, &SpellCreationDialog::onEffectAdded);
|
||||||
|
mAddEffectDialog.eventEffectModified += MyGUI::newDelegate(this, &SpellCreationDialog::onEffectModified);
|
||||||
|
mAddEffectDialog.eventEffectRemoved += MyGUI::newDelegate(this, &SpellCreationDialog::onEffectRemoved);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -205,15 +250,131 @@ namespace MWGui
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void SpellCreationDialog::onSelectAttribute ()
|
||||||
|
{
|
||||||
|
mAddEffectDialog.setVisible(true);
|
||||||
|
mAddEffectDialog.setAttribute (mSelectAttributeDialog->getAttributeId());
|
||||||
|
mWindowManager.removeDialog (mSelectAttributeDialog);
|
||||||
|
mSelectAttributeDialog = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
void SpellCreationDialog::onSelectSkill ()
|
||||||
|
{
|
||||||
|
mAddEffectDialog.setVisible(true);
|
||||||
|
mAddEffectDialog.setSkill (mSelectSkillDialog->getSkillId ());
|
||||||
|
mWindowManager.removeDialog (mSelectSkillDialog);
|
||||||
|
mSelectSkillDialog = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
void SpellCreationDialog::onAttributeOrSkillCancel ()
|
||||||
|
{
|
||||||
|
if (mSelectSkillDialog)
|
||||||
|
mWindowManager.removeDialog (mSelectSkillDialog);
|
||||||
|
if (mSelectAttributeDialog)
|
||||||
|
mWindowManager.removeDialog (mSelectAttributeDialog);
|
||||||
|
|
||||||
|
mSelectSkillDialog = 0;
|
||||||
|
mSelectAttributeDialog = 0;
|
||||||
|
}
|
||||||
|
|
||||||
void SpellCreationDialog::onAvailableEffectClicked (MyGUI::Widget* sender)
|
void SpellCreationDialog::onAvailableEffectClicked (MyGUI::Widget* sender)
|
||||||
{
|
{
|
||||||
|
|
||||||
short effectId = *sender->getUserData<short>();
|
short effectId = *sender->getUserData<short>();
|
||||||
const ESM::MagicEffect* effect = MWBase::Environment::get().getWorld()->getStore().magicEffects.find(effectId);
|
const ESM::MagicEffect* effect = MWBase::Environment::get().getWorld()->getStore().magicEffects.find(effectId);
|
||||||
|
|
||||||
|
mAddEffectDialog.newEffect (effect);
|
||||||
|
|
||||||
|
if (effect->mData.mFlags & ESM::MagicEffect::TargetSkill)
|
||||||
|
{
|
||||||
|
delete mSelectSkillDialog;
|
||||||
|
mSelectSkillDialog = new SelectSkillDialog(mWindowManager);
|
||||||
|
mSelectSkillDialog->eventCancel += MyGUI::newDelegate(this, &SpellCreationDialog::onAttributeOrSkillCancel);
|
||||||
|
mSelectSkillDialog->eventItemSelected += MyGUI::newDelegate(this, &SpellCreationDialog::onSelectSkill);
|
||||||
|
mSelectSkillDialog->setVisible (true);
|
||||||
|
}
|
||||||
|
else if (effect->mData.mFlags & ESM::MagicEffect::TargetAttribute)
|
||||||
|
{
|
||||||
|
delete mSelectAttributeDialog;
|
||||||
|
mSelectAttributeDialog = new SelectAttributeDialog(mWindowManager);
|
||||||
|
mSelectAttributeDialog->eventCancel += MyGUI::newDelegate(this, &SpellCreationDialog::onAttributeOrSkillCancel);
|
||||||
|
mSelectAttributeDialog->eventItemSelected += MyGUI::newDelegate(this, &SpellCreationDialog::onSelectAttribute);
|
||||||
|
mSelectAttributeDialog->setVisible (true);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
mAddEffectDialog.setVisible(true);
|
mAddEffectDialog.setVisible(true);
|
||||||
mAddEffectDialog.setEffect (effect);
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void SpellCreationDialog::onEffectModified (ESM::ENAMstruct effect)
|
||||||
|
{
|
||||||
|
mEffects[mSelectedEffect] = effect;
|
||||||
|
|
||||||
|
updateEffectsView();
|
||||||
|
}
|
||||||
|
|
||||||
|
void SpellCreationDialog::onEffectRemoved (ESM::ENAMstruct effect)
|
||||||
|
{
|
||||||
|
mEffects.erase(mEffects.begin() + mSelectedEffect);
|
||||||
|
updateEffectsView();
|
||||||
|
}
|
||||||
|
|
||||||
|
void SpellCreationDialog::updateEffectsView ()
|
||||||
|
{
|
||||||
|
MyGUI::EnumeratorWidgetPtr oldWidgets = mUsedEffectsView->getEnumerator ();
|
||||||
|
MyGUI::Gui::getInstance ().destroyWidgets (oldWidgets);
|
||||||
|
|
||||||
|
MyGUI::IntSize size(0,0);
|
||||||
|
|
||||||
|
int i = 0;
|
||||||
|
for (std::vector<ESM::ENAMstruct>::const_iterator it = mEffects.begin(); it != mEffects.end(); ++it)
|
||||||
|
{
|
||||||
|
Widgets::SpellEffectParams params;
|
||||||
|
params.mEffectID = it->mEffectID;
|
||||||
|
params.mSkill = it->mSkill;
|
||||||
|
params.mAttribute = it->mAttribute;
|
||||||
|
params.mDuration = it->mDuration;
|
||||||
|
params.mMagnMin = it->mMagnMin;
|
||||||
|
params.mMagnMax = it->mMagnMax;
|
||||||
|
params.mRange = it->mRange;
|
||||||
|
|
||||||
|
MyGUI::Button* button = mUsedEffectsView->createWidget<MyGUI::Button>("", MyGUI::IntCoord(0, size.height, 0, 24), MyGUI::Align::Default);
|
||||||
|
button->setUserData(i);
|
||||||
|
button->eventMouseButtonClick += MyGUI::newDelegate(this, &SpellCreationDialog::onEditEffect);
|
||||||
|
button->setNeedMouseFocus (true);
|
||||||
|
|
||||||
|
Widgets::MWSpellEffectPtr effect = button->createWidget<Widgets::MWSpellEffect>("MW_EffectImage", MyGUI::IntCoord(0,0,0,24), MyGUI::Align::Default);
|
||||||
|
|
||||||
|
effect->setNeedMouseFocus (false);
|
||||||
|
effect->setWindowManager (&mWindowManager);
|
||||||
|
effect->setSpellEffect (params);
|
||||||
|
|
||||||
|
effect->setSize(effect->getRequestedWidth (), 24);
|
||||||
|
button->setSize(effect->getRequestedWidth (), 24);
|
||||||
|
|
||||||
|
size.width = std::max(size.width, effect->getRequestedWidth ());
|
||||||
|
size.height += 24;
|
||||||
|
++i;
|
||||||
|
}
|
||||||
|
|
||||||
|
mUsedEffectsView->setCanvasSize(size);
|
||||||
|
}
|
||||||
|
|
||||||
|
void SpellCreationDialog::onEffectAdded (ESM::ENAMstruct effect)
|
||||||
|
{
|
||||||
|
mEffects.push_back(effect);
|
||||||
|
|
||||||
|
updateEffectsView();
|
||||||
|
}
|
||||||
|
|
||||||
|
void SpellCreationDialog::onEditEffect (MyGUI::Widget *sender)
|
||||||
|
{
|
||||||
|
int id = *sender->getUserData<int>();
|
||||||
|
|
||||||
|
mSelectedEffect = id;
|
||||||
|
|
||||||
|
mAddEffectDialog.editEffect (mEffects[id]);
|
||||||
|
mAddEffectDialog.setVisible (true);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,6 +4,7 @@
|
||||||
#include "window_base.hpp"
|
#include "window_base.hpp"
|
||||||
#include "referenceinterface.hpp"
|
#include "referenceinterface.hpp"
|
||||||
#include "list.hpp"
|
#include "list.hpp"
|
||||||
|
#include "widgets.hpp"
|
||||||
|
|
||||||
namespace MWGui
|
namespace MWGui
|
||||||
{
|
{
|
||||||
|
@ -18,7 +19,17 @@ namespace MWGui
|
||||||
|
|
||||||
virtual void open();
|
virtual void open();
|
||||||
|
|
||||||
void setEffect (const ESM::MagicEffect* effect);
|
void setSkill(int skill);
|
||||||
|
void setAttribute(int attribute);
|
||||||
|
|
||||||
|
void newEffect (const ESM::MagicEffect* effect);
|
||||||
|
void editEffect (ESM::ENAMstruct effect);
|
||||||
|
|
||||||
|
typedef MyGUI::delegates::CMultiDelegate1<ESM::ENAMstruct> EventHandle_Effect;
|
||||||
|
|
||||||
|
EventHandle_Effect eventEffectAdded;
|
||||||
|
EventHandle_Effect eventEffectModified;
|
||||||
|
EventHandle_Effect eventEffectRemoved;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
MyGUI::Button* mCancelButton;
|
MyGUI::Button* mCancelButton;
|
||||||
|
@ -42,12 +53,16 @@ namespace MWGui
|
||||||
MyGUI::ImageBox* mEffectImage;
|
MyGUI::ImageBox* mEffectImage;
|
||||||
MyGUI::TextBox* mEffectName;
|
MyGUI::TextBox* mEffectName;
|
||||||
|
|
||||||
|
bool mEditing;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
void onRangeButtonClicked (MyGUI::Widget* sender);
|
void onRangeButtonClicked (MyGUI::Widget* sender);
|
||||||
void onDeleteButtonClicked (MyGUI::Widget* sender);
|
void onDeleteButtonClicked (MyGUI::Widget* sender);
|
||||||
void onOkButtonClicked (MyGUI::Widget* sender);
|
void onOkButtonClicked (MyGUI::Widget* sender);
|
||||||
void onCancelButtonClicked (MyGUI::Widget* sender);
|
void onCancelButtonClicked (MyGUI::Widget* sender);
|
||||||
|
|
||||||
|
void setMagicEffect(const ESM::MagicEffect* effect);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
ESM::ENAMstruct mEffect;
|
ESM::ENAMstruct mEffect;
|
||||||
};
|
};
|
||||||
|
@ -68,6 +83,17 @@ namespace MWGui
|
||||||
void onBuyButtonClicked (MyGUI::Widget* sender);
|
void onBuyButtonClicked (MyGUI::Widget* sender);
|
||||||
void onAvailableEffectClicked (MyGUI::Widget* sender);
|
void onAvailableEffectClicked (MyGUI::Widget* sender);
|
||||||
|
|
||||||
|
void onAttributeOrSkillCancel();
|
||||||
|
void onSelectAttribute();
|
||||||
|
void onSelectSkill();
|
||||||
|
|
||||||
|
void onEffectAdded(ESM::ENAMstruct effect);
|
||||||
|
void onEffectModified(ESM::ENAMstruct effect);
|
||||||
|
void onEffectRemoved(ESM::ENAMstruct effect);
|
||||||
|
|
||||||
|
void updateEffectsView();
|
||||||
|
|
||||||
|
void onEditEffect(MyGUI::Widget* sender);
|
||||||
|
|
||||||
MyGUI::EditBox* mNameEdit;
|
MyGUI::EditBox* mNameEdit;
|
||||||
MyGUI::TextBox* mMagickaCost;
|
MyGUI::TextBox* mMagickaCost;
|
||||||
|
@ -78,11 +104,17 @@ namespace MWGui
|
||||||
MyGUI::Button* mCancelButton;
|
MyGUI::Button* mCancelButton;
|
||||||
MyGUI::TextBox* mPriceLabel;
|
MyGUI::TextBox* mPriceLabel;
|
||||||
|
|
||||||
|
int mSelectedEffect;
|
||||||
|
|
||||||
EditEffectDialog mAddEffectDialog;
|
EditEffectDialog mAddEffectDialog;
|
||||||
|
|
||||||
SelectAttributeDialog* mSelectAttributeDialog;
|
SelectAttributeDialog* mSelectAttributeDialog;
|
||||||
SelectSkillDialog* mSelectSkillDialog;
|
SelectSkillDialog* mSelectSkillDialog;
|
||||||
|
|
||||||
|
Widgets::MWEffectList* mUsedEffectsList;
|
||||||
|
|
||||||
|
std::vector<ESM::ENAMstruct> mEffects;
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -385,15 +385,12 @@ void MWSpellEffect::setSpellEffect(const SpellEffectParams& params)
|
||||||
|
|
||||||
void MWSpellEffect::updateWidgets()
|
void MWSpellEffect::updateWidgets()
|
||||||
{
|
{
|
||||||
if (!mWindowManager)
|
|
||||||
return;
|
|
||||||
|
|
||||||
const ESMS::ESMStore &store = MWBase::Environment::get().getWorld()->getStore();
|
const ESMS::ESMStore &store = MWBase::Environment::get().getWorld()->getStore();
|
||||||
const ESM::MagicEffect *magicEffect = store.magicEffects.search(mEffectParams.mEffectID);
|
const ESM::MagicEffect *magicEffect = store.magicEffects.search(mEffectParams.mEffectID);
|
||||||
if (!magicEffect)
|
|
||||||
return;
|
assert(magicEffect);
|
||||||
if (mTextWidget)
|
assert(mWindowManager);
|
||||||
{
|
|
||||||
std::string pt = mWindowManager->getGameSettingString("spoint", "");
|
std::string pt = mWindowManager->getGameSettingString("spoint", "");
|
||||||
std::string pts = mWindowManager->getGameSettingString("spoints", "");
|
std::string pts = mWindowManager->getGameSettingString("spoints", "");
|
||||||
std::string to = " " + mWindowManager->getGameSettingString("sTo", "") + " ";
|
std::string to = " " + mWindowManager->getGameSettingString("sTo", "") + " ";
|
||||||
|
@ -402,6 +399,7 @@ void MWSpellEffect::updateWidgets()
|
||||||
|
|
||||||
std::string effectIDStr = ESM::MagicEffect::effectIdToString(mEffectParams.mEffectID);
|
std::string effectIDStr = ESM::MagicEffect::effectIdToString(mEffectParams.mEffectID);
|
||||||
std::string spellLine = mWindowManager->getGameSettingString(effectIDStr, "");
|
std::string spellLine = mWindowManager->getGameSettingString(effectIDStr, "");
|
||||||
|
|
||||||
if (magicEffect->mData.mFlags & ESM::MagicEffect::TargetSkill)
|
if (magicEffect->mData.mFlags & ESM::MagicEffect::TargetSkill)
|
||||||
{
|
{
|
||||||
spellLine += " " + mWindowManager->getGameSettingString(ESM::Skill::sSkillNameIds[mEffectParams.mSkill], "");
|
spellLine += " " + mWindowManager->getGameSettingString(ESM::Skill::sSkillNameIds[mEffectParams.mSkill], "");
|
||||||
|
@ -454,14 +452,11 @@ void MWSpellEffect::updateWidgets()
|
||||||
|
|
||||||
static_cast<MyGUI::TextBox*>(mTextWidget)->setCaption(spellLine);
|
static_cast<MyGUI::TextBox*>(mTextWidget)->setCaption(spellLine);
|
||||||
mRequestedWidth = mTextWidget->getTextSize().width + 24;
|
mRequestedWidth = mTextWidget->getTextSize().width + 24;
|
||||||
}
|
|
||||||
if (mImageWidget)
|
|
||||||
{
|
|
||||||
std::string path = std::string("icons\\") + magicEffect->mIcon;
|
std::string path = std::string("icons\\") + magicEffect->mIcon;
|
||||||
fixTexturePath(path);
|
fixTexturePath(path);
|
||||||
mImageWidget->setImageTexture(path);
|
mImageWidget->setImageTexture(path);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
MWSpellEffect::~MWSpellEffect()
|
MWSpellEffect::~MWSpellEffect()
|
||||||
{
|
{
|
||||||
|
|
|
@ -578,6 +578,7 @@ void WindowManager::onFrame (float frameDuration)
|
||||||
mTradeWindow->checkReferenceAvailable();
|
mTradeWindow->checkReferenceAvailable();
|
||||||
mSpellBuyingWindow->checkReferenceAvailable();
|
mSpellBuyingWindow->checkReferenceAvailable();
|
||||||
mSpellCreationDialog->checkReferenceAvailable();
|
mSpellCreationDialog->checkReferenceAvailable();
|
||||||
|
mEnchantingDialog->checkReferenceAvailable();
|
||||||
mContainerWindow->checkReferenceAvailable();
|
mContainerWindow->checkReferenceAvailable();
|
||||||
mConsole->checkReferenceAvailable();
|
mConsole->checkReferenceAvailable();
|
||||||
}
|
}
|
||||||
|
|
|
@ -19,13 +19,26 @@
|
||||||
</Widget>
|
</Widget>
|
||||||
|
|
||||||
<!-- Item -->
|
<!-- Item -->
|
||||||
<Widget type="AutoSizedTextBox" skin="NormalText" position="12 48 0 24">
|
|
||||||
|
<Widget type="HBox" position="12 48 400 59">
|
||||||
|
<Property key="Spacing" value="8"/>
|
||||||
|
|
||||||
|
<Widget type="AutoSizedTextBox" skin="NormalText">
|
||||||
<Property key="Caption" value="#{sItem}"/>
|
<Property key="Caption" value="#{sItem}"/>
|
||||||
</Widget>
|
</Widget>
|
||||||
|
<Widget type="Button" skin="MW_Box" position="0 0 60 59" name="ItemBox"/>
|
||||||
|
|
||||||
|
<Widget type="Widget" position="0 0 8 0"/>
|
||||||
|
|
||||||
|
<Widget type="AutoSizedTextBox" skin="NormalText">
|
||||||
|
<Property key="Caption" value="#{sSoulGem}"/>
|
||||||
|
</Widget>
|
||||||
|
<Widget type="Button" skin="MW_Box" position="0 0 60 59" name="SoulBox"/>
|
||||||
|
|
||||||
|
</Widget>
|
||||||
|
|
||||||
|
|
||||||
|
<Widget type="TextBox" skin="NormalText" position="320 0 300 24">
|
||||||
<Widget type="TextBox" skin="NormalText" position="280 0 300 24">
|
|
||||||
<Property key="Caption" value="#{sEnchantmentMenu3}:"/>
|
<Property key="Caption" value="#{sEnchantmentMenu3}:"/>
|
||||||
</Widget>
|
</Widget>
|
||||||
<Widget type="TextBox" skin="SandText" position="280 0 258 24" name="Enchantment">
|
<Widget type="TextBox" skin="SandText" position="280 0 258 24" name="Enchantment">
|
||||||
|
@ -34,7 +47,7 @@
|
||||||
</Widget>
|
</Widget>
|
||||||
|
|
||||||
|
|
||||||
<Widget type="TextBox" skin="NormalText" position="280 24 300 24">
|
<Widget type="TextBox" skin="NormalText" position="320 24 300 24">
|
||||||
<Property key="Caption" value="#{sCastCost}:"/>
|
<Property key="Caption" value="#{sCastCost}:"/>
|
||||||
</Widget>
|
</Widget>
|
||||||
<Widget type="TextBox" skin="SandText" position="280 24 258 24" name="CastCost">
|
<Widget type="TextBox" skin="SandText" position="280 24 258 24" name="CastCost">
|
||||||
|
@ -43,7 +56,7 @@
|
||||||
</Widget>
|
</Widget>
|
||||||
|
|
||||||
|
|
||||||
<Widget type="TextBox" skin="NormalText" position="280 48 300 24">
|
<Widget type="TextBox" skin="NormalText" position="320 48 300 24">
|
||||||
<Property key="Caption" value="#{sCharges}"/>
|
<Property key="Caption" value="#{sCharges}"/>
|
||||||
</Widget>
|
</Widget>
|
||||||
<Widget type="TextBox" skin="SandText" position="280 48 258 24" name="Charge">
|
<Widget type="TextBox" skin="SandText" position="280 48 258 24" name="Charge">
|
||||||
|
|
|
@ -48,7 +48,8 @@
|
||||||
<Property key="Caption" value="#{sEffects}"/>
|
<Property key="Caption" value="#{sEffects}"/>
|
||||||
</Widget>
|
</Widget>
|
||||||
<Widget type="Widget" skin="MW_Box" position="226 76 316 269">
|
<Widget type="Widget" skin="MW_Box" position="226 76 316 269">
|
||||||
<Widget type="ScrollView" skin="MW_ScrollView" position="4 4 308 261" name="UsedEffects">
|
<Widget type="ScrollView" skin="MW_ScrollViewH" position="4 4 308 261" name="UsedEffects">
|
||||||
|
<Property key="CanvasAlign" value="Left Top"/>
|
||||||
</Widget>
|
</Widget>
|
||||||
</Widget>
|
</Widget>
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue