X-Git-Url: https://git.brokenzipper.com/gitweb?a=blobdiff_plain;f=util%2Fepist%2Fscreen.hh;fp=util%2Fepist%2Fscreen.hh;h=0000000000000000000000000000000000000000;hb=0afb43164484dcac4773ad778c032687da6b01aa;hp=f0f3de079d87a654eaa608a541040dfde9646be1;hpb=b683a4e0efe470ab38b75a767b4ea2abf004626a;p=chaz%2Fopenbox diff --git a/util/epist/screen.hh b/util/epist/screen.hh deleted file mode 100644 index f0f3de07..00000000 --- a/util/epist/screen.hh +++ /dev/null @@ -1,110 +0,0 @@ -// -*- mode: C++; indent-tabs-mode: nil; c-basic-offset: 2; -*- -// screen.hh for Epistrophy - a key handler for NETWM/EWMH window managers. -// Copyright (c) 2002 - 2002 Ben Jansens -// -// Permission is hereby granted, free of charge, to any person obtaining a -// copy of this software and associated documentation files (the "Software"), -// to deal in the Software without restriction, including without limitation -// the rights to use, copy, modify, merge, publish, distribute, sublicense, -// and/or sell copies of the Software, and to permit persons to whom the -// Software is furnished to do so, subject to the following conditions: -// -// The above copyright notice and this permission notice shall be included in -// all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -// THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -// DEALINGS IN THE SOFTWARE. - -#ifndef __screen_hh -#define __screen_hh - -extern "C" { -#include "X11/Xlib.h" -} - -#include -#include - -#include "window.hh" -#include "config.hh" - -class epist; -class screen; -class XAtom; -class ScreenInfo; - -class screen { - epist *_epist; - XAtom *_xatom; - int _number; - Window _root; - const ScreenInfo *_info; - - std::string _wm_name; - - WindowList &_clients; - WindowList::iterator &_active; - WindowList::iterator _last_active; - unsigned int _active_desktop; - unsigned int _num_desktops; - - const Config *_config; - - bool _managed; - bool _grabbed; // used for keygrab toggle function - bool _cycling; // used for stacked cycling - bool _stacked_cycling; - bool _stacked_raise; - - XWindow *findWindow(const XEvent &e) const; - void updateNumDesktops(); - void updateActiveDesktop(); - void updateClientList(); - void updateActiveWindow(); - bool doAddWindow(Window window) const; - bool findSupportingWM(); - bool isModifier(const KeyCode kc) const; - bool nothingIsPressed(void) const; - -public: - screen(epist *epist, int number); - virtual ~screen(); - - inline Window rootWindow() const { return _root; } - inline bool managed() const { return _managed; } - inline int number() const { return _number; } - - const XWindow *lastActiveWindow() const; - - void processEvent(const XEvent &e); - void handleKeypress(const XEvent &e); - void handleKeyrelease(const XEvent &e); - void updateEverything(); - - void cycleWindow(unsigned int state, const bool forward, const int increment, - const bool allscreens = false, - const bool alldesktops = false, - const bool sameclass = false, - const std::string &classname = ""); - void cycleWorkspace(const bool forward, const int increment, - const bool loop = true) const; - void changeWorkspace(const int num) const; - void changeWorkspaceVert(const int num) const; - void changeWorkspaceHorz(const int num) const; - - void toggleShaded(const Window win) const; - void execCommand(const std::string &cmd) const; - - void grabKey(const KeyCode keyCode, const int modifierMask) const; - void ungrabKey(const KeyCode keyCode, const int modifierMask) const; - - void grabModifiers(void) const; - void ungrabModifiers(void) const; -}; - -#endif // __screen_hh