diff options
| author | Dana Jansens <danakj@orodu.net> | 2002-05-25 00:29:44 +0000 |
|---|---|---|
| committer | Dana Jansens <danakj@orodu.net> | 2002-05-25 00:29:44 +0000 |
| commit | 8794d357e67abddf9fda9db77b235e294d0ec590 (patch) | |
| tree | 97e618433ff557b2b2d0842498d8464d4fba8717 /src/XDisplay.h | |
| parent | e640ee15ad19f24e0ad8351933fea5bafe98d380 (diff) | |
import from bb-cvs
added slit and enable-clobber defines back in Makefile.am
Diffstat (limited to 'src/XDisplay.h')
| -rw-r--r-- | src/XDisplay.h | 97 |
1 files changed, 0 insertions, 97 deletions
diff --git a/src/XDisplay.h b/src/XDisplay.h deleted file mode 100644 index 3c4230bd..00000000 --- a/src/XDisplay.h +++ /dev/null @@ -1,97 +0,0 @@ -// XDisplay.h for Openbox -// Copyright (c) 2002 - 2002 Ben Janens (ben at orodu.net) -// -// 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 __XDisplay_h -#define __XDisplay_h - -#include <X11/Xlib.h> -#include <string> -#include <vector> -#include "XAtom.h" -#include "XScreen.h" - -class XDisplay { - friend XAtom::XAtom(const XDisplay *); - friend XScreen::XScreen(const XDisplay *, const unsigned int); - -private: - Display *_display; - std::string _name; - unsigned int _grabs; - bool _hasshape; - int _shape_event_base; - -#ifndef NOCLOBBER - // the server's values for the lock key modifiers - void getLockModifiers(); - unsigned int MaskList[8]; - // the masks of the modifiers which are ignored in button events. - int NumLockMask, ScrollLockMask; -#endif // NOCLOBBER - - - // X error handling - static int errorHandler(Display *d, XErrorEvent *e); - static std::string _app_name; - static Window _last_bad_window; - - // no copying!! - XDisplay(const XDisplay &); - XDisplay& operator=(const XDisplay&); - -protected: - virtual void process_event(XEvent *) = 0; - -public: - XDisplay(const std::string &application_name, const char *dpyname = 0); - virtual ~XDisplay(); - - inline virtual unsigned int screenCount() const - { return ScreenCount(_display); } - - inline bool hasShape() const { return _hasshape; } - inline int shapeEventBase() const { return _shape_event_base; } - - //inline Display *display() const { return _display; } - - inline std::string applicationName() const { return _app_name; } - inline std::string name() const { return _name; } - - void grab(); - void ungrab(); - - bool nextEvent(XEvent &e); - - int connectionNumber() const; - - Cursor createCursor(unsigned int shape) const; - - unsigned int stripModifiers(const unsigned int state) const; - - // these belong in Xwindow - const bool validateWindow(Window); - void grabButton(unsigned int, unsigned int, Window, Bool, unsigned int, int, - int, Window, Cursor) const; - void ungrabButton(unsigned int button, unsigned int modifiers, - Window grab_window) const; -}; - -#endif // _XDisplay_h |
