summaryrefslogtreecommitdiff
path: root/src/gui
diff options
context:
space:
mode:
Diffstat (limited to 'src/gui')
-rw-r--r--src/gui/gui.cpp4
-rw-r--r--src/gui/popups/speechbubble.h4
-rw-r--r--src/gui/theme.h22
-rw-r--r--src/gui/widgets/textpreview.cpp2
-rw-r--r--src/gui/widgets/widget2.h8
-rw-r--r--src/gui/windows/inventorywindow.cpp8
-rw-r--r--src/gui/windows/ministatuswindow.cpp13
-rw-r--r--src/gui/windows/statuswindow.cpp37
-rw-r--r--src/gui/windows/statuswindow.h6
9 files changed, 42 insertions, 62 deletions
diff --git a/src/gui/gui.cpp b/src/gui/gui.cpp
index b17ae3ba8..3805b3968 100644
--- a/src/gui/gui.cpp
+++ b/src/gui/gui.cpp
@@ -162,8 +162,8 @@ Gui::Gui() :
mLastMouseRealY(0),
#endif
mFocusListeners(),
- mForegroundColor(Theme::getThemeColor(Theme::TEXT)),
- mForegroundColor2(Theme::getThemeColor(Theme::TEXT_OUTLINE)),
+ mForegroundColor(theme->getColor(Theme::TEXT, 255)),
+ mForegroundColor2(theme->getColor(Theme::TEXT_OUTLINE, 255)),
mTime(0),
mCustomCursor(false),
mDoubleClick(true)
diff --git a/src/gui/popups/speechbubble.h b/src/gui/popups/speechbubble.h
index 1bc5385a4..fe5cf1bfc 100644
--- a/src/gui/popups/speechbubble.h
+++ b/src/gui/popups/speechbubble.h
@@ -48,9 +48,9 @@ class SpeechBubble final : public Popup
*/
void setCaption(const std::string &name,
const Color *const color1 =
- &Theme::getThemeColor(Theme::BUBBLE_NAME),
+ &theme->getColor(Theme::BUBBLE_NAME, 255),
const Color *const color2 =
- &Theme::getThemeColor(Theme::BUBBLE_NAME_OUTLINE));
+ &theme->getColor(Theme::BUBBLE_NAME_OUTLINE, 255));
/**
* Sets the text to be displayed.
diff --git a/src/gui/theme.h b/src/gui/theme.h
index 5f902e206..c0933f035 100644
--- a/src/gui/theme.h
+++ b/src/gui/theme.h
@@ -444,28 +444,6 @@ class Theme final : public Palette, public ConfigListener
THEME_PROG_END
};
- /**
- * Gets the color associated with the type. Sets the alpha channel
- * before returning.
- *
- * @param type the color type requested
- * @param alpha alpha channel to use
- *
- * @return the requested color
- */
- inline static const Color &getThemeColor(const int type,
- const int alpha = 255)
- A_WARN_UNUSED
- { return theme->getColor(type, alpha); }
-
- static const Color &getThemeCharColor(const signed char c,
- bool &valid) A_WARN_UNUSED
- { return theme->getCharColor(c, valid); }
-
- static int getThemeIdByChar(const signed char c,
- bool &valid) A_WARN_UNUSED
- { return theme->getIdByChar(c, valid); }
-
static Color getProgressColor(const int type,
const float progress) A_WARN_UNUSED;
diff --git a/src/gui/widgets/textpreview.cpp b/src/gui/widgets/textpreview.cpp
index 45e71b800..ff0a647b8 100644
--- a/src/gui/widgets/textpreview.cpp
+++ b/src/gui/widgets/textpreview.cpp
@@ -116,7 +116,7 @@ void TextPreview::draw(Graphics* graphics)
Color(mTextColor2->r, mTextColor2->g, mTextColor2->b, alpha));
if (mOutline && mTextColor != mTextColor2)
- graphics->setColor2(Theme::getThemeColor(Theme::OUTLINE));
+ graphics->setColor2(getThemeColor(Theme::OUTLINE, 255));
mFont->drawString(graphics, mText, mPadding + 1, mPadding + 1);
BLOCK_END("TextPreview::draw")
diff --git a/src/gui/widgets/widget2.h b/src/gui/widgets/widget2.h
index ff565815f..2d73418ba 100644
--- a/src/gui/widgets/widget2.h
+++ b/src/gui/widgets/widget2.h
@@ -36,16 +36,18 @@ class Widget2
const int alpha = 255)
const A_WARN_UNUSED
{
- return Theme::getThemeColor(mPaletteOffset + type, alpha);
+ return theme->getColor(mPaletteOffset + type, alpha);
}
inline const Color &getThemeCharColor(const signed char c,
bool &valid)
const A_WARN_UNUSED
{
- const int colorId = Theme::getThemeIdByChar(c, valid);
+ if (!theme)
+ return Palette::BLACK;
+ const int colorId = theme->getIdByChar(c, valid);;
if (valid)
- return Theme::getThemeColor(mPaletteOffset + colorId);
+ return theme->getColor(mPaletteOffset + colorId, 255);
else
return Palette::BLACK;
}
diff --git a/src/gui/windows/inventorywindow.cpp b/src/gui/windows/inventorywindow.cpp
index 92b21dfd1..b9bdf6ad9 100644
--- a/src/gui/windows/inventorywindow.cpp
+++ b/src/gui/windows/inventorywindow.cpp
@@ -98,8 +98,8 @@ InventoryWindow::InventoryWindow(Inventory *const inventory):
mCompactMode(false)
{
mTextPopup->postInit();
- mSlotsBar->setColor(Theme::getThemeColor(Theme::SLOTS_BAR),
- Theme::getThemeColor(Theme::SLOTS_BAR_OUTLINE));
+ mSlotsBar->setColor(getThemeColor(Theme::SLOTS_BAR),
+ getThemeColor(Theme::SLOTS_BAR_OUTLINE));
if (inventory)
{
@@ -194,8 +194,8 @@ InventoryWindow::InventoryWindow(Inventory *const inventory):
mEquipmentButton = new Button(this, _("Equipment"), "equipment", this);
mWeightBar = new ProgressBar(this, 0.0F, 100, 0, Theme::PROG_WEIGHT,
"weightprogressbar.xml", "weightprogressbar_fill.xml");
- mWeightBar->setColor(Theme::getThemeColor(Theme::WEIGHT_BAR),
- Theme::getThemeColor(Theme::WEIGHT_BAR_OUTLINE));
+ mWeightBar->setColor(getThemeColor(Theme::WEIGHT_BAR),
+ getThemeColor(Theme::WEIGHT_BAR_OUTLINE));
place(0, 0, mWeightBar, 4);
mSlotsBarCell = &place(4, 0, mSlotsBar, 5);
diff --git a/src/gui/windows/ministatuswindow.cpp b/src/gui/windows/ministatuswindow.cpp
index 226132652..939bfb619 100644
--- a/src/gui/windows/ministatuswindow.cpp
+++ b/src/gui/windows/ministatuswindow.cpp
@@ -114,8 +114,8 @@ MiniStatusWindow::MiniStatusWindow() :
StatusWindow::updateHPBar(mHpBar);
- if (Net::getGameHandler()->canUseMagicBar())
- StatusWindow::updateMPBar(mMpBar);
+ if (Net::getGameHandler()->canUseMagicBar() && statusWindow)
+ statusWindow->updateMPBar(mMpBar);
const int job = Net::getPlayerHandler()->getJobLocation()
&& serverConfig.getValueBool("showJob", true);
@@ -183,8 +183,7 @@ ProgressBar *MiniStatusWindow::createBar(const float progress,
progress, width, height, backColor, skin, skinFill);
bar->setActionEventId(name);
bar->setId(description);
- bar->setColor(Theme::getThemeColor(textColor),
- Theme::getThemeColor(textColor + 1));
+ bar->setColor(getThemeColor(textColor), getThemeColor(textColor + 1));
mBars.push_back(bar);
mBarNames[name] = bar;
return bar;
@@ -264,7 +263,7 @@ void MiniStatusWindow::processEvent(const Channels channel A_UNUSED,
}
else if (id == PlayerInfo::MP || id == PlayerInfo::MAX_MP)
{
- StatusWindow::updateMPBar(mMpBar);
+ statusWindow->updateMPBar(mMpBar);
}
else if (id == PlayerInfo::EXP || id == PlayerInfo::EXP_NEEDED)
{
@@ -282,14 +281,14 @@ void MiniStatusWindow::processEvent(const Channels channel A_UNUSED,
}
else if (event.getName() == EVENT_UPDATESTAT)
{
- StatusWindow::updateMPBar(mMpBar);
+ statusWindow->updateMPBar(mMpBar);
StatusWindow::updateJobBar(mJobBar);
}
}
void MiniStatusWindow::updateStatus()
{
- StatusWindow::updateStatusBar(mStatusBar);
+ statusWindow->updateStatusBar(mStatusBar);
if (mStatusPopup && mStatusPopup->isPopupVisible())
mStatusPopup->update();
}
diff --git a/src/gui/windows/statuswindow.cpp b/src/gui/windows/statuswindow.cpp
index 05172c9b3..7fb4496cc 100644
--- a/src/gui/windows/statuswindow.cpp
+++ b/src/gui/windows/statuswindow.cpp
@@ -193,16 +193,16 @@ StatusWindow::StatusWindow() :
mHpBar = new ProgressBar(this, static_cast<float>(PlayerInfo::getAttribute(
PlayerInfo::HP)) / static_cast<float>(max), 80, 0, Theme::PROG_HP,
"hpprogressbar.xml", "hpprogressbar_fill.xml");
- mHpBar->setColor(Theme::getThemeColor(Theme::HP_BAR),
- Theme::getThemeColor(Theme::HP_BAR_OUTLINE));
+ mHpBar->setColor(getThemeColor(Theme::HP_BAR),
+ getThemeColor(Theme::HP_BAR_OUTLINE));
max = PlayerInfo::getAttribute(PlayerInfo::EXP_NEEDED);
mXpBar = new ProgressBar(this, max ?
static_cast<float>(PlayerInfo::getAttribute(PlayerInfo::EXP))
/ static_cast<float>(max) : static_cast<float>(0), 80, 0,
Theme::PROG_EXP, "xpprogressbar.xml", "xpprogressbar_fill.xml");
- mXpBar->setColor(Theme::getThemeColor(Theme::XP_BAR),
- Theme::getThemeColor(Theme::XP_BAR_OUTLINE));
+ mXpBar->setColor(getThemeColor(Theme::XP_BAR),
+ getThemeColor(Theme::XP_BAR_OUTLINE));
const bool magicBar = Net::getGameHandler()->canUseMagicBar();
const int job = Net::getPlayerHandler()->getJobLocation()
@@ -222,13 +222,13 @@ StatusWindow::StatusWindow() :
useMagic ? "mpprogressbar_fill.xml" : "nompprogressbar_fill.xml");
if (useMagic)
{
- mMpBar->setColor(Theme::getThemeColor(Theme::MP_BAR),
- Theme::getThemeColor(Theme::MP_BAR_OUTLINE));
+ mMpBar->setColor(getThemeColor(Theme::MP_BAR),
+ getThemeColor(Theme::MP_BAR_OUTLINE));
}
else
{
- mMpBar->setColor(Theme::getThemeColor(Theme::NO_MP_BAR),
- Theme::getThemeColor(Theme::NO_MP_BAR_OUTLINE));
+ mMpBar->setColor(getThemeColor(Theme::NO_MP_BAR),
+ getThemeColor(Theme::NO_MP_BAR_OUTLINE));
}
}
else
@@ -260,8 +260,8 @@ StatusWindow::StatusWindow() :
mJobLabel = new Label(this, _("Job:"));
mJobBar = new ProgressBar(this, 0.0F, 80, 0, Theme::PROG_JOB,
"jobprogressbar.xml", "jobprogressbar_fill.xml");
- mJobBar->setColor(Theme::getThemeColor(Theme::JOB_BAR),
- Theme::getThemeColor(Theme::JOB_BAR_OUTLINE));
+ mJobBar->setColor(getThemeColor(Theme::JOB_BAR),
+ getThemeColor(Theme::JOB_BAR_OUTLINE));
place(3, 0, mJobLvlLabel, 3);
place(5, 2, mJobLabel).setPadding(3);
@@ -524,7 +524,8 @@ void StatusWindow::updateHPBar(ProgressBar *const bar, const bool showMax)
bar->setProgress(prog);
}
-void StatusWindow::updateMPBar(ProgressBar *const bar, const bool showMax)
+void StatusWindow::updateMPBar(ProgressBar *const bar,
+ const bool showMax) const
{
if (!bar)
return;
@@ -542,14 +543,14 @@ void StatusWindow::updateMPBar(ProgressBar *const bar, const bool showMax)
if (Net::getPlayerHandler()->canUseMagic())
{
- bar->setColor(Theme::getThemeColor(Theme::MP_BAR),
- Theme::getThemeColor(Theme::MP_BAR_OUTLINE));
+ bar->setColor(getThemeColor(Theme::MP_BAR),
+ getThemeColor(Theme::MP_BAR_OUTLINE));
bar->setProgressPalette(Theme::PROG_MP);
}
else
{
- bar->setColor(Theme::getThemeColor(Theme::NO_MP_BAR),
- Theme::getThemeColor(Theme::NO_MP_BAR_OUTLINE));
+ bar->setColor(getThemeColor(Theme::NO_MP_BAR),
+ getThemeColor(Theme::NO_MP_BAR_OUTLINE));
bar->setProgressPalette(Theme::PROG_NO_MP);
}
@@ -715,7 +716,7 @@ std::string StatusWindow::translateLetter2(std::string letters)
}
void StatusWindow::updateStatusBar(ProgressBar *const bar,
- const bool percent A_UNUSED)
+ const bool percent A_UNUSED) const
{
if (!player_node || !viewport)
return;
@@ -741,9 +742,9 @@ void StatusWindow::updateStatusBar(ProgressBar *const bar,
bar->setProgress(50);
if (player_node->getDisableGameModifiers())
- bar->setBackgroundColor(Theme::getThemeColor(Theme::STATUSBAR_ON));
+ bar->setBackgroundColor(getThemeColor(Theme::STATUSBAR_ON));
else
- bar->setBackgroundColor(Theme::getThemeColor(Theme::STATUSBAR_OFF));
+ bar->setBackgroundColor(getThemeColor(Theme::STATUSBAR_OFF));
}
void StatusWindow::action(const ActionEvent &event)
diff --git a/src/gui/windows/statuswindow.h b/src/gui/windows/statuswindow.h
index 3b171a25e..35bba74cd 100644
--- a/src/gui/windows/statuswindow.h
+++ b/src/gui/windows/statuswindow.h
@@ -66,7 +66,7 @@ class StatusWindow final : public Window,
static void updateHPBar(ProgressBar *const bar,
const bool showMax = false);
- static void updateMPBar(ProgressBar *bar, const bool showMax = false);
+ void updateMPBar(ProgressBar *bar, const bool showMax = false) const;
static void updateJobBar(ProgressBar *const bar,
const bool percent = true);
static void updateXPBar(ProgressBar *const bar,
@@ -75,8 +75,8 @@ class StatusWindow final : public Window,
static void updateInvSlotsBar(ProgressBar *const bar);
static void updateMoneyBar(ProgressBar *const bar);
static void updateArrowsBar(ProgressBar *const bar);
- static void updateStatusBar(ProgressBar *const bar,
- const bool percent = true);
+ void updateStatusBar(ProgressBar *const bar,
+ const bool percent = true) const;
static void updateProgressBar(ProgressBar *const bar, const int value,
const int max, const bool percent);
static void updateProgressBar(ProgressBar *const bar,