]> Dogcows Code - chaz/openbox/blobdiff - src/bbwindow.cc
more layout fixes for the decoration elements
[chaz/openbox] / src / bbwindow.cc
index 64a6b25a5c80535037fa8f9f8d59a3c645787d1e..82c31aa34a56e2f11bf17b8243c0e47b8193811a 100644 (file)
@@ -28,10 +28,12 @@ extern "C" {
 #include "gccache.hh"
 #include "image.hh"
 #include "screen.hh"
-#include "util.hh"
 #include "bbwindow.hh"
 #include "workspace.hh"
 
+#include "otk/util.hh"
+#include "otk/style.hh"
+
 using std::string;
 using std::abs;
 
@@ -94,7 +96,7 @@ BlackboxWindow::BlackboxWindow(Blackbox *b, Window w, BScreen *s) {
     flags.skip_pager = flags.fullscreen = False;
   flags.maximized = 0;
 
-  blackbox_attrib.workspace = window_number = BSENTINEL;
+  blackbox_attrib.workspace = window_number = otk::BSENTINEL;
 
   blackbox_attrib.flags = blackbox_attrib.attrib = blackbox_attrib.stack = 0l;
   blackbox_attrib.decoration = DecorNormal;
@@ -262,7 +264,7 @@ BlackboxWindow::BlackboxWindow(Blackbox *b, Window w, BScreen *s) {
   XUngrabServer(otk::OBDisplay::display);
 
 #ifdef    SHAPE
-  if (blackbox->hasShapeExtensions() && flags.shaped)
+  if (otk::OBDisplay::shape() && flags.shaped)
     configureShape();
 #endif // SHAPE
 
@@ -509,7 +511,7 @@ void BlackboxWindow::associateClientWindow(void) {
   XMapSubwindows(otk::OBDisplay::display, frame.plate);
 
 #ifdef    SHAPE
-  if (blackbox->hasShapeExtensions()) {
+  if (otk::OBDisplay::shape()) {
     XShapeSelectInput(otk::OBDisplay::display, client.window,
                       ShapeNotifyMask);
 
@@ -1049,8 +1051,9 @@ void BlackboxWindow::positionWindows(void) {
 void BlackboxWindow::updateStrut(void) {
   unsigned long num = 4;
   unsigned long *data;
-  if (! xatom->getValue(client.window, XAtom::net_wm_strut, XAtom::cardinal,
-                        num, &data))
+  if (! xatom->get(client.window, otk::OBProperty::net_wm_strut,
+                   otk::OBProperty::Atom_Cardinal,
+                   &num, &data))
     return;
  
   if (num == 4) {
@@ -1071,27 +1074,28 @@ bool BlackboxWindow::getWindowType(void) {
 
   unsigned long *val;
   unsigned long num = (unsigned) -1;
-  if (xatom->getValue(client.window, XAtom::net_wm_window_type, XAtom::atom,
-                        num, &val)) {
+  if (xatom->get(client.window, otk::OBProperty::net_wm_window_type,
+                 otk::OBProperty::Atom_Atom,
+                 &num, &val)) {
     for (unsigned long i = 0; i < num; ++i) {
-      if (val[i] == xatom->getAtom(XAtom::net_wm_window_type_desktop))
+      if (val[i] == xatom->atom(otk::OBProperty::net_wm_window_type_desktop))
         window_type = Type_Desktop;
-      else if (val[i] == xatom->getAtom(XAtom::net_wm_window_type_dock))
+      else if (val[i] == xatom->atom(otk::OBProperty::net_wm_window_type_dock))
         window_type = Type_Dock;
-      else if (val[i] == xatom->getAtom(XAtom::net_wm_window_type_toolbar))
+      else if (val[i] == xatom->atom(otk::OBProperty::net_wm_window_type_toolbar))
         window_type = Type_Toolbar;
-      else if (val[i] == xatom->getAtom(XAtom::net_wm_window_type_menu))
+      else if (val[i] == xatom->atom(otk::OBProperty::net_wm_window_type_menu))
         window_type = Type_Menu;
-      else if (val[i] == xatom->getAtom(XAtom::net_wm_window_type_utility))
+      else if (val[i] == xatom->atom(otk::OBProperty::net_wm_window_type_utility))
         window_type = Type_Utility;
-      else if (val[i] == xatom->getAtom(XAtom::net_wm_window_type_splash))
+      else if (val[i] == xatom->atom(otk::OBProperty::net_wm_window_type_splash))
         window_type = Type_Splash;
-      else if (val[i] == xatom->getAtom(XAtom::net_wm_window_type_dialog))
+      else if (val[i] == xatom->atom(otk::OBProperty::net_wm_window_type_dialog))
         window_type = Type_Dialog;
-      else if (val[i] == xatom->getAtom(XAtom::net_wm_window_type_normal))
+      else if (val[i] == xatom->atom(otk::OBProperty::net_wm_window_type_normal))
         window_type = Type_Normal;
       else if (val[i] ==
-               xatom->getAtom(XAtom::kde_net_wm_window_type_override))
+               xatom->atom(otk::OBProperty::kde_net_wm_window_type_override))
         mwm_decorations = 0; // prevent this window from getting any decor
     }
     delete val;
@@ -1115,22 +1119,23 @@ bool BlackboxWindow::getWindowType(void) {
 
 
 void BlackboxWindow::getWMName(void) {
-  if (xatom->getValue(client.window, XAtom::net_wm_name,
-                      XAtom::utf8, client.title) &&
+  if (xatom->get(client.window, otk::OBProperty::net_wm_name,
+                      otk::OBProperty::utf8, &client.title) &&
       !client.title.empty()) {
-    xatom->eraseValue(client.window, XAtom::net_wm_visible_name);
+    xatom->erase(client.window, otk::OBProperty::net_wm_visible_name);
     return;
   }
   //fall through to using WM_NAME
-  if (xatom->getValue(client.window, XAtom::wm_name, XAtom::ansi, client.title)
+  if (xatom->get(client.window, otk::OBProperty::wm_name,
+                 otk::OBProperty::ascii, &client.title)
       && !client.title.empty()) {
-    xatom->eraseValue(client.window, XAtom::net_wm_visible_name);
+    xatom->erase(client.window, otk::OBProperty::net_wm_visible_name);
     return;
   }
   // fall back to an internal default
   client.title = "Unnamed";
-  xatom->setValue(client.window, XAtom::net_wm_visible_name, XAtom::utf8,
-                  client.title);
+  xatom->set(client.window, otk::OBProperty::net_wm_visible_name,
+             otk::OBProperty::utf8, client.title);
 
 #ifdef DEBUG_WITH_ID
   // the 16 is the 8 chars of the debug text plus the number
@@ -1143,23 +1148,25 @@ void BlackboxWindow::getWMName(void) {
 
 
 void BlackboxWindow::getWMIconName(void) {
-  if (xatom->getValue(client.window, XAtom::net_wm_icon_name,
-                      XAtom::utf8, client.icon_title) && 
+  if (xatom->get(client.window, otk::OBProperty::net_wm_icon_name,
+                      otk::OBProperty::utf8, &client.icon_title) && 
       !client.icon_title.empty()) {
-    xatom->eraseValue(client.window, XAtom::net_wm_visible_icon_name);
+    xatom->erase(client.window, otk::OBProperty::net_wm_visible_icon_name);
     return;
   }
   //fall through to using WM_ICON_NAME
-  if (xatom->getValue(client.window, XAtom::wm_icon_name, XAtom::ansi,
-                      client.icon_title) && 
+  if (xatom->get(client.window, otk::OBProperty::wm_icon_name,
+                 otk::OBProperty::ascii,
+                 &client.icon_title) && 
       !client.icon_title.empty()) {
-    xatom->eraseValue(client.window, XAtom::net_wm_visible_icon_name);
+    xatom->erase(client.window, otk::OBProperty::net_wm_visible_icon_name);
     return;
   }
   // fall back to using the main name
   client.icon_title = client.title;
-  xatom->setValue(client.window, XAtom::net_wm_visible_icon_name, XAtom::utf8,
-                  client.icon_title);
+  xatom->set(client.window, otk::OBProperty::net_wm_visible_icon_name,
+             otk::OBProperty::utf8,
+             client.icon_title);
 }
 
 
@@ -1177,10 +1184,10 @@ void BlackboxWindow::getWMProtocols(void) {
   if (XGetWMProtocols(otk::OBDisplay::display, client.window,
                       &proto, &num_return)) {
     for (int i = 0; i < num_return; ++i) {
-      if (proto[i] == xatom->getAtom(XAtom::wm_delete_window)) {
+      if (proto[i] == xatom->atom(otk::OBProperty::wm_delete_window)) {
         decorations |= Decor_Close;
         functions |= Func_Close;
-      } else if (proto[i] == xatom->getAtom(XAtom::wm_take_focus))
+      } else if (proto[i] == xatom->atom(otk::OBProperty::wm_take_focus))
         flags.send_focus_message = True;
     }
 
@@ -1318,8 +1325,9 @@ void BlackboxWindow::getWMNormalHints(void) {
 void BlackboxWindow::getNetWMHints(void) {
   unsigned long workspace;
 
-  if (xatom->getValue(client.window, XAtom::net_wm_desktop, XAtom::cardinal,
-                      workspace)) {
+  if (xatom->get(client.window, otk::OBProperty::net_wm_desktop,
+                 otk::OBProperty::Atom_Cardinal,
+                 &workspace)) {
     if (workspace == 0xffffffff)
       flags.stuck = True;
     else
@@ -1328,26 +1336,27 @@ void BlackboxWindow::getNetWMHints(void) {
 
   unsigned long *state;
   unsigned long num = (unsigned) -1;
-  if (xatom->getValue(client.window, XAtom::net_wm_state, XAtom::atom,
-                      num, &state)) {
+  if (xatom->get(client.window, otk::OBProperty::net_wm_state,
+                 otk::OBProperty::Atom_Atom,
+                 &num, &state)) {
     bool vert = False,
          horz = False;
     for (unsigned long i = 0; i < num; ++i) {
-      if (state[i] == xatom->getAtom(XAtom::net_wm_state_modal))
+      if (state[i] == xatom->atom(otk::OBProperty::net_wm_state_modal))
         flags.modal = True;
-      else if (state[i] == xatom->getAtom(XAtom::net_wm_state_shaded))
+      else if (state[i] == xatom->atom(otk::OBProperty::net_wm_state_shaded))
         flags.shaded = True;
-      else if (state[i] == xatom->getAtom(XAtom::net_wm_state_skip_taskbar))
+      else if (state[i] == xatom->atom(otk::OBProperty::net_wm_state_skip_taskbar))
         flags.skip_taskbar = True;
-      else if (state[i] == xatom->getAtom(XAtom::net_wm_state_skip_pager))
+      else if (state[i] == xatom->atom(otk::OBProperty::net_wm_state_skip_pager))
         flags.skip_pager = True;
-      else if (state[i] == xatom->getAtom(XAtom::net_wm_state_fullscreen))
+      else if (state[i] == xatom->atom(otk::OBProperty::net_wm_state_fullscreen))
         flags.fullscreen = True;
-      else if (state[i] == xatom->getAtom(XAtom::net_wm_state_hidden))
+      else if (state[i] == xatom->atom(otk::OBProperty::net_wm_state_hidden))
         setState(IconicState);
-      else if (state[i] == xatom->getAtom(XAtom::net_wm_state_maximized_vert))
+      else if (state[i] == xatom->atom(otk::OBProperty::net_wm_state_maximized_vert))
         vert = True;
-      else if (state[i] == xatom->getAtom(XAtom::net_wm_state_maximized_horz))
+      else if (state[i] == xatom->atom(otk::OBProperty::net_wm_state_maximized_horz))
         horz = True;
     }
     if (vert && horz)
@@ -1374,9 +1383,9 @@ void BlackboxWindow::getMWMHints(void) {
   MwmHints *mwm_hint;
 
   num = PropMwmHintsElements;
-  if (! xatom->getValue(client.window, XAtom::motif_wm_hints,
-                        XAtom::motif_wm_hints, num,
-                        (unsigned long **)&mwm_hint))
+  if (! xatom->get(client.window, otk::OBProperty::motif_wm_hints,
+                   otk::OBProperty::motif_wm_hints, &num,
+                   (unsigned long **)&mwm_hint))
     return;
   if (num < PropMwmHintsElements) {
     delete [] mwm_hint;
@@ -1438,9 +1447,9 @@ bool BlackboxWindow::getBlackboxHints(void) {
   BlackboxHints *blackbox_hint;
 
   num = PropBlackboxHintsElements;
-  if (! xatom->getValue(client.window, XAtom::blackbox_hints,
-                        XAtom::blackbox_hints, num,
-                        (unsigned long **)&blackbox_hint))
+  if (! xatom->get(client.window, otk::OBProperty::blackbox_hints,
+                   otk::OBProperty::blackbox_hints, &num,
+                   (unsigned long **)&blackbox_hint))
     return False;
   if (num < PropBlackboxHintsElements) {
     delete [] blackbox_hint;
@@ -1592,7 +1601,7 @@ void BlackboxWindow::configure(int dx, int dy,
                           frame.rect.bottom() - frame.margin.bottom);
 
 #ifdef    SHAPE
-    if (blackbox->hasShapeExtensions() && flags.shaped) {
+    if (otk::OBDisplay::shape() && flags.shaped) {
       configureShape();
     }
 #endif // SHAPE
@@ -1721,11 +1730,11 @@ bool BlackboxWindow::setInputFocus(void) {
   if (flags.send_focus_message) {
     XEvent ce;
     ce.xclient.type = ClientMessage;
-    ce.xclient.message_type = xatom->getAtom(XAtom::wm_protocols);
+    ce.xclient.message_type = xatom->atom(otk::OBProperty::wm_protocols);
     ce.xclient.display = otk::OBDisplay::display;
     ce.xclient.window = client.window;
     ce.xclient.format = 32;
-    ce.xclient.data.l[0] = xatom->getAtom(XAtom::wm_take_focus);
+    ce.xclient.data.l[0] = xatom->atom(otk::OBProperty::wm_take_focus);
     ce.xclient.data.l[1] = blackbox->getLastTime();
     ce.xclient.data.l[2] = 0l;
     ce.xclient.data.l[3] = 0l;
@@ -1823,7 +1832,7 @@ void BlackboxWindow::show(void) {
 
 void BlackboxWindow::deiconify(bool reassoc, bool raise) {
   if (flags.iconic || reassoc)
-    screen->reassociateWindow(this, BSENTINEL, False);
+    screen->reassociateWindow(this, otk::BSENTINEL, False);
   else if (blackbox_attrib.workspace != screen->getCurrentWorkspaceID())
     return;
 
@@ -1846,11 +1855,11 @@ void BlackboxWindow::close(void) {
 
   XEvent ce;
   ce.xclient.type = ClientMessage;
-  ce.xclient.message_type =  xatom->getAtom(XAtom::wm_protocols);
+  ce.xclient.message_type =  xatom->atom(otk::OBProperty::wm_protocols);
   ce.xclient.display = otk::OBDisplay::display;
   ce.xclient.window = client.window;
   ce.xclient.format = 32;
-  ce.xclient.data.l[0] = xatom->getAtom(XAtom::wm_delete_window);
+  ce.xclient.data.l[0] = xatom->atom(otk::OBProperty::wm_delete_window);
   ce.xclient.data.l[1] = CurrentTime;
   ce.xclient.data.l[2] = 0l;
   ce.xclient.data.l[3] = 0l;
@@ -2026,7 +2035,7 @@ void BlackboxWindow::remaximize(void) {
 void BlackboxWindow::setWorkspace(unsigned int n) {
   blackbox_attrib.flags |= AttribWorkspace;
   blackbox_attrib.workspace = n;
-  if (n == BSENTINEL) { // iconified window
+  if (n == otk::BSENTINEL) { // iconified window
     /*
        we set the workspace to 'all workspaces' so that taskbars will show the
        window. otherwise, it made uniconifying a window imposible without the
@@ -2034,7 +2043,8 @@ void BlackboxWindow::setWorkspace(unsigned int n) {
     */
     n = 0xffffffff;
   }
-  xatom->setValue(client.window, XAtom::net_wm_desktop, XAtom::cardinal, n);
+  xatom->set(client.window, otk::OBProperty::net_wm_desktop,
+             otk::OBProperty::Atom_Cardinal, n);
 }
 
 
@@ -2084,11 +2094,12 @@ void BlackboxWindow::stick(void) {
         screen->getWorkspace(i)->removeWindow(this, True);
 
     if (! flags.iconic)
-      screen->reassociateWindow(this, BSENTINEL, True);
+      screen->reassociateWindow(this, otk::BSENTINEL, True);
     // temporary fix since sticky windows suck. set the hint to what we
     // actually hold in our data.
-    xatom->setValue(client.window, XAtom::net_wm_desktop, XAtom::cardinal,
-                    blackbox_attrib.workspace);
+    xatom->set(client.window, otk::OBProperty::net_wm_desktop,
+               otk::OBProperty::Atom_Cardinal,
+               blackbox_attrib.workspace);
 
     setState(current_state);
   } else {
@@ -2099,8 +2110,9 @@ void BlackboxWindow::stick(void) {
 
     // temporary fix since sticky windows suck. set the hint to a different
     // value than that contained in the class' data.
-    xatom->setValue(client.window, XAtom::net_wm_desktop, XAtom::cardinal,
-                    0xffffffff);
+    xatom->set(client.window, otk::OBProperty::net_wm_desktop,
+               otk::OBProperty::Atom_Cardinal,
+               0xffffffff);
     
     for (unsigned int i = 0; i < screen->getNumberOfWorkspaces(); ++i)
       if (i != blackbox_attrib.workspace)
@@ -2254,21 +2266,22 @@ void BlackboxWindow::setAllowedActions(void) {
   Atom actions[7];
   int num = 0;
   
-  actions[num++] = xatom->getAtom(XAtom::net_wm_action_shade);
-  actions[num++] = xatom->getAtom(XAtom::net_wm_action_change_desktop);
-  actions[num++] = xatom->getAtom(XAtom::net_wm_action_close);
+  actions[num++] = xatom->atom(otk::OBProperty::net_wm_action_shade);
+  actions[num++] = xatom->atom(otk::OBProperty::net_wm_action_change_desktop);
+  actions[num++] = xatom->atom(otk::OBProperty::net_wm_action_close);
 
   if (functions & Func_Move)
-    actions[num++] = xatom->getAtom(XAtom::net_wm_action_move);
+    actions[num++] = xatom->atom(otk::OBProperty::net_wm_action_move);
   if (functions & Func_Resize)
-    actions[num++] = xatom->getAtom(XAtom::net_wm_action_resize);
+    actions[num++] = xatom->atom(otk::OBProperty::net_wm_action_resize);
   if (functions & Func_Maximize) {
-    actions[num++] = xatom->getAtom(XAtom::net_wm_action_maximize_horz);
-    actions[num++] = xatom->getAtom(XAtom::net_wm_action_maximize_vert);
+    actions[num++] = xatom->atom(otk::OBProperty::net_wm_action_maximize_horz);
+    actions[num++] = xatom->atom(otk::OBProperty::net_wm_action_maximize_vert);
   }
 
-  xatom->setValue(client.window, XAtom::net_wm_allowed_actions, XAtom::atom,
-                  actions, num);
+  xatom->set(client.window, otk::OBProperty::net_wm_allowed_actions,
+             otk::OBProperty::Atom_Atom,
+             actions, num);
 }
 
 
@@ -2278,38 +2291,39 @@ void BlackboxWindow::setState(unsigned long new_state) {
   unsigned long state[2];
   state[0] = current_state;
   state[1] = None;
-  xatom->setValue(client.window, XAtom::wm_state, XAtom::wm_state, state, 2);
+  xatom->set(client.window, otk::OBProperty::wm_state, otk::OBProperty::wm_state, state, 2);
  
-  xatom->setValue(client.window, XAtom::blackbox_attributes,
-                  XAtom::blackbox_attributes, (unsigned long *)&blackbox_attrib,
+  xatom->set(client.window, otk::OBProperty::blackbox_attributes,
+                  otk::OBProperty::blackbox_attributes, (unsigned long *)&blackbox_attrib,
                   PropBlackboxAttributesElements);
 
   Atom netstate[8];
   int num = 0;
   if (flags.modal)
-    netstate[num++] = xatom->getAtom(XAtom::net_wm_state_modal);
+    netstate[num++] = xatom->atom(otk::OBProperty::net_wm_state_modal);
   if (flags.shaded)
-    netstate[num++] = xatom->getAtom(XAtom::net_wm_state_shaded);
+    netstate[num++] = xatom->atom(otk::OBProperty::net_wm_state_shaded);
   if (flags.iconic)
-    netstate[num++] = xatom->getAtom(XAtom::net_wm_state_hidden);
+    netstate[num++] = xatom->atom(otk::OBProperty::net_wm_state_hidden);
   if (flags.skip_taskbar)
-    netstate[num++] = xatom->getAtom(XAtom::net_wm_state_skip_taskbar);
+    netstate[num++] = xatom->atom(otk::OBProperty::net_wm_state_skip_taskbar);
   if (flags.skip_pager)
-    netstate[num++] = xatom->getAtom(XAtom::net_wm_state_skip_pager);
+    netstate[num++] = xatom->atom(otk::OBProperty::net_wm_state_skip_pager);
   if (flags.fullscreen)
-    netstate[num++] = xatom->getAtom(XAtom::net_wm_state_fullscreen);
+    netstate[num++] = xatom->atom(otk::OBProperty::net_wm_state_fullscreen);
   if (flags.maximized == 1 || flags.maximized == 2)
-    netstate[num++] = xatom->getAtom(XAtom::net_wm_state_maximized_vert);
+    netstate[num++] = xatom->atom(otk::OBProperty::net_wm_state_maximized_vert);
   if (flags.maximized == 1 || flags.maximized == 3)
-    netstate[num++] = xatom->getAtom(XAtom::net_wm_state_maximized_horz);
-  xatom->setValue(client.window, XAtom::net_wm_state, XAtom::atom,
-                  netstate, num);
+    netstate[num++] = xatom->atom(otk::OBProperty::net_wm_state_maximized_horz);
+  xatom->set(client.window, otk::OBProperty::net_wm_state,
+             otk::OBProperty::Atom_Atom,
+             netstate, num);
 }
 
 
 bool BlackboxWindow::getState(void) {
-  bool ret = xatom->getValue(client.window, XAtom::wm_state, XAtom::wm_state,
-                             current_state);
+  bool ret = xatom->get(client.window, otk::OBProperty::wm_state,
+                        otk::OBProperty::wm_state, &current_state);
   if (! ret) current_state = 0;
   return ret;
 }
@@ -2318,8 +2332,8 @@ bool BlackboxWindow::getState(void) {
 void BlackboxWindow::restoreAttributes(void) {
   unsigned long num = PropBlackboxAttributesElements;
   BlackboxAttributes *net;
-  if (! xatom->getValue(client.window, XAtom::blackbox_attributes,
-                        XAtom::blackbox_attributes, num,
+  if (! xatom->get(client.window, otk::OBProperty::blackbox_attributes,
+                        otk::OBProperty::blackbox_attributes, &num,
                         (unsigned long **)&net))
     return;
   if (num < PropBlackboxAttributesElements) {
@@ -2552,7 +2566,7 @@ void BlackboxWindow::redrawLabel(void) const {
   }
   XClearWindow(otk::OBDisplay::display, frame.label);
 
-  WindowStyle *style = screen->getWindowStyle();
+  otk::Style *style = screen->getWindowStyle();
 
   int pos = frame.bevel_w * 2;
   style->doJustify(client.title.c_str(), pos, frame.label_w, frame.bevel_w * 4);
@@ -2615,7 +2629,7 @@ void BlackboxWindow::redrawIconifyButton(bool pressed) const {
   otk::BPen pen((flags.focused) ? screen->getWindowStyle()->b_pic_focus :
                 screen->getWindowStyle()->b_pic_unfocus);
 
-  PixmapMask pm = screen->getWindowStyle()->icon_button;
+  otk::Style::PixmapMask pm = screen->getWindowStyle()->icon_button;
   
   if (screen->getWindowStyle()->icon_button.mask != None) {
     XSetClipMask(otk::OBDisplay::display, pen.gc(), pm.mask);
@@ -2647,7 +2661,7 @@ void BlackboxWindow::redrawMaximizeButton(bool pressed) const {
   otk::BPen pen((flags.focused) ? screen->getWindowStyle()->b_pic_focus :
                 screen->getWindowStyle()->b_pic_unfocus);
   
-  PixmapMask pm = screen->getWindowStyle()->max_button;
+  otk::Style::PixmapMask pm = screen->getWindowStyle()->max_button;
     
   if (pm.mask != None) {
     XSetClipMask(otk::OBDisplay::display, pen.gc(), pm.mask);
@@ -2681,7 +2695,7 @@ void BlackboxWindow::redrawCloseButton(bool pressed) const {
   otk::BPen pen((flags.focused) ? screen->getWindowStyle()->b_pic_focus :
                 screen->getWindowStyle()->b_pic_unfocus);
   
-  PixmapMask pm = screen->getWindowStyle()->close_button;
+  otk::Style::PixmapMask pm = screen->getWindowStyle()->close_button;
 
   if (pm.mask != None) {
     XSetClipMask(otk::OBDisplay::display, pen.gc(), pm.mask);
@@ -2715,7 +2729,7 @@ void BlackboxWindow::redrawStickyButton(bool pressed) const {
   otk::BPen pen((flags.focused) ? screen->getWindowStyle()->b_pic_focus :
                 screen->getWindowStyle()->b_pic_unfocus);
   
-  PixmapMask pm = screen->getWindowStyle()->stick_button;
+  otk::Style::PixmapMask pm = screen->getWindowStyle()->stick_button;
 
   if (pm.mask != None) {
     XSetClipMask(otk::OBDisplay::display, pen.gc(), pm.mask);
@@ -2875,7 +2889,7 @@ void BlackboxWindow::propertyNotifyEvent(const XPropertyEvent *pe) {
     if (flags.iconic) screen->propagateWindowName(this);
     break;
 
-  case XAtom::net_wm_name:
+  case otk::OBProperty::net_wm_name:
   case XA_WM_NAME:
     getWMName();
 
@@ -2917,7 +2931,7 @@ void BlackboxWindow::propertyNotifyEvent(const XPropertyEvent *pe) {
   }
 
   default:
-    if (pe->atom == xatom->getAtom(XAtom::wm_protocols)) {
+    if (pe->atom == xatom->atom(otk::OBProperty::wm_protocols)) {
       getWMProtocols();
 
       if ((decorations & Decor_Close) && (! frame.close_button)) {
@@ -2927,7 +2941,7 @@ void BlackboxWindow::propertyNotifyEvent(const XPropertyEvent *pe) {
           XMapSubwindows(otk::OBDisplay::display, frame.title);
         }
       }
-    } else if (pe->atom == xatom->getAtom(XAtom::net_wm_strut)) {
+    } else if (pe->atom == xatom->atom(otk::OBProperty::net_wm_strut)) {
       updateStrut();
     }
 
@@ -3834,7 +3848,7 @@ void BlackboxWindow::leaveNotifyEvent(const XCrossingEvent*) {
 
 #ifdef    SHAPE
 void BlackboxWindow::shapeEvent(XShapeEvent *e) {
-  if (blackbox->hasShapeExtensions()) {
+  if (otk::OBDisplay::shape()) {
     if (! e->shaped && flags.shaped) {
       clearShape();
       flags.shaped = False;
@@ -3876,8 +3890,8 @@ void BlackboxWindow::restore(bool remap) {
   // erase the netwm stuff that we read when a window maps, so that it
   // doesn't persist between mappings.
   // (these are the ones read in getNetWMFlags().)
-  xatom->eraseValue(client.window, XAtom::net_wm_desktop);
-  xatom->eraseValue(client.window, XAtom::net_wm_state);
+  xatom->erase(client.window, otk::OBProperty::net_wm_desktop);
+  xatom->erase(client.window, otk::OBProperty::net_wm_state);
 
   restoreGravity(client.rect);
 
@@ -3976,12 +3990,12 @@ void BlackboxWindow::changeBlackboxHints(const BlackboxHints *net) {
  * window's dimensions.
  */
 void BlackboxWindow::upsize(void) {
-  frame.bevel_w = screen->getBevelWidth();
+  frame.bevel_w = screen->getWindowStyle()->getBevelWidth();
 
   if (decorations & Decor_Border) {
-    frame.border_w = screen->getBorderWidth();
+    frame.border_w = screen->getWindowStyle()->getBorderWidth();
     if (! isTransient())
-      frame.mwm_border_w = screen->getFrameWidth();
+      frame.mwm_border_w = screen->getWindowStyle()->getFrameWidth();
     else
       frame.mwm_border_w = 0;
   } else {
@@ -3991,7 +4005,7 @@ void BlackboxWindow::upsize(void) {
   if (decorations & Decor_Titlebar) {
     // the height of the titlebar is based upon the height of the font being
     // used to display the window's title
-    WindowStyle *style = screen->getWindowStyle();
+    otk::Style *style = screen->getWindowStyle();
     frame.title_h = style->font->height() + (frame.bevel_w * 2) + 2;
 
     frame.label_h = frame.title_h - (frame.bevel_w * 2);
@@ -4014,7 +4028,7 @@ void BlackboxWindow::upsize(void) {
 
   if (decorations & Decor_Handle) {
     frame.grip_w = frame.button_w * 2;
-    frame.handle_h = screen->getHandleWidth();
+    frame.handle_h = screen->getWindowStyle()->getHandleWidth();
 
     // set the bottom frame margin
     frame.margin.bottom = frame.border_w + frame.handle_h +
@@ -4145,32 +4159,6 @@ void BlackboxWindow::constrain(Corner anchor,
 }
 
 
-void WindowStyle::doJustify(const std::string &text, int &start_pos,
-                            unsigned int max_length,
-                            unsigned int modifier) const {
-  size_t text_len = text.size();
-  unsigned int length;
-
-  do {
-    length = font->measureString(string(text, 0, text_len)) + modifier;
-  } while (length > max_length && text_len-- > 0);
-
-  switch (justify) {
-  case RightJustify:
-    start_pos += max_length - length;
-    break;
-
-  case CenterJustify:
-    start_pos += (max_length - length) / 2;
-    break;
-
-  case LeftJustify:
-  default:
-    break;
-  }
-}
-
-
 BWindowGroup::BWindowGroup(Blackbox *b, Window _group)
   : blackbox(b), group(_group) {
   XWindowAttributes wattrib;
This page took 0.041806 seconds and 4 git commands to generate.