diff options
Diffstat (limited to 'src/gui')
30 files changed, 318 insertions, 216 deletions
diff --git a/src/gui/popups/speechbubble.cpp b/src/gui/popups/speechbubble.cpp index 3d0250a78..44699499f 100644 --- a/src/gui/popups/speechbubble.cpp +++ b/src/gui/popups/speechbubble.cpp @@ -25,6 +25,7 @@ #include "gui/font.h" #include "gui/gui.h" +#include "gui/skin.h" #include "gui/viewport.h" #include "gui/widgets/browserbox.h" diff --git a/src/gui/skin.cpp b/src/gui/skin.cpp new file mode 100644 index 000000000..5f7ed2be2 --- /dev/null +++ b/src/gui/skin.cpp @@ -0,0 +1,148 @@ +/* + * Gui Skinning + * Copyright (C) 2008 The Legend of Mazzeroth Development Team + * Copyright (C) 2009 Aethyra Development Team + * Copyright (C) 2009 The Mana World Development Team + * Copyright (C) 2009-2010 The Mana Developers + * Copyright (C) 2011-2014 The ManaPlus Developers + * + * This file is part of The ManaPlus Client. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + */ + +#include "gui/skin.h" + +#include "client.h" + +#include "resources/image.h" + +#include "render/graphics.h" + +#include "utils/delete2.h" + +#include "debug.h" + +Skin::Skin(ImageRect *const restrict skin, + const ImageRect *const restrict images, + const std::string &filePath, const std::string &name, + const int padding, const int titlePadding, + std::map<std::string, int> *restrict const options): + instances(1), + mFilePath(filePath), + mName(name), + mBorder(skin), + mCloseImage(images->grid[0]), + mCloseImageHighlighted(images->grid[1]), + mStickyImageUp(images->grid[2]), + mStickyImageDown(images->grid[3]), + mPadding(padding), + mTitlePadding(titlePadding), + mOptions(options) +{ + if (!mCloseImageHighlighted) + { + mCloseImageHighlighted = mCloseImage; + if (mCloseImageHighlighted) + mCloseImageHighlighted->incRef(); + } +} + +Skin::~Skin() +{ + for (int i = 0; i < 9; i++) + { + if (mBorder && mBorder->grid[i]) + { + mBorder->grid[i]->decRef(); + mBorder->grid[i] = nullptr; + } + } + + if (mCloseImage) + { + mCloseImage->decRef(); + mCloseImage = nullptr; + } + + if (mCloseImageHighlighted) + { + mCloseImageHighlighted->decRef(); + mCloseImageHighlighted = nullptr; + } + + if (mStickyImageUp) + { + mStickyImageUp->decRef(); + mStickyImageUp = nullptr; + } + + if (mStickyImageDown) + { + mStickyImageDown->decRef(); + mStickyImageDown = nullptr; + } + + delete2(mOptions); + delete2(mBorder); +} + +void Skin::updateAlpha(const float minimumOpacityAllowed) +{ + const float alpha = static_cast<float>( + std::max(static_cast<double>(minimumOpacityAllowed), + static_cast<double>(client->getGuiAlpha()))); + + if (mBorder) + { + for (int i = 0; i < 9; i++) + { + if (mBorder->grid[i]) + mBorder->grid[i]->setAlpha(alpha); + } + } + + if (mCloseImage) + mCloseImage->setAlpha(alpha); + if (mCloseImageHighlighted) + mCloseImageHighlighted->setAlpha(alpha); + if (mStickyImageUp) + mStickyImageUp->setAlpha(alpha); + if (mStickyImageDown) + mStickyImageDown->setAlpha(alpha); +} + +int Skin::getMinWidth() const +{ + if (!mBorder || !mBorder->grid[ImageRect::UPPER_LEFT] + || !mBorder->grid[ImageRect::UPPER_RIGHT]) + { + return 1; + } + + return mBorder->grid[ImageRect::UPPER_LEFT]->getWidth() + + mBorder->grid[ImageRect::UPPER_RIGHT]->getWidth(); +} + +int Skin::getMinHeight() const +{ + if (!mBorder || !mBorder->grid[ImageRect::UPPER_LEFT] + || !mBorder->grid[ImageRect::LOWER_LEFT]) + { + return 1; + } + + return mBorder->grid[ImageRect::UPPER_LEFT]->getHeight() + + mBorder->grid[ImageRect::LOWER_LEFT]->getHeight(); +} diff --git a/src/gui/skin.h b/src/gui/skin.h new file mode 100644 index 000000000..7cafd7601 --- /dev/null +++ b/src/gui/skin.h @@ -0,0 +1,136 @@ +/* + * Gui Skinning + * Copyright (C) 2008 The Legend of Mazzeroth Development Team + * Copyright (C) 2009 Aethyra Development Team + * Copyright (C) 2009 The Mana World Development Team + * Copyright (C) 2009-2010 The Mana Developers + * Copyright (C) 2011-2014 The ManaPlus Developers + * + * This file is part of The ManaPlus Client. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + */ + +#ifndef GUI_SKIN_H +#define GUI_SKIN_H + +#include <map> +#include <string> + +#include "localconsts.h" + +class Image; +class ImageRect; + +class Skin final +{ + public: + Skin(ImageRect *const restrict skin, + const ImageRect *const restrict images, + const std::string &filePath, + const std::string &name = "", + const int padding = 3, + const int titlePadding = 4, + std::map<std::string, int> *restrict const options = nullptr); + + A_DELETE_COPY(Skin) + + ~Skin(); + + /** + * Returns the skin's name. Useful for giving a human friendly skin + * name if a dialog for skin selection for a specific window type is + * done. + */ + const std::string &getName() const A_WARN_UNUSED + { return mName; } + + /** + * Returns the skin's xml file path. + */ + const std::string &getFilePath() const A_WARN_UNUSED + { return mFilePath; } + + /** + * Returns the background skin. + */ + const ImageRect &getBorder() const A_WARN_UNUSED + { return *mBorder; } + + /** + * Returns the image used by a close button for this skin. + */ + const Image *getCloseImage(const bool state) const A_WARN_UNUSED + { return state ? mCloseImageHighlighted : mCloseImage; } + + /** + * Returns the image used by a sticky button for this skin. + */ + const Image *getStickyImage(const bool state) const A_WARN_UNUSED + { return state ? mStickyImageDown : mStickyImageUp; } + + /** + * Returns the minimum width which can be used with this skin. + */ + int getMinWidth() const A_WARN_UNUSED; + + /** + * Returns the minimum height which can be used with this skin. + */ + int getMinHeight() const A_WARN_UNUSED; + + /** + * Updates the alpha value of the skin + */ + void updateAlpha(const float minimumOpacityAllowed = 0.0F); + + int getPadding() const A_WARN_UNUSED + { return mPadding; } + + int getTitlePadding() const A_WARN_UNUSED + { return mTitlePadding; } + + int getOption(const std::string &name) const A_WARN_UNUSED + { + if (mOptions->find(name) != mOptions->end()) + return (*mOptions)[name]; + else + return 0; + } + + int getOption(const std::string &name, + const int def) const A_WARN_UNUSED + { + if (mOptions->find(name) != mOptions->end()) + return (*mOptions)[name]; + else + return def; + } + + int instances; + + private: + std::string mFilePath; /**< File name path for the skin */ + std::string mName; /**< Name of the skin to use */ + ImageRect *mBorder; /**< The window border and background */ + Image *mCloseImage; /**< Close Button Image */ + Image *mCloseImageHighlighted; /**< Highlighted close Button Image */ + Image *mStickyImageUp; /**< Sticky Button Image */ + Image *mStickyImageDown; /**< Sticky Button Image */ + int mPadding; + int mTitlePadding; + std::map<std::string, int> *mOptions; +}; + +#endif // GUI_SKIN_H diff --git a/src/gui/theme.cpp b/src/gui/theme.cpp index b42f8c234..0b0744286 100644 --- a/src/gui/theme.cpp +++ b/src/gui/theme.cpp @@ -28,6 +28,8 @@ #include "configuration.h" #include "graphicsmanager.h" +#include "gui/skin.h" + #include "resources/dye.h" #include "resources/image.h" #include "resources/resourcemanager.h" @@ -62,119 +64,6 @@ static void initDefaultThemePath() defaultThemePath = "themes/"; } -Skin::Skin(ImageRect *const restrict skin, - const ImageRect *const restrict images, - const std::string &filePath, const std::string &name, - const int padding, const int titlePadding, - std::map<std::string, int> *restrict const options): - instances(1), - mFilePath(filePath), - mName(name), - mBorder(skin), - mCloseImage(images->grid[0]), - mCloseImageHighlighted(images->grid[1]), - mStickyImageUp(images->grid[2]), - mStickyImageDown(images->grid[3]), - mPadding(padding), - mTitlePadding(titlePadding), - mOptions(options) -{ - if (!mCloseImageHighlighted) - { - mCloseImageHighlighted = mCloseImage; - if (mCloseImageHighlighted) - mCloseImageHighlighted->incRef(); - } -} - -Skin::~Skin() -{ - for (int i = 0; i < 9; i++) - { - if (mBorder && mBorder->grid[i]) - { - mBorder->grid[i]->decRef(); - mBorder->grid[i] = nullptr; - } - } - - if (mCloseImage) - { - mCloseImage->decRef(); - mCloseImage = nullptr; - } - - if (mCloseImageHighlighted) - { - mCloseImageHighlighted->decRef(); - mCloseImageHighlighted = nullptr; - } - - if (mStickyImageUp) - { - mStickyImageUp->decRef(); - mStickyImageUp = nullptr; - } - - if (mStickyImageDown) - { - mStickyImageDown->decRef(); - mStickyImageDown = nullptr; - } - - delete2(mOptions); - delete2(mBorder); -} - -void Skin::updateAlpha(const float minimumOpacityAllowed) -{ - const float alpha = static_cast<float>( - std::max(static_cast<double>(minimumOpacityAllowed), - static_cast<double>(client->getGuiAlpha()))); - - if (mBorder) - { - for (int i = 0; i < 9; i++) - { - if (mBorder->grid[i]) - mBorder->grid[i]->setAlpha(alpha); - } - } - - if (mCloseImage) - mCloseImage->setAlpha(alpha); - if (mCloseImageHighlighted) - mCloseImageHighlighted->setAlpha(alpha); - if (mStickyImageUp) - mStickyImageUp->setAlpha(alpha); - if (mStickyImageDown) - mStickyImageDown->setAlpha(alpha); -} - -int Skin::getMinWidth() const -{ - if (!mBorder || !mBorder->grid[ImageRect::UPPER_LEFT] - || !mBorder->grid[ImageRect::UPPER_RIGHT]) - { - return 1; - } - - return mBorder->grid[ImageRect::UPPER_LEFT]->getWidth() + - mBorder->grid[ImageRect::UPPER_RIGHT]->getWidth(); -} - -int Skin::getMinHeight() const -{ - if (!mBorder || !mBorder->grid[ImageRect::UPPER_LEFT] - || !mBorder->grid[ImageRect::LOWER_LEFT]) - { - return 1; - } - - return mBorder->grid[ImageRect::UPPER_LEFT]->getHeight() + - mBorder->grid[ImageRect::LOWER_LEFT]->getHeight(); -} - Theme::Theme() : Palette(THEME_COLORS_END * THEME_PALETTES), mSkins(), diff --git a/src/gui/theme.h b/src/gui/theme.h index 023918cf0..cd2c8aa4d 100644 --- a/src/gui/theme.h +++ b/src/gui/theme.h @@ -40,6 +40,7 @@ class DyePalette; class Image; class ImageSet; +class Skin; class Theme; const int THEME_PALETTES = 5; @@ -79,106 +80,6 @@ struct ThemeInfo final float guiAlpha; }; -class Skin final -{ - public: - Skin(ImageRect *const restrict skin, - const ImageRect *const restrict images, - const std::string &filePath, - const std::string &name = "", - const int padding = 3, - const int titlePadding = 4, - std::map<std::string, int> *restrict const options = nullptr); - - A_DELETE_COPY(Skin) - - ~Skin(); - - /** - * Returns the skin's name. Useful for giving a human friendly skin - * name if a dialog for skin selection for a specific window type is - * done. - */ - const std::string &getName() const A_WARN_UNUSED - { return mName; } - - /** - * Returns the skin's xml file path. - */ - const std::string &getFilePath() const A_WARN_UNUSED - { return mFilePath; } - - /** - * Returns the background skin. - */ - const ImageRect &getBorder() const A_WARN_UNUSED - { return *mBorder; } - - /** - * Returns the image used by a close button for this skin. - */ - const Image *getCloseImage(const bool state) const A_WARN_UNUSED - { return state ? mCloseImageHighlighted : mCloseImage; } - - /** - * Returns the image used by a sticky button for this skin. - */ - const Image *getStickyImage(const bool state) const A_WARN_UNUSED - { return state ? mStickyImageDown : mStickyImageUp; } - - /** - * Returns the minimum width which can be used with this skin. - */ - int getMinWidth() const A_WARN_UNUSED; - - /** - * Returns the minimum height which can be used with this skin. - */ - int getMinHeight() const A_WARN_UNUSED; - - /** - * Updates the alpha value of the skin - */ - void updateAlpha(const float minimumOpacityAllowed = 0.0F); - - int getPadding() const A_WARN_UNUSED - { return mPadding; } - - int getTitlePadding() const A_WARN_UNUSED - { return mTitlePadding; } - - int getOption(const std::string &name) const A_WARN_UNUSED - { - if (mOptions->find(name) != mOptions->end()) - return (*mOptions)[name]; - else - return 0; - } - - int getOption(const std::string &name, - const int def) const A_WARN_UNUSED - { - if (mOptions->find(name) != mOptions->end()) - return (*mOptions)[name]; - else - return def; - } - - int instances; - - private: - std::string mFilePath; /**< File name path for the skin */ - std::string mName; /**< Name of the skin to use */ - ImageRect *mBorder; /**< The window border and background */ - Image *mCloseImage; /**< Close Button Image */ - Image *mCloseImageHighlighted; /**< Highlighted close Button Image */ - Image *mStickyImageUp; /**< Sticky Button Image */ - Image *mStickyImageDown; /**< Sticky Button Image */ - int mPadding; - int mTitlePadding; - std::map<std::string, int> *mOptions; -}; - class Theme final : public Palette, public ConfigListener { diff --git a/src/gui/widgets/avatarlistbox.cpp b/src/gui/widgets/avatarlistbox.cpp index 130245801..19eb86f44 100644 --- a/src/gui/widgets/avatarlistbox.cpp +++ b/src/gui/widgets/avatarlistbox.cpp @@ -29,6 +29,7 @@ #include "gui/font.h" #include "gui/gui.h" +#include "gui/skin.h" #include "gui/viewport.h" #include "gui/models/avatarlistmodel.h" diff --git a/src/gui/widgets/browserbox.cpp b/src/gui/widgets/browserbox.cpp index 25b5444fc..30b06e266 100644 --- a/src/gui/widgets/browserbox.cpp +++ b/src/gui/widgets/browserbox.cpp @@ -27,6 +27,7 @@ #include "gui/font.h" #include "gui/gui.h" +#include "gui/skin.h" #include "gui/widgets/linkhandler.h" diff --git a/src/gui/widgets/button.cpp b/src/gui/widgets/button.cpp index b1f41e23e..4c806b2b0 100644 --- a/src/gui/widgets/button.cpp +++ b/src/gui/widgets/button.cpp @@ -77,6 +77,7 @@ #include "gui/font.h" #include "gui/gui.h" +#include "gui/skin.h" #include "gui/rect.h" #include "utils/delete2.h" diff --git a/src/gui/widgets/checkbox.cpp b/src/gui/widgets/checkbox.cpp index 765ff13ec..253092539 100644 --- a/src/gui/widgets/checkbox.cpp +++ b/src/gui/widgets/checkbox.cpp @@ -73,6 +73,7 @@ #include "gui/font.h" #include "gui/gui.h" +#include "gui/skin.h" #include "debug.h" diff --git a/src/gui/widgets/colorpage.cpp b/src/gui/widgets/colorpage.cpp index 501b3dea7..42d8f3016 100644 --- a/src/gui/widgets/colorpage.cpp +++ b/src/gui/widgets/colorpage.cpp @@ -23,6 +23,7 @@ #include "gui/models/colormodel.h" #include "gui/font.h" +#include "gui/skin.h" #include "debug.h" diff --git a/src/gui/widgets/desktop.cpp b/src/gui/widgets/desktop.cpp index 3e77a65a5..a1158a59b 100644 --- a/src/gui/widgets/desktop.cpp +++ b/src/gui/widgets/desktop.cpp @@ -24,6 +24,8 @@ #include "configuration.h" #include "main.h" +#include "gui/skin.h" + #include "gui/widgets/browserbox.h" #include "input/inputmanager.h" diff --git a/src/gui/widgets/dropdown.cpp b/src/gui/widgets/dropdown.cpp index 8b636c04d..8de0cdc77 100644 --- a/src/gui/widgets/dropdown.cpp +++ b/src/gui/widgets/dropdown.cpp @@ -28,15 +28,16 @@ #include "input/keydata.h" +#include "gui/font.h" +#include "gui/gui.h" +#include "gui/skin.h" + #include "gui/models/extendedlistmodel.h" #include "gui/widgets/popuplist.h" #include "resources/image.h" -#include "gui/font.h" -#include "gui/gui.h" - #include <algorithm> #include "debug.h" diff --git a/src/gui/widgets/extendedlistbox.cpp b/src/gui/widgets/extendedlistbox.cpp index 89bcc7485..ca58bf95b 100644 --- a/src/gui/widgets/extendedlistbox.cpp +++ b/src/gui/widgets/extendedlistbox.cpp @@ -23,6 +23,7 @@ #include "gui/models/extendedlistmodel.h" #include "gui/font.h" +#include "gui/skin.h" #include "gui/models/listmodel.h" diff --git a/src/gui/widgets/itemcontainer.cpp b/src/gui/widgets/itemcontainer.cpp index 4a944c276..e9d9e09bf 100644 --- a/src/gui/widgets/itemcontainer.cpp +++ b/src/gui/widgets/itemcontainer.cpp @@ -31,6 +31,7 @@ #include "gui/font.h" #include "gui/gui.h" +#include "gui/skin.h" #include "gui/viewport.h" #include "gui/popups/itempopup.h" diff --git a/src/gui/widgets/label.cpp b/src/gui/widgets/label.cpp index c37308a1e..bfdcc3ffd 100644 --- a/src/gui/widgets/label.cpp +++ b/src/gui/widgets/label.cpp @@ -66,6 +66,7 @@ #include "gui/font.h" #include "gui/gui.h" +#include "gui/skin.h" #include "debug.h" diff --git a/src/gui/widgets/listbox.cpp b/src/gui/widgets/listbox.cpp index 341204505..69d5d665f 100644 --- a/src/gui/widgets/listbox.cpp +++ b/src/gui/widgets/listbox.cpp @@ -74,6 +74,7 @@ #include "gui/focushandler.h" #include "gui/font.h" #include "gui/gui.h" +#include "gui/skin.h" #include "gui/models/listmodel.h" diff --git a/src/gui/widgets/passwordfield.cpp b/src/gui/widgets/passwordfield.cpp index 1b562b7f0..27f0bc188 100644 --- a/src/gui/widgets/passwordfield.cpp +++ b/src/gui/widgets/passwordfield.cpp @@ -22,6 +22,8 @@ #include "gui/widgets/passwordfield.h" +#include "gui/skin.h" + #include "debug.h" PasswordField::PasswordField(const Widget2 *const widget, diff --git a/src/gui/widgets/playerbox.cpp b/src/gui/widgets/playerbox.cpp index 6a0fbd607..252f39727 100644 --- a/src/gui/widgets/playerbox.cpp +++ b/src/gui/widgets/playerbox.cpp @@ -27,6 +27,7 @@ #include "being/being.h" #include "gui/gui.h" +#include "gui/skin.h" #include "resources/image.h" diff --git a/src/gui/widgets/popup.cpp b/src/gui/widgets/popup.cpp index 3c10a721f..ff6296d75 100644 --- a/src/gui/widgets/popup.cpp +++ b/src/gui/widgets/popup.cpp @@ -25,6 +25,7 @@ #include "graphicsvertexes.h" +#include "gui/skin.h" #include "gui/viewport.h" #include "utils/delete2.h" diff --git a/src/gui/widgets/progressbar.cpp b/src/gui/widgets/progressbar.cpp index 4c82fe20c..f737f0153 100644 --- a/src/gui/widgets/progressbar.cpp +++ b/src/gui/widgets/progressbar.cpp @@ -27,6 +27,7 @@ #include "gui/font.h" #include "gui/gui.h" +#include "gui/skin.h" #include "utils/delete2.h" diff --git a/src/gui/widgets/radiobutton.cpp b/src/gui/widgets/radiobutton.cpp index 27be9434b..8e122ece6 100644 --- a/src/gui/widgets/radiobutton.cpp +++ b/src/gui/widgets/radiobutton.cpp @@ -73,6 +73,7 @@ #include "gui/font.h" #include "gui/gui.h" +#include "gui/skin.h" #include "debug.h" diff --git a/src/gui/widgets/scrollarea.cpp b/src/gui/widgets/scrollarea.cpp index e006302c7..29d185bac 100644 --- a/src/gui/widgets/scrollarea.cpp +++ b/src/gui/widgets/scrollarea.cpp @@ -69,6 +69,7 @@ #include "graphicsvertexes.h" #include "gui/gui.h" +#include "gui/skin.h" #include "resources/image.h" diff --git a/src/gui/widgets/tabs/tab.cpp b/src/gui/widgets/tabs/tab.cpp index e31bc9ef1..dc063bb45 100644 --- a/src/gui/widgets/tabs/tab.cpp +++ b/src/gui/widgets/tabs/tab.cpp @@ -69,6 +69,7 @@ #include "graphicsvertexes.h" #include "gui/gui.h" +#include "gui/skin.h" #include "gui/widgets/label.h" #include "gui/widgets/tabbedarea.h" diff --git a/src/gui/widgets/textfield.cpp b/src/gui/widgets/textfield.cpp index db194419e..0080a8d22 100644 --- a/src/gui/widgets/textfield.cpp +++ b/src/gui/widgets/textfield.cpp @@ -71,6 +71,7 @@ #include "gui/font.h" #include "gui/gui.h" +#include "gui/skin.h" #include "gui/viewport.h" #include "gui/popups/popupmenu.h" diff --git a/src/gui/widgets/textpreview.cpp b/src/gui/widgets/textpreview.cpp index 6f358e956..c567c5f06 100644 --- a/src/gui/widgets/textpreview.cpp +++ b/src/gui/widgets/textpreview.cpp @@ -26,6 +26,7 @@ #include "gui/font.h" #include "gui/gui.h" +#include "gui/skin.h" #include "debug.h" diff --git a/src/gui/widgets/window.cpp b/src/gui/widgets/window.cpp index c7212314d..7e34476d0 100644 --- a/src/gui/widgets/window.cpp +++ b/src/gui/widgets/window.cpp @@ -75,6 +75,7 @@ #include "gui/focushandler.h" #include "gui/font.h" #include "gui/gui.h" +#include "gui/skin.h" #include "gui/viewport.h" #include "gui/widgets/layout.h" diff --git a/src/gui/windowmenu.cpp b/src/gui/windowmenu.cpp index c3b52ed59..30a517173 100644 --- a/src/gui/windowmenu.cpp +++ b/src/gui/windowmenu.cpp @@ -26,6 +26,7 @@ #include "input/inputmanager.h" +#include "gui/skin.h" #include "gui/viewport.h" #include "gui/popups/textpopup.h" diff --git a/src/gui/windows/chatwindow.cpp b/src/gui/windows/chatwindow.cpp index d6ad291c6..17e8924f5 100644 --- a/src/gui/windows/chatwindow.cpp +++ b/src/gui/windows/chatwindow.cpp @@ -42,6 +42,7 @@ #include "gui/focushandler.h" #include "gui/gui.h" +#include "gui/skin.h" #include "gui/viewport.h" #include "gui/models/colorlistmodel.h" diff --git a/src/gui/windows/ministatuswindow.cpp b/src/gui/windows/ministatuswindow.cpp index d54954e78..d9e6e5479 100644 --- a/src/gui/windows/ministatuswindow.cpp +++ b/src/gui/windows/ministatuswindow.cpp @@ -30,6 +30,7 @@ #include "being/localplayer.h" #include "being/playerinfo.h" +#include "gui/skin.h" #include "gui/viewport.h" #include "gui/popups/textpopup.h" diff --git a/src/gui/windows/skilldialog.cpp b/src/gui/windows/skilldialog.cpp index b082e65d4..77ea9e959 100644 --- a/src/gui/windows/skilldialog.cpp +++ b/src/gui/windows/skilldialog.cpp @@ -31,6 +31,7 @@ #include "being/localplayer.h" #include "gui/font.h" +#include "gui/skin.h" #include "gui/viewport.h" #include "gui/popups/textpopup.h" |