Source Code (Use browser search to find items of interest.)
Class Index
kicker'DockAreaApplet (./kdebase/kicker/internalapplets/dock/dockapplet.h:21)
class DockAreaApplet : public InternalApplet
{
Q_OBJECT
public:
DockAreaApplet( QWidget* parent, const char* name = 0 );
~DockAreaApplet();
int widthForHeight(int h);
int heightForWidth(int w);
protected:
void resizeEvent( QResizeEvent* );
void paintEvent( QPaintEvent* );
private slots:
void dockWindowAdd( WId );
void updateDockWindows();
void layoutDockingArea();
private:
QList<KXEmbed> m_Docks;
};
kicker'DockAreaApplet::DockAreaApplet() (./kdebase/kicker/internalapplets/dock/dockapplet.cpp:41)
DockAreaApplet::DockAreaApplet( QWidget* parent, const char* name )
: InternalApplet( parent, name )
{
connect( kwin_module, SIGNAL( dockWindowAdd(WId) ), this, SLOT( dockWindowAdd(WId) ) );
connect( kwin_module, SIGNAL( dockWindowRemove(WId) ), this, SLOT( updateDockWindows() ) );
m_Docks.setAutoDelete(true);
}
kicker'DockAreaApplet::~DockAreaApplet() (./kdebase/kicker/internalapplets/dock/dockapplet.cpp:50)
DockAreaApplet::~DockAreaApplet()
{
m_Docks.clear();
}
kicker'DockAreaApplet::paintEvent() (./kdebase/kicker/internalapplets/dock/dockapplet.cpp:55)
void DockAreaApplet::paintEvent( QPaintEvent* )
{
QPainter p( this );
style().drawPanel( &p, 0, 0, width(), height(), colorGroup(), TRUE );
}
kicker'DockAreaApplet::widthForHeight() (./kdebase/kicker/internalapplets/dock/dockapplet.cpp:61)
int DockAreaApplet::widthForHeight(int)
{
if (m_Docks.count() < 1)
return 32;
else
return m_Docks.count()*24 + 8;
}
kicker'DockAreaApplet::heightForWidth() (./kdebase/kicker/internalapplets/dock/dockapplet.cpp:69)
int DockAreaApplet::heightForWidth(int)
{
if (m_Docks.count() < 1)
return 32;
else
return m_Docks.count()*24 + 8;
}
kicker'DockAreaApplet::resizeEvent() (./kdebase/kicker/internalapplets/dock/dockapplet.cpp:77)
void DockAreaApplet::resizeEvent( QResizeEvent* )
{
layoutDockingArea();
}
kicker'DockAreaApplet::dockWindowAdd() (./kdebase/kicker/internalapplets/dock/dockapplet.cpp:82)
void DockAreaApplet::dockWindowAdd( WId w )
{
KXEmbed *emb = new KXEmbed(this);
connect(emb, SIGNAL(embeddedWindowDestroyed()), SLOT(updateDockWindows()));
m_Docks.append(emb);
emb->embed(w);
emb->resize(24, 24);
emb->show();
layoutDockingArea();
}
kicker'DockAreaApplet::updateDockWindows() (./kdebase/kicker/internalapplets/dock/dockapplet.cpp:95)
void DockAreaApplet::updateDockWindows()
{
KXEmbed *emb = m_Docks.first();
while ((emb = m_Docks.current()) != 0L) {
WId wid = emb->embeddedWinId();
if ((wid == 0) || !kwin_module->dockWindows().contains(wid))
m_Docks.remove(emb);
else
m_Docks.next();
}
layoutDockingArea();
}
kicker'DockAreaApplet::layoutDockingArea() (./kdebase/kicker/internalapplets/dock/dockapplet.cpp:108)
void DockAreaApplet::layoutDockingArea()
{
if (m_Docks.count() == 0) {
setMinimumSize(0, 0);
hide();
return;
}
int i;
KXEmbed *emb;
if (orientation() == Vertical) {
i = 0;
for (emb = m_Docks.first(); emb != 0L; emb = m_Docks.next()) {
emb->move(width()/2-12, 2 + i*24);
i++;
}
}
else {
i = 0;
for (emb = m_Docks.first(); emb != 0L; emb = m_Docks.next()) {
emb->move(2 + i*24, height()/2-12);
i++;
}
}
updateGeometry();
show();
}