{
qDebug() << __PRETTY_FUNCTION__;
+ currentType = SidePanel::None;
m_panelVBox = new QVBoxLayout(this);
m_panelVBox->setMargin(0);
m_panelVBox->setContentsMargins(SLIDINGBAR_WIDTH+1, 0, SIDEBAR_WIDTH, 0);
void SidePanel::setType(SidePanel::PanelType type)
{
qDebug() << __PRETTY_FUNCTION__;
- if(type == SidePanel::UserPanel) {
- currentType = type;
- m_panelBase->move(TOP_CORNER_X,PANEL_TOP_Y);
- m_panelBase->resize(USERPANEL_WIDTH, SLIDINGBAR_HEIGHT + MARGIN_CORRECTION);
-
- PanelSliderBar *m_panelSlidingBar = new PanelSliderBar(this, LEFT);
- m_panelSlidingBar->move(USERPANEL_WIDTH - SLIDINGBAR_WIDTH, PANEL_TOP_Y);
-
- connect(m_panelSlidingBar, SIGNAL(clicked()),
- this, SIGNAL(toggleState()));
-
- // set mask to allow clicking zoom button at their default position
- setMask(QPixmap(":/res/images/userpanel_mask.png").mask());
-
- m_panelStateClosed->assignProperty(this, "pos", QPoint(
- USERPANEL_CLOSED_X, PANEL_TOP_Y));
- m_panelStateOpened->assignProperty(this, "pos", QPoint(
- USERPANEL_OPENED_X, PANEL_TOP_Y));
- setObjectName("UserPanel");
- }
- else if (type == SidePanel::FriendPanel) {
- currentType = type;
- m_panelBase->move(TOP_CORNER_X + SLIDINGBAR_WIDTH,PANEL_TOP_Y);
- m_panelBase->resize(FRIENDPANEL_WIDTH, FRIENDPANEL_HEIGHT);
-
- m_panelSlidingBar = new PanelSliderBar(this, RIGHT);
- m_panelSlidingBar->move(TOP_CORNER_X, PANEL_TOP_Y);
-
- connect(m_panelSlidingBar, SIGNAL(clicked()),
- this, SIGNAL(toggleState()));
-
- m_panelStateClosed->assignProperty(this, "pos", QPoint(
- FRIENDPANEL_CLOSED_X, PANEL_TOP_Y));
- m_panelStateOpened->assignProperty(this, "pos", QPoint(
- FRIENDPANEL_OPENED_X, PANEL_TOP_Y));
- setObjectName("FriendPanel");
+ if(currentType == SidePanel::None) {
+ if(type == SidePanel::UserPanel) {
+ currentType = type;
+ m_panelBase->move(TOP_CORNER_X,PANEL_TOP_Y);
+ m_panelBase->resize(USERPANEL_WIDTH, SLIDINGBAR_HEIGHT + MARGIN_CORRECTION);
+
+ PanelSliderBar *m_panelSlidingBar = new PanelSliderBar(this, LEFT);
+ m_panelSlidingBar->move(USERPANEL_WIDTH - SLIDINGBAR_WIDTH, PANEL_TOP_Y);
+
+ connect(m_panelSlidingBar, SIGNAL(clicked()),
+ this, SIGNAL(toggleState()));
+
+ // set mask to allow clicking zoom button at their default position
+ setMask(QPixmap(":/res/images/userpanel_mask.png").mask());
+
+ m_panelStateClosed->assignProperty(this, "pos", QPoint(
+ USERPANEL_CLOSED_X, PANEL_TOP_Y));
+ m_panelStateOpened->assignProperty(this, "pos", QPoint(
+ USERPANEL_OPENED_X, PANEL_TOP_Y));
+ setObjectName("UserPanel");
+ }
+ else if (type == SidePanel::FriendPanel) {
+ currentType = type;
+ m_panelBase->move(TOP_CORNER_X + SLIDINGBAR_WIDTH,PANEL_TOP_Y);
+ m_panelBase->resize(FRIENDPANEL_WIDTH, FRIENDPANEL_HEIGHT);
+
+ m_panelSlidingBar = new PanelSliderBar(this, RIGHT);
+ m_panelSlidingBar->move(TOP_CORNER_X, PANEL_TOP_Y);
+
+ connect(m_panelSlidingBar, SIGNAL(clicked()),
+ this, SIGNAL(toggleState()));
+
+ m_panelStateClosed->assignProperty(this, "pos", QPoint(
+ FRIENDPANEL_CLOSED_X, PANEL_TOP_Y));
+ m_panelStateOpened->assignProperty(this, "pos", QPoint(
+ FRIENDPANEL_OPENED_X, PANEL_TOP_Y));
+ setObjectName("FriendPanel");
+ }
+ else {
+ qFatal("Illegal type set for SidePanel::setType");
+ }
+ m_panelStateMachine->start();
+ show();
}
else {
- qFatal("Illegal type set for SidePanel::setType");
+ qWarning() << "Illegally tried to set type multiple times at SidePanel::setType";
}
- m_panelStateMachine->start();
- show();
}
void SidePanel::stateChangedToClosed()