X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=otk%2Fscreeninfo.cc;h=087f4efdcfb5d301e18eaf10d3dfbad64cdca5b8;hb=5face4c6f35172761367f63ac0b6eaf62d84e532;hp=c1c0c2acc80e563d52e58272241e592660170015;hpb=ace8c8896aa13a6fc4e489277cf9c96f49175322;p=chaz%2Fopenbox diff --git a/otk/screeninfo.cc b/otk/screeninfo.cc index c1c0c2ac..087f4efd 100644 --- a/otk/screeninfo.cc +++ b/otk/screeninfo.cc @@ -1,4 +1,4 @@ -// -*- mode: C++; indent-tabs-mode: nil; -*- +// -*- mode: C++; indent-tabs-mode: nil; c-basic-offset: 2; -*- #ifdef HAVE_CONFIG_H # include "../config.h" @@ -11,42 +11,42 @@ extern "C" { #include "screeninfo.hh" #include "display.hh" -#include "src/util.hh" +#include "util.hh" using std::string; namespace otk { ScreenInfo::ScreenInfo(unsigned int num) { - screen_number = num; + _screen = num; - root_window = RootWindow(OBDisplay::display, screen_number); + _root_window = RootWindow(**display, _screen); - rect.setSize(WidthOfScreen(ScreenOfDisplay(OBDisplay::display, - screen_number)), - HeightOfScreen(ScreenOfDisplay(OBDisplay::display, - screen_number))); + _rect.setSize(WidthOfScreen(ScreenOfDisplay(**display, + _screen)), + HeightOfScreen(ScreenOfDisplay(**display, + _screen))); /* If the default depth is at least 8 we will use that, otherwise we try to find the largest TrueColor visual. Preference is given to 24 bit over larger depths if 24 bit is an option. */ - depth = DefaultDepth(OBDisplay::display, screen_number); - visual = DefaultVisual(OBDisplay::display, screen_number); - colormap = DefaultColormap(OBDisplay::display, screen_number); + _depth = DefaultDepth(**display, _screen); + _visual = DefaultVisual(**display, _screen); + _colormap = DefaultColormap(**display, _screen); - if (depth < 8) { + if (_depth < 8) { // search for a TrueColor Visual... if we can't find one... // we will use the default visual for the screen XVisualInfo vinfo_template, *vinfo_return; int vinfo_nitems; int best = -1; - vinfo_template.screen = screen_number; + vinfo_template.screen = _screen; vinfo_template.c_class = TrueColor; - vinfo_return = XGetVisualInfo(OBDisplay::display, + vinfo_return = XGetVisualInfo(**display, VisualScreenMask | VisualClassMask, &vinfo_template, &vinfo_nitems); if (vinfo_return) { @@ -59,30 +59,30 @@ ScreenInfo::ScreenInfo(unsigned int num) { best = i; } } - if (max_depth < depth) best = -1; + if (max_depth < _depth) best = -1; } if (best != -1) { - depth = vinfo_return[best].depth; - visual = vinfo_return[best].visual; - colormap = XCreateColormap(OBDisplay::display, root_window, visual, - AllocNone); + _depth = vinfo_return[best].depth; + _visual = vinfo_return[best].visual; + _colormap = XCreateColormap(**display, _root_window, _visual, + AllocNone); } XFree(vinfo_return); } // get the default display string and strip the screen number - string default_string = DisplayString(OBDisplay::display); + string default_string = DisplayString(**display); const string::size_type pos = default_string.rfind("."); if (pos != string::npos) default_string.resize(pos); - display_string = string("DISPLAY=") + default_string + '.' + - ob::itostring(static_cast(screen_number)); + _display_string = string("DISPLAY=") + default_string + '.' + + itostring(static_cast(_screen)); -#ifdef XINERAMA - xinerama_active = False; +#if 0 //def XINERAMA + _xinerama_active = False; if (d->hasXineramaExtensions()) { if (d->getXineramaMajorVersion() == 1) { @@ -93,7 +93,7 @@ ScreenInfo::ScreenInfo(unsigned int num) { in future versions we should be able, so the 'activeness' is checked on a pre-screen basis anyways. */ - if (XineramaIsActive(OBDisplay::display)) { + if (XineramaIsActive(**display)) { /* If Xinerama is being used, there there is only going to be one screen present. We still, of course, want to use the screen class, but that @@ -101,19 +101,18 @@ ScreenInfo::ScreenInfo(unsigned int num) { never be more than one screen present with Xinerama active. */ int num; - XineramaScreenInfo *info = XineramaQueryScreens(OBDisplay::display, - &num); + XineramaScreenInfo *info = XineramaQueryScreens(**display, &num); if (num > 0 && info) { - xinerama_areas.reserve(num); + _xinerama_areas.reserve(num); for (int i = 0; i < num; ++i) { - xinerama_areas.push_back(Rect(info[i].x_org, info[i].y_org, - info[i].width, info[i].height)); + _xinerama_areas.push_back(Rect(info[i].x_org, info[i].y_org, + info[i].width, info[i].height)); } XFree(info); // if we can't find any xinerama regions, then we act as if it is not // active, even though it said it was - xinerama_active = True; + _xinerama_active = True; } } }