Source Code (Use browser search to find items of interest.)
Class Index
kicker'ButtonContainer (./kdebase/kicker/appletcontainer.h:71)
class ButtonContainer : public AppletContainer
{
Q_OBJECT;
public:
ButtonContainer(QWidget* parent = 0);
// not needed for buttons
virtual QCString objId() const { return ""; }
virtual QString command() const { return QString::null; }
// buttons have a quadratic shape
virtual int widthForHeight(int height) { return height; }
virtual int heightForWidth(int width) { return width; }
virtual void setPosition(Position p);
virtual void setOrientation(Orientation o);
virtual QString configData();
bool eventFilter (QObject *, QEvent *);
protected:
void embedButton(PanelButton* p);
protected:
PanelButton *_button;
QLayout *_layout;
};
// KMenuButton container
kicker'ButtonContainer::ButtonContainer() (./kdebase/kicker/appletcontainer.cpp:189)
ButtonContainer::ButtonContainer(QWidget* parent)
: AppletContainer(parent)
, _button(0)
, _layout(0) {}
kicker'ButtonContainer::configData() (./kdebase/kicker/appletcontainer.cpp:194)
QString ButtonContainer::configData()
{
if(_button)
return _button->configData();
else
return QString::null;
}
kicker'ButtonContainer::setPosition() (./kdebase/kicker/appletcontainer.cpp:202)
void ButtonContainer::setPosition(Position p)
{
if(_button)
_button->setPosition(p);
}
kicker'ButtonContainer::setOrientation() (./kdebase/kicker/appletcontainer.cpp:208)
void ButtonContainer::setOrientation(Orientation o)
{
if(_button)
_button->setOrientation(o);
}
kicker'ButtonContainer::embedButton() (./kdebase/kicker/appletcontainer.cpp:214)
void ButtonContainer::embedButton(PanelButton* b)
{
if (!b) return;
delete _layout;
_layout = new QVBoxLayout(this);
_button = b;
_button->installEventFilter(this);
_layout->add(_button);
connect(_button, SIGNAL(requestSave()), SIGNAL(requestSave()));
}
kicker'ButtonContainer::eventFilter() (./kdebase/kicker/appletcontainer.cpp:227)
bool ButtonContainer::eventFilter (QObject *, QEvent *e)
{
switch (e->type())
{
case QEvent::MouseButtonPress:
{
QMouseEvent* ev = (QMouseEvent*) e;
if ( ev->button() == RightButton )
{
PanelAppletOpMenu mnu(0,0, true);
switch(mnu.exec(getPopupPosition(&mnu)))
{
case PanelAppletOpMenu::Move:
_moveOffset = QPoint(width()/2, height()/2);
emit moveme(this);
break;
case PanelAppletOpMenu::Remove:
emit removeme(this);
break;
case PanelAppletOpMenu::Properties:
if (_button)
_button->properties();
break;
default:
break;
}
return true;
}
else if ( ev->button() == MidButton )
{
_moveOffset = mapFromGlobal(QCursor::pos());
emit moveme(this);
return false;
}
return false;
}
default:
return false;
}
}
// KMenuButton container