- changing MaxInstructions to 100 for cthulhain (crazy nut) =:)
[bbkeys.git] / src / NETInterface.hh
blob3da4d259df222cd9a178c6e88775be1b0053cf89
1 // NETInterface.hh for bbtools.
2 //
3 // Copyright (c) 1998-1999 by John Kennis, jkennis@chello.nl
4 //
5 // This program is free software; you can redistribute it and/or modify
6 // it under the terms of the GNU General Public License as published by
7 // the Free Software Foundation; either version 2 of the License, or
8 // (at your option) any later version.
9 //
10 // This program is distributed in the hope that it will be useful,
11 // but WITHOUT ANY WARRANTY; without even the implied warranty of
12 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 // GNU General Public License for more details.
15 // You should have received a copy of the GNU General Public License
16 // along with this program; if not, write to the Free Software
17 // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19 // (See the included file COPYING / GPL-2.0)
21 // $Id$
23 #ifndef __NETINTERFACE_HH
24 #define __NETINTERFACE_HH
26 #include <X11/Xlib.h>
27 #include <X11/Xutil.h>
28 #include <X11/Xos.h>
29 #include <X11/Xatom.h>
30 #include <X11/Xresource.h>
32 #include "Timer.hh"
33 #include "Basewindow.hh"
35 class Basewindow;
37 class NETInterface : public TimeoutHandler {
38 public:
39 NETInterface(Basewindow *);
40 virtual ~NETInterface(void) {};
41 void handleNETEvents(XEvent);
43 protected:
44 virtual void NETNotifyStartup(void) {net_init=True;}
45 virtual void NETNotifyWindowAdd(Window,int)=0;
46 virtual void NETNotifyDel(Window)=0;
47 virtual void NETNotifyAttributes(Window)=0;
48 virtual void NETNotifyFocus(Window)=0;
49 virtual void NETNotifyCurrentWorkspace(int)=0;
50 virtual void NETNotifyWorkspaceCount(int)=0;
51 virtual void timeout(void);
53 private:
54 Basewindow *base;
55 bool net_init;
56 BTimer *timer;
60 #endif // __NETINTERFACE_HH