19Bridge::Bridge( Client* cl )
28#define BRIDGE_HELPER( rettype, prototype, args1, args2, cst ) \
29rettype Bridge::prototype ( args1 ) cst \
31 return c->prototype( args2 ); \
34BRIDGE_HELPER(
bool, isActive,,,
const )
35BRIDGE_HELPER(
bool, isCloseable,,, const )
36BRIDGE_HELPER(
bool, isMaximizable,,, const )
37BRIDGE_HELPER( Bridge::MaximizeMode, maximizeMode,,, const )
38BRIDGE_HELPER(
bool, isMinimizable,,, const )
39BRIDGE_HELPER(
bool, providesContextHelp,,, const )
40BRIDGE_HELPER(
int, desktop,,, const )
41BRIDGE_HELPER(
bool, isModal,,, const )
42BRIDGE_HELPER(
bool, isShadeable,,, const )
43BRIDGE_HELPER(
bool, isShade,,, const )
44BRIDGE_HELPER(
bool, keepAbove,,, const )
45BRIDGE_HELPER(
bool, keepBelow,,, const )
46BRIDGE_HELPER(
bool, isMovable,,, const )
47BRIDGE_HELPER(
bool, isResizable,,, const )
48BRIDGE_HELPER( TQString, caption,,, const )
49BRIDGE_HELPER(
void, processMousePressEvent, TQMouseEvent* e, e, )
50BRIDGE_HELPER( TQRect, geometry,,, const )
51BRIDGE_HELPER(
void, closeWindow,,, )
52BRIDGE_HELPER(
void, maximize, MaximizeMode m, m, )
53BRIDGE_HELPER(
void, minimize,,, )
54BRIDGE_HELPER(
void, showContextHelp,,, )
55BRIDGE_HELPER(
void, setDesktop,
int desktop, desktop, )
57void Bridge::setKeepAbove(
bool set )
59 if( c->keepAbove() != set )
60 c->workspace()->performWindowOperation( c, KeepAboveOp );
63void Bridge::setKeepBelow(
bool set )
65 if( c->keepBelow() != set )
66 c->workspace()->performWindowOperation( c, KeepBelowOp );
69NET::WindowType Bridge::windowType(
unsigned long supported_types )
const
71 return c->windowType(
false, supported_types );
74TQIconSet Bridge::icon()
const
76 return TQIconSet( c->miniIcon(), c->icon());
79bool Bridge::isSetShade()
const
81 return c->shadeMode() != ShadeNone;
84void Bridge::showWindowMenu( TQPoint p )
86 c->workspace()->showWindowMenu( p, c );
89void Bridge::showWindowMenu(
const TQRect &p )
91 c->workspace()->showWindowMenu( p, c );
94void Bridge::performWindowOperation( WindowOperation op )
96 c->workspace()->performWindowOperation( c, op );
99void Bridge::setMask(
const TQRegion& r,
int mode )
101 c->setMask( r, mode );
104bool Bridge::isPreview()
const
109TQRect Bridge::iconGeometry()
const
111 NETRect r = c->info->iconGeometry();
112 return TQRect( r.pos.x, r.pos.y, r.size.width, r.size.height );
115TQWidget* Bridge::workspaceWidget()
const
117 return c->workspace()->desktopWidget();
120WId Bridge::windowId()
const
125void Bridge::titlebarDblClickOperation()
127 c->workspace()->performWindowOperation( c, options->operationTitlebarDblClick());
130void Bridge::titlebarMouseWheelOperation(
int delta )
132 c->performMouseCommand( options->operationTitlebarMouseWheel( delta ), TQCursor::pos());
135void Bridge::setShade(
bool set )
137 c->setShade( set ? ShadeNormal : ShadeNone );
140int Bridge::currentDesktop()
const
142 return c->workspace()->currentDesktop();
145TQWidget* Bridge::initialParentWidget()
const
150TQt::WFlags Bridge::initialWFlags()
const
155void Bridge::helperShowHide(
bool show )
163TQRegion Bridge::unobscuredRegion(
const TQRegion& r )
const
166 const ClientList stacking_order = c->workspace()->stackingOrder();
167 ClientList::ConstIterator it = stacking_order.find( c );
170 it != stacking_order.end();
173 if( !(*it)->isShown(
true ))
175 if( c->isOnAllDesktops())
177 if( !(*it)->isOnCurrentDesktop())
182 if( !(*it)->isOnDesktop( c->desktop()))
188 int dx = (*it)->x() - c->x();
189 int dy = (*it)->y() - c->y();
190 TQRegion creg = (*it)->mask();
191 creg.translate(dx, dy);
202void Bridge::grabXServer(
bool grab )
205 KWinInternal::grabXServer();
207 KWinInternal::ungrabXServer();