From 745e840547b5443ecfb9b6f0a4f14b0d035d59c2 Mon Sep 17 00:00:00 2001 From: Dana Jansens Date: Tue, 31 Dec 2002 19:15:24 +0000 Subject: load config options from the python environment --- src/frame.cc | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) (limited to 'src/frame.cc') diff --git a/src/frame.cc b/src/frame.cc index 4f466b46..072edc70 100644 --- a/src/frame.cc +++ b/src/frame.cc @@ -56,15 +56,51 @@ OBFrame::OBFrame(OBClient *client, otk::Style *style) _plate.show(); // the other stuff is shown based on decor settings grabClient(); + + grabButtons(true); } OBFrame::~OBFrame() { + grabButtons(false); releaseClient(false); } +void OBFrame::grabButtons(bool grab) +{ + if (grab) { + // grab simple button clicks on the client, but pass them through too + otk::OBDisplay::grabButton(Button1, 0, _plate.window(), true, + ButtonPressMask, GrabModeSync, GrabModeSync, + _plate.window(), None, false); + otk::OBDisplay::grabButton(Button2, 0, _plate.window(), true, + ButtonPressMask, GrabModeSync, GrabModeSync, + _plate.window(), None, false); + otk::OBDisplay::grabButton(Button3, 0, _plate.window(), true, + ButtonPressMask, GrabModeSync, GrabModeSync, + _plate.window(), None, false); + otk::OBDisplay::grabButton(Button4, 0, _plate.window(), true, + ButtonPressMask, GrabModeSync, GrabModeSync, + _plate.window(), None, false); + otk::OBDisplay::grabButton(Button5, 0, _plate.window(), true, + ButtonPressMask, GrabModeSync, GrabModeSync, + _plate.window(), None, false); + } else { + } + + // grab any requested buttons on the entire frame + if (grab) { + + otk::OBDisplay::grabButton(Button1, 0, _plate.window(), true, + ButtonPressMask, GrabModeSync, GrabModeSync, + _plate.window(), None, false); + } else { + } +} + + void OBFrame::setTitle(const std::string &text) { _label.setText(text); -- cgit v1.2.3