Project::OSiRiON - Git repositories
Project::OSiRiON
News . About . Screenshots . Downloads . Forum . Wiki . Tracker . Git
summaryrefslogtreecommitdiff
path: root/src/ui
diff options
context:
space:
mode:
Diffstat (limited to 'src/ui')
-rw-r--r--src/ui/iconbutton.cc17
-rw-r--r--src/ui/iconbutton.h24
-rw-r--r--src/ui/widget.cc1
-rw-r--r--src/ui/widget.h34
4 files changed, 32 insertions, 44 deletions
diff --git a/src/ui/iconbutton.cc b/src/ui/iconbutton.cc
index 87203ee..204918e 100644
--- a/src/ui/iconbutton.cc
+++ b/src/ui/iconbutton.cc
@@ -24,7 +24,7 @@ IconButton::IconButton(Widget *parent, const char *icon, const char *command) :
set_border(false);
set_command(command);
set_icon(icon);
- iconbutton_enabled = true;
+ set_highlight(false);
}
IconButton::~IconButton()
@@ -58,19 +58,14 @@ void IconButton::set_icon(const char *icon)
iconbutton_icon.clear();
}
-void IconButton::set_icon(const std::string &icon)
+void IconButton::set_highlight(const bool highlight)
{
- iconbutton_icon.assign(icon);
+ iconbutton_highlight = highlight;
}
-void IconButton::enable(bool enabled)
-{
- iconbutton_enabled = enabled;
-}
-
-void IconButton::disable(bool disabled)
+void IconButton::set_icon(const std::string &icon)
{
- iconbutton_enabled = !disabled;
+ iconbutton_icon.assign(icon);
}
void IconButton::draw()
@@ -80,7 +75,7 @@ void IconButton::draw()
if (disabled()) {
Paint::set_color(palette()->disabled());
- } else if (has_mouse_focus()) {
+ } else if (highlight() || has_mouse_focus()) {
Paint::set_color(palette()->highlight());
} else {
Paint::set_color(palette()->foreground());
diff --git a/src/ui/iconbutton.h b/src/ui/iconbutton.h
index 37d1c7b..c9a7c5b 100644
--- a/src/ui/iconbutton.h
+++ b/src/ui/iconbutton.h
@@ -28,22 +28,11 @@ public:
return iconbutton_icon;
}
- /// enabled or disabled
- inline const bool enabled() const {
- return iconbutton_enabled;
+ /// highlight state
+ inline const bool highlight() const {
+ return iconbutton_highlight;
}
-
- /// enabled or disabled
- inline const bool disabled() const {
- return !iconbutton_enabled;
- }
-
- /// enable or disable the button
- void enable(bool enabled = true);
-
- /// enable or disable the button
- void disable(bool disabled = true);
-
+
/// set the command this button will execute
void set_command(const std::string &command);
@@ -56,6 +45,9 @@ public:
/// set the icon texture
void set_icon(const char *icon);
+ /// set the highlight state
+ void set_highlight(const bool highlight);
+
/// print button description
virtual void print(const size_t indent) const;
@@ -78,7 +70,7 @@ protected:
private:
std::string iconbutton_command;
std::string iconbutton_icon;
- bool iconbutton_enabled;
+ bool iconbutton_highlight;
};
}
diff --git a/src/ui/widget.cc b/src/ui/widget.cc
index 2f35185..f663cc6 100644
--- a/src/ui/widget.cc
+++ b/src/ui/widget.cc
@@ -188,6 +188,7 @@ void Widget::set_enabled(const bool enabled)
else
disable();
}
+
void Widget::set_border(const bool border)
{
widget_border = border;
diff --git a/src/ui/widget.h b/src/ui/widget.h
index 8b61bc1..530af05 100644
--- a/src/ui/widget.h
+++ b/src/ui/widget.h
@@ -57,7 +57,7 @@ public:
/**
* @see location()
*/
- inline float left() const {
+ inline const float left() const {
return widget_location.x();
}
@@ -66,7 +66,7 @@ public:
* @see location()
* @see size()
*/
- inline float right() const {
+ inline const float right() const {
return widget_location.x() + widget_size.width();
}
@@ -74,7 +74,7 @@ public:
/**
* @see location()
*/
- inline float top() const {
+ inline const float top() const {
return widget_location.y();
}
@@ -83,7 +83,7 @@ public:
* @see location()
* @see size()
*/
- inline float bottom() const {
+ inline const float bottom() const {
return widget_location.y() + widget_size.height();
}
@@ -91,7 +91,7 @@ public:
/**
* @see size()
*/
- inline float width() const {
+ inline const float width() const {
return widget_size.width();
}
@@ -99,7 +99,7 @@ public:
/**
* @see size()
*/
- inline float height() const {
+ inline const float height() const {
return widget_size.height();
}
@@ -109,32 +109,32 @@ public:
}
/// true if this widget will draw a background
- inline bool background() const {
+ inline const bool background() const {
return widget_background;
}
/// true if this widget will draw a border
- inline bool border() const {
+ inline const bool border() const {
return widget_border;
}
/// true if this widget is visible
- inline bool visible() const {
+ inline const bool visible() const {
return widget_visible;
}
/// true if this widget is not visible
- inline bool hidden() const {
+ inline const bool hidden() const {
return !widget_visible;
}
/// true if the widget is enabled
- inline bool enabled() const {
+ inline const bool enabled() const {
return widget_enabled;
}
/// true if the widget is disabled
- inline bool disabled() const {
+ inline const bool disabled() const {
return !widget_enabled;
}
@@ -170,12 +170,12 @@ public:
/// set visibility
void set_visible(const bool visible = true);
- /// disable the widget
- virtual void disable();
-
- /// enable the widget
+ /// enable or disable the widget
virtual void enable();
-
+
+ /// enable or disable the widget
+ virtual void disable();
+
///set enabled or disabled state
void set_enabled(const bool enabled = true);