diff options
author | Bjørn Lindeijer <bjorn@lindeijer.nl> | 2009-02-09 23:47:02 +0100 |
---|---|---|
committer | Bjørn Lindeijer <bjorn@lindeijer.nl> | 2009-02-09 23:47:02 +0100 |
commit | fa2f3ac593a792c32095c2e885665ec91bb4019d (patch) | |
tree | f44aee845f0229dfcc6b2ad3c74613e0352f36c2 /src/gui/listbox.cpp | |
parent | 07f7d52f661a74e6d0c780ca53e724651e3dcc48 (diff) | |
parent | 40edf4e91558cffd83d9015a2cf4a16360e27855 (diff) | |
download | mana-client-fa2f3ac593a792c32095c2e885665ec91bb4019d.tar.gz mana-client-fa2f3ac593a792c32095c2e885665ec91bb4019d.tar.bz2 mana-client-fa2f3ac593a792c32095c2e885665ec91bb4019d.tar.xz mana-client-fa2f3ac593a792c32095c2e885665ec91bb4019d.zip |
Merged with Aethyra master as of 2009-02-09
Conflicts:
A lot of files...
Diffstat (limited to 'src/gui/listbox.cpp')
-rw-r--r-- | src/gui/listbox.cpp | 27 |
1 files changed, 19 insertions, 8 deletions
diff --git a/src/gui/listbox.cpp b/src/gui/listbox.cpp index 990a0ade..b63d6424 100644 --- a/src/gui/listbox.cpp +++ b/src/gui/listbox.cpp @@ -22,10 +22,14 @@ #include <guichan/font.hpp> #include <guichan/graphics.hpp> #include <guichan/listmodel.hpp> -#include <guichan/mouseinput.hpp> +#include "colour.h" #include "listbox.h" +#include "../configuration.h" + +float ListBox::mAlpha = config.getValue("guialpha", 0.8); + ListBox::ListBox(gcn::ListModel *listModel): gcn::ListBox(listModel) { @@ -36,21 +40,28 @@ void ListBox::draw(gcn::Graphics *graphics) if (!mListModel) return; - graphics->setColor(gcn::Color(235, 200, 115)); + if (config.getValue("guialpha", 0.8) != mAlpha) + mAlpha = config.getValue("guialpha", 0.8); + + bool valid; + const int red = (textColour->getColour('H', valid) >> 16) & 0xFF; + const int green = (textColour->getColour('H', valid) >> 8) & 0xFF; + const int blue = textColour->getColour('H', valid) & 0xFF; + const int alpha = mAlpha * 255; + + graphics->setColor(gcn::Color(red, green, blue, alpha)); graphics->setFont(getFont()); - int fontHeight = getFont()->getHeight(); + const int fontHeight = getFont()->getHeight(); // Draw rectangle below the selected list element - if (mSelected >= 0) { + if (mSelected >= 0) graphics->fillRectangle(gcn::Rectangle(0, fontHeight * mSelected, getWidth(), fontHeight)); - } // Draw the list elements - graphics->setColor(gcn::Color(0, 0, 0)); - for (int i = 0, y = 0; - i < mListModel->getNumberOfElements(); + graphics->setColor(gcn::Color(0, 0, 0, 255)); + for (int i = 0, y = 0; i < mListModel->getNumberOfElements(); ++i, y += fontHeight) { graphics->drawText(mListModel->getElementAt(i), 1, y); |