X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=src%2FSlit.cc;h=0e7b7c8115667b4e1b11d90ab63a11c7439f958c;hb=18499a6920309d6ddfe70767f8a90e2778a96ba7;hp=38af8b93ffce389f104cc4c97a1eb3fa2f9b59bf;hpb=940c1f614fa380a9153c3b81d0614201b27957c2;p=chaz%2Fopenbox diff --git a/src/Slit.cc b/src/Slit.cc index 38af8b93..0e7b7c81 100644 --- a/src/Slit.cc +++ b/src/Slit.cc @@ -47,11 +47,6 @@ Slit::Slit(BScreen &scr, Resource &conf) : screen(scr), openbox(scr.getOpenbox()), config(conf) { - // default values - m_placement = CenterRight; - m_direction = Vertical; - m_ontop = false; - m_hidden = m_autohide = false; load(); display = screen.getBaseDisplay().getXDisplay(); @@ -217,7 +212,7 @@ void Slit::removeClient(Window w, Bool remap) { void Slit::setOnTop(bool b) { m_ontop = b; - ostrstream s; + std::ostrstream s; s << "session.screen" << screen.getScreenNumber() << ".slit.onTop" << ends; config.setValue(s.str(), m_ontop ? "True" : "False"); s.rdbuf()->freeze(0); @@ -225,7 +220,7 @@ void Slit::setOnTop(bool b) { void Slit::setAutoHide(bool b) { m_autohide = b; - ostrstream s; + std::ostrstream s; s << "session.screen" << screen.getScreenNumber() << ".slit.autoHide" << ends; config.setValue(s.str(), m_autohide ? "True" : "False"); s.rdbuf()->freeze(0); @@ -233,7 +228,7 @@ void Slit::setAutoHide(bool b) { void Slit::setPlacement(int p) { m_placement = p; - ostrstream s; + std::ostrstream s; s << "session.screen" << screen.getScreenNumber() << ".slit.placement" << ends; const char *placement; @@ -253,7 +248,7 @@ void Slit::setPlacement(int p) { void Slit::setDirection(int d) { m_direction = d; - ostrstream s; + std::ostrstream s; s << "session.screen" << screen.getScreenNumber() << ".slit.direction" << ends; config.setValue(s.str(), @@ -293,7 +288,8 @@ void Slit::load() { m_placement = BottomRight; else if (0 == strncasecmp(s.c_str(), "CenterRight", s.length())) m_placement = CenterRight; - } + } else + m_placement = CenterRight; rname.seekp(0); rclass.seekp(0); rname << rscreen.str() << "slit.direction" << ends; @@ -303,19 +299,25 @@ void Slit::load() { m_direction = Horizontal; else if (0 == strncasecmp(s.c_str(), "Vertical", s.length())) m_direction = Vertical; - } + } else + m_direction = Vertical; rname.seekp(0); rclass.seekp(0); rname << rscreen.str() << "slit.onTop" << ends; rclass << rscreen.str() << "Slit.OnTop" << ends; if (config.getValue(rname.str(), rclass.str(), b)) m_ontop = b; + else + m_ontop = false; rname.seekp(0); rclass.seekp(0); rname << rscreen.str() << "slit.autoHide" << ends; rclass << rscreen.str() << "Slit.AutoHide" << ends; if (config.getValue(rname.str(), rclass.str(), b)) m_hidden = m_autohide = b; + else + m_hidden = m_autohide = false; + rscreen.rdbuf()->freeze(0); rname.rdbuf()->freeze(0); rclass.rdbuf()->freeze(0);