Added private data pointer members to classes which might be accessed
by style plugins ( KWin has to keep BC for these ). I hope these are all classes that need it. And of course, this change is not binary compatible, but it fortunately doesn't matter much for KWin these days. svn path=/trunk/kdebase/kwin/; revision=90127
This commit is contained in:
parent
d194f74314
commit
18d2c93cea
4 changed files with 35 additions and 0 deletions
16
client.cpp
16
client.cpp
|
@ -85,6 +85,18 @@ private:
|
|||
KWinInternal::Client * m_client;
|
||||
};
|
||||
|
||||
class WindowWrapperPrivate
|
||||
{
|
||||
public:
|
||||
WindowWrapperPrivate() {};
|
||||
};
|
||||
|
||||
class ClientPrivate
|
||||
{
|
||||
public:
|
||||
ClientPrivate() {};
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
// put all externs before the namespace statement to allow the linker
|
||||
|
@ -187,6 +199,7 @@ const long ClientWinMask = KeyPressMask | KeyReleaseMask |
|
|||
WindowWrapper::WindowWrapper( WId w, Client *parent, const char* name)
|
||||
: QWidget( parent, name )
|
||||
{
|
||||
d = new WindowWrapperPrivate;
|
||||
win = w;
|
||||
|
||||
setMouseTracking( TRUE );
|
||||
|
@ -226,6 +239,7 @@ WindowWrapper::WindowWrapper( WId w, Client *parent, const char* name)
|
|||
WindowWrapper::~WindowWrapper()
|
||||
{
|
||||
releaseWindow();
|
||||
delete d;
|
||||
}
|
||||
|
||||
|
||||
|
@ -460,6 +474,7 @@ bool WindowWrapper::x11Event( XEvent * e)
|
|||
Client::Client( Workspace *ws, WId w, QWidget *parent, const char *name, WFlags f )
|
||||
: QWidget( parent, name, f | WStyle_Customize | WStyle_NoBorder )
|
||||
{
|
||||
d = new ClientPrivate;
|
||||
wspace = ws;
|
||||
win = w;
|
||||
autoRaiseTimer = 0;
|
||||
|
@ -553,6 +568,7 @@ Client::~Client()
|
|||
workspace()->setFocusChangeEnabled(true); // Safety
|
||||
|
||||
delete info;
|
||||
delete d;
|
||||
}
|
||||
|
||||
|
||||
|
|
7
client.h
7
client.h
|
@ -24,6 +24,9 @@ class Workspace;
|
|||
class Client;
|
||||
class WinInfo;
|
||||
|
||||
class WindowWrapperPrivate;
|
||||
class ClientPrivate;
|
||||
|
||||
class WindowWrapper : public QWidget
|
||||
{
|
||||
Q_OBJECT
|
||||
|
@ -56,6 +59,7 @@ private:
|
|||
WId win;
|
||||
Time lastMouseEventTime;
|
||||
bool reparented;
|
||||
WindowWrapperPrivate* d;
|
||||
};
|
||||
|
||||
inline WId WindowWrapper::window() const
|
||||
|
@ -328,6 +332,9 @@ private:
|
|||
static QCString staticWmCommand(WId);
|
||||
static QCString staticWmClientMachine(WId);
|
||||
static Window staticWmClientLeader(WId);
|
||||
|
||||
private:
|
||||
ClientPrivate* d;
|
||||
|
||||
};
|
||||
|
||||
|
|
|
@ -85,6 +85,12 @@ private:
|
|||
KWinInternal::Workspace* workspace;
|
||||
};
|
||||
|
||||
class WorkspacePrivate
|
||||
{
|
||||
public:
|
||||
WorkspacePrivate() {};
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
using namespace KWinInternal;
|
||||
|
@ -234,6 +240,7 @@ Workspace::Workspace( bool restore )
|
|||
keys (0),
|
||||
root (0)
|
||||
{
|
||||
d = new WorkspacePrivate;
|
||||
mgr = new PluginMgr;
|
||||
root = qt_xrootwin();
|
||||
default_colormap = DefaultColormap(qt_xdisplay(), qt_xscreen() );
|
||||
|
@ -410,6 +417,7 @@ Workspace::~Workspace()
|
|||
delete rootInfo;
|
||||
delete supportWindow;
|
||||
delete mgr;
|
||||
delete d;
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -84,6 +84,8 @@ public:
|
|||
static bool noBorder( WId w );
|
||||
};
|
||||
|
||||
class WorkspacePrivate;
|
||||
|
||||
class Workspace : public QObject, virtual public KWinInterface
|
||||
{
|
||||
Q_OBJECT
|
||||
|
@ -379,6 +381,8 @@ private:
|
|||
QTimer resetTimer;
|
||||
|
||||
QTimer focusEnsuranceTimer;
|
||||
|
||||
WorkspacePrivate* d;
|
||||
};
|
||||
|
||||
inline WId Workspace::rootWin() const
|
||||
|
|
Loading…
Reference in a new issue