#include "otk/rect.hh"
#include "otk/eventhandler.hh"
#include "widget.hh"
+#include "python.hh"
namespace ob {
class OBFrame;
+extern PyTypeObject OBClient_Type;
+
//! Maintains the state of a client window.
/*!
OBClient maintains the state of a client window. The state consists of the
change (such as causing a redraw of the titlebar after the title is changed).
*/
class OBClient : public otk::OtkEventHandler, public OBWidget {
+ PyObject_HEAD
public:
//! The frame window which decorates around the client window
static const long event_mask = PropertyChangeMask | FocusChangeMask |
StructureNotifyMask;
+ //! The mask of events to not let propogate past the client
+ /*!
+ This makes things like xprop work on the client window, but means we have
+ to explicitly grab clicks that we want.
+ */
+ static const long no_propagate_mask = ButtonPressMask | ButtonReleaseMask |
+ ButtonMotionMask;
+
//! The number of unmap events to ignore on the window
int ignore_unmaps;