]> Dogcows Code - chaz/openbox/blobdiff - otk/focuswidget.cc
rm an old stdio include
[chaz/openbox] / otk / focuswidget.cc
index 22dd8757d5b6927e0b3f3bc7d04d97bed61e3585..e3973dc233d81b40b1607114c1513a54187ce322 100644 (file)
@@ -1,66 +1,64 @@
+// -*- mode: C++; indent-tabs-mode: nil; c-basic-offset: 2; -*-
+
+#ifdef HAVE_CONFIG_H
+# include "../config.h"
+#endif
+
 #include "focuswidget.hh"
 
 namespace otk {
 
-OtkFocusWidget::OtkFocusWidget(OtkWidget *parent, Direction direction)
-  : OtkWidget(parent, direction), _unfocus_texture(0), _focused(true)
+FocusWidget::FocusWidget(Widget *parent, Direction direction)
+  : Widget(parent, direction), _unfocus_texture(0), _unfocus_bcolor(0)
 {
-  _focus_texture = parent->getTexture();
+  _focused = true;
+  _focus_texture = parent->texture();
+  _focus_bcolor = parent->borderColor();
 }
 
-OtkFocusWidget::OtkFocusWidget(Style *style, Direction direction,
-                               Cursor cursor, int bevel_width)
-  : OtkWidget(style, direction, cursor, bevel_width),
-    _unfocus_texture(0), _focused(true)
+FocusWidget::~FocusWidget()
 {
 }
 
-void OtkFocusWidget::focus(void)
+
+void FocusWidget::focus(void)
 {
   if (_focused)
     return;
 
-  assert(_focus_texture);
-  OtkWidget::setTexture(_focus_texture);
-  OtkWidget::update();
-
-  OtkWidget::OtkWidgetList children = OtkWidget::getChildren();
+  Widget::focus();
 
-  OtkWidget::OtkWidgetList::iterator it = children.begin(),
-    end = children.end();
+  if (_focus_bcolor)
+    Widget::setBorderColor(_focus_bcolor);
 
-  OtkFocusWidget *tmp = 0;
-  for (; it != end; ++it) {
-    tmp = dynamic_cast<OtkFocusWidget*>(*it);
-    if (tmp) tmp->focus();
-  }
+  Widget::setTexture(_focus_texture);
+  update();
 }
 
-void OtkFocusWidget::unfocus(void)
+void FocusWidget::unfocus(void)
 {
-  if (! _focused)
+  if (!_focused)
     return;
 
-  assert(_unfocus_texture);
-  OtkWidget::setTexture(_unfocus_texture);
-  OtkWidget::update();
+  Widget::unfocus();
 
-  OtkWidget::OtkWidgetList children = OtkWidget::getChildren();
+  if (_unfocus_bcolor)
+    Widget::setBorderColor(_unfocus_bcolor);
 
-  OtkWidget::OtkWidgetList::iterator it = children.begin(),
-    end = children.end();
-
-  OtkFocusWidget *tmp = 0;
-  for (; it != end; ++it) {
-    tmp = dynamic_cast<OtkFocusWidget*>(*it);
-    if (tmp) tmp->unfocus();
-  }
+  Widget::setTexture(_unfocus_texture);
+  update();
 }
 
-void OtkFocusWidget::setTexture(BTexture *texture)
+void FocusWidget::setTexture(RenderTexture *texture)
 {
-  OtkWidget::setTexture(texture);
+  Widget::setTexture(texture);
   _focus_texture = texture;
 }
 
+void FocusWidget::setBorderColor(const RenderColor *color)
+{
+  Widget::setBorderColor(color);
+  _focus_bcolor = color;
+}
+
 }
This page took 0.02144 seconds and 4 git commands to generate.