PieDock 1.6.0

src/ModMask.h

00001 /*
00002  * Copyright (c) 2008 Tatiana Azundris <hacks@azundris.com>
00003  *
00004  * Licensed under the MIT license:
00005  * http://www.opensource.org/licenses/mit-license.php
00006  */
00007 #ifndef _PieDock_ModMask_
00008 #define _PieDock_ModMask_
00009 
00010 #include <X11/Xlib.h>
00011 
00012 namespace PieDock
00013 {
00019     class ModMask
00020     {
00021         public:
00022             ModMask( Display * );
00023             virtual ~ModMask();
00024             unsigned int getModMaskFor( const char * );
00025 
00026         private:
00027             struct XlatEntry
00028             {
00029                 const char *name;
00030                 int index;
00031                 int mask;
00032             };
00033 
00034             struct ModKeyEntry
00035             {
00036                 KeyCode code;
00037                 const char *name;
00038                 const XlatEntry *xlat;
00039                 char *type;
00040             };
00041 
00042             Display *display;
00043             int modKeyCount;
00044             ModKeyEntry *modKey;
00045     };
00046 }
00047 
00048 #endif