summaryrefslogtreecommitdiff
path: root/src/gui/widgets/tab.cpp
diff options
context:
space:
mode:
authorDavid Athay <ko2fan@gmail.com>2009-01-28 11:47:05 +0000
committerIra Rice <irarice@gmail.com>2009-01-30 18:11:51 -0700
commit5b47d0933dcfb6e898ccfa56efe53eb53b7d30cb (patch)
treeace4861b718cd58394c02f30afa0b9350825c35d /src/gui/widgets/tab.cpp
parent202280724138614924e473a693dc974929ef5836 (diff)
downloadMana-5b47d0933dcfb6e898ccfa56efe53eb53b7d30cb.tar.gz
Mana-5b47d0933dcfb6e898ccfa56efe53eb53b7d30cb.tar.bz2
Mana-5b47d0933dcfb6e898ccfa56efe53eb53b7d30cb.tar.xz
Mana-5b47d0933dcfb6e898ccfa56efe53eb53b7d30cb.zip
Added highlighting ability to tabs.
Diffstat (limited to 'src/gui/widgets/tab.cpp')
-rw-r--r--src/gui/widgets/tab.cpp30
1 files changed, 22 insertions, 8 deletions
diff --git a/src/gui/widgets/tab.cpp b/src/gui/widgets/tab.cpp
index 6f7f497a..5465b431 100644
--- a/src/gui/widgets/tab.cpp
+++ b/src/gui/widgets/tab.cpp
@@ -21,8 +21,9 @@
#include <algorithm>
-#include "tab.h"
+#include <guichan/widgets/label.hpp>
+#include "tab.h"
#include "tabbedarea.h"
#include "../../configuration.h"
@@ -81,6 +82,7 @@ Tab::~Tab()
void Tab::init()
{
setFrameSize(0);
+ mHighlighted = false;
if (mInstances == 0)
{
@@ -112,16 +114,23 @@ void Tab::init()
void Tab::draw(gcn::Graphics *graphics)
{
- int mode;
+ int mode = TAB_STANDARD;
// check which type of tab to draw
- if (mTabbedArea && mTabbedArea->isTabSelected(this))
- {
- mode = TAB_SELECTED;
- }
- else
+ if (mTabbedArea)
{
- mode = TAB_STANDARD;
+ if(mTabbedArea->isTabSelected(this))
+ {
+ mode = TAB_SELECTED;
+ // if tab is selected, it doesnt need to highlight activity
+ mLabel->setForegroundColor(gcn::Color(0, 0, 0));
+ mHighlighted = false;
+ }
+ else if (mHighlighted)
+ {
+ mode = TAB_HIGHLIGHTED;
+ mLabel->setForegroundColor(gcn::Color(255, 0, 0));
+ }
}
if (config.getValue("guialpha", 0.8) != mAlpha)
@@ -141,3 +150,8 @@ void Tab::draw(gcn::Graphics *graphics)
// draw label
drawChildren(graphics);
}
+
+void Tab::setHighlighted(bool high)
+{
+ mHighlighted = high;
+}