|
PieDock 1.6.0
|
00001 /* 00002 * O ,- 00003 * ° o . -´ ' ,- 00004 * ° .´ ` . ´,´ 00005 * ( ° )) . ( 00006 * `-;_ . -´ `.`. 00007 * `._' ´ 00008 * 00009 * Copyright (c) 2007-2010 Markus Fisch <mf@markusfisch.de> 00010 * 00011 * Licensed under the MIT license: 00012 * http://www.opensource.org/licenses/mit-license.php 00013 */ 00014 #ifndef _PieDock_Application_ 00015 #define _PieDock_Application_ 00016 00017 #include <X11/Xlib.h> 00018 #include <string> 00019 00020 #include "Settings.h" 00021 00022 namespace PieDock 00023 { 00029 class Application 00030 { 00031 public: 00032 Application( Settings & ); 00033 virtual ~Application(); 00034 inline Display *getDisplay() const { return display; } 00035 inline Settings *getSettings() { return settings; } 00036 00037 bool remote( const char * = 0 ) const; 00038 int run( bool * ); 00039 00040 private: 00041 static const char StopMarker; 00042 static const char *Show; 00043 00044 enum PulseBeats 00045 { 00046 StandBy = 0, 00047 Active = 10000 00048 }; 00049 00050 enum 00051 { 00052 UnixPathMax = 108 00053 }; 00054 00055 Display *display; 00056 Window root; 00057 Settings *settings; 00058 int suspend; 00059 std::string socketFile; 00060 00061 void grabTriggers(); 00062 void ungrabTriggers(); 00063 }; 00064 } 00065 00066 #endif
1.7.3