summaryrefslogtreecommitdiff
path: root/otk
diff options
context:
space:
mode:
authorDana Jansens <danakj@orodu.net>2003-01-04 05:18:33 +0000
committerDana Jansens <danakj@orodu.net>2003-01-04 05:18:33 +0000
commitbf404e092be46801b1a78f9a71e10d0d00b75894 (patch)
tree5beb02abff23d8cc1e019206d5f7d2ade7f8fc08 /otk
parente3b50c2d137ba194073dc062edf73e79c18b7fe8 (diff)
make the frame window override-redirect
Diffstat (limited to 'otk')
-rw-r--r--otk/otk_wrap.cc4
-rw-r--r--otk/widget.cc14
-rw-r--r--otk/widget.hh4
3 files changed, 12 insertions, 10 deletions
diff --git a/otk/otk_wrap.cc b/otk/otk_wrap.cc
index 8b072b30..0b7ee3ac 100644
--- a/otk/otk_wrap.cc
+++ b/otk/otk_wrap.cc
@@ -1862,7 +1862,7 @@ static PyObject *_wrap_new_OtkWidget__SWIG_1(PyObject *self, PyObject *args) {
int arg3 = (int) otk::OtkWidget::Horizontal ;
Cursor arg4 = (Cursor) 0 ;
int arg5 = (int) 1 ;
- unsigned long arg6 = (unsigned long) 0 ;
+ bool arg6 = (bool) false ;
otk::OtkWidget *result;
Cursor *argp4 ;
PyObject * obj0 = 0 ;
@@ -1878,7 +1878,7 @@ static PyObject *_wrap_new_OtkWidget__SWIG_1(PyObject *self, PyObject *args) {
arg4 = *argp4;
}
if (obj5) {
- arg6 = (unsigned long) PyInt_AsLong(obj5);
+ arg6 = (bool) PyInt_AsLong(obj5);
if (PyErr_Occurred()) SWIG_fail;
}
result = (otk::OtkWidget *)new otk::OtkWidget(arg1,arg2,(otk::OtkWidget::Direction )arg3,arg4,arg5,arg6);
diff --git a/otk/widget.cc b/otk/widget.cc
index 231dee06..5dd1bce9 100644
--- a/otk/widget.cc
+++ b/otk/widget.cc
@@ -35,7 +35,7 @@ OtkWidget::OtkWidget(OtkWidget *parent, Direction direction)
OtkWidget::OtkWidget(OtkEventDispatcher *event_dispatcher, Style *style,
Direction direction, Cursor cursor, int bevel_width,
- unsigned long create_mask)
+ bool override_redirect)
: OtkEventHandler(),
_dirty(false),_focused(false),
_parent(0), _style(style), _direction(direction), _cursor(cursor),
@@ -48,7 +48,7 @@ OtkWidget::OtkWidget(OtkEventDispatcher *event_dispatcher, Style *style,
{
assert(event_dispatcher);
assert(style);
- create(create_mask);
+ create(override_redirect);
_event_dispatcher->registerHandler(_window, this);
setStyle(_style); // let the widget initialize stuff
}
@@ -68,7 +68,7 @@ OtkWidget::~OtkWidget()
XDestroyWindow(otk::OBDisplay::display, _window);
}
-void OtkWidget::create(unsigned long mask)
+void OtkWidget::create(bool override_redirect)
{
const ScreenInfo *scr_info = otk::OBDisplay::screenInfo(_screen);
Window p_window = _parent ? _parent->window() : scr_info->rootWindow();
@@ -76,15 +76,17 @@ void OtkWidget::create(unsigned long mask)
_rect.setRect(0, 0, 1, 1); // just some initial values
XSetWindowAttributes attrib_create;
- unsigned long create_mask = CWBackPixmap | CWBorderPixel | CWEventMask |
- mask;
+ unsigned long create_mask = CWBackPixmap | CWBorderPixel | CWEventMask;
attrib_create.background_pixmap = None;
attrib_create.colormap = scr_info->colormap();
- attrib_create.override_redirect = true; // not used by default
attrib_create.event_mask = ButtonPressMask | ButtonReleaseMask |
ButtonMotionMask | ExposureMask | StructureNotifyMask;
+ if (override_redirect) {
+ create_mask |= CWOverrideRedirect;
+ attrib_create.override_redirect = true;
+ }
if (_cursor) {
create_mask |= CWCursor;
diff --git a/otk/widget.hh b/otk/widget.hh
index 8d3bfb23..337bbf14 100644
--- a/otk/widget.hh
+++ b/otk/widget.hh
@@ -28,7 +28,7 @@ public:
OtkWidget(otk::OtkWidget *parent, Direction = Horizontal);
OtkWidget(otk::OtkEventDispatcher *event_dispatcher, otk::Style *style,
Direction direction = Horizontal, Cursor cursor = 0,
- int bevel_width = 1, unsigned long create_mask = 0);
+ int bevel_width = 1, bool override_redirect = false);
virtual ~OtkWidget();
@@ -126,7 +126,7 @@ protected:
bool _focused;
virtual void adjust(void);
- virtual void create(unsigned long mask = 0);
+ virtual void create(bool override_redirect = false);
virtual void adjustHorz(void);
virtual void adjustVert(void);
virtual void internalResize(int width, int height);