#include <QButtonGroup>
#include <QDebug>
-#include <QPainter>
-#include <QRegion>
+#include <QPropertyAnimation>
+#include <QSignalTransition>
+#include <QStackedWidget>
+#include <QStateMachine>
#include "panelbar.h"
#include "panelcontent.h"
TabbedPanel::TabbedPanel(QWidget *parent)
: QWidget(parent),
m_isOpen(false),
- m_activeTab(-1)
+ m_activeTab(-1) ///< @todo magic
{
qDebug() << __PRETTY_FUNCTION__;
+ ///< @todo Do not use this, REMOVE ALL OCCURENCES!
this->resize(PANEL_BAR_TABBED_WIDTH + PANEL_WIDTH, PANEL_HEIGHT);
this->move(PANEL_CLOSED_X, PANEL_TOP_PADDING);
{
qDebug() << __PRETTY_FUNCTION__;
+ ///< @todo magic
return insertTab(-1, widget, icon);
}
{
qDebug() << __PRETTY_FUNCTION__;
+ ///< @todo callers responsibility to call with right parameters
if(!widget)
return -1;
+ ///< @todo magic
int verticalStartPoint = 8;
index = m_panelWidgetStack->insertWidget(index, widget);
m_tabButtonGroup->addButton(new PanelTab(this), index);
m_tabButtonGroup->button(index)->setIcon(icon);
- // [BEGIN]: Purkkaa (to be removed ASAP!!!)
+ ///< @todo [BEGIN]: Purkkaa (to be removed ASAP!!!)
if(index > 0)
verticalStartPoint += 65 * index;
}
}
+///< @todo sort alphabetically (other methods too)
void TabbedPanel::closePanel()
{
qDebug() << __PRETTY_FUNCTION__;
emit toggleState();
}
-void TabbedPanel::setActiveTab(int index)
-{
- qDebug() << __PRETTY_FUNCTION__;
-
- if(m_activeTab == -1) {
- m_activeTab = index;
- m_panelWidgetStack->setCurrentIndex(index);
- emit toggleState();
- } else if(m_activeTab == index) {
- m_activeTab = -1;
- emit toggleState();
- } else {
- m_activeTab = index;
- m_panelWidgetStack->setCurrentIndex(index);
- }
-}
-
void TabbedPanel::resizePanel(const QSize &size)
{
qDebug() << __PRETTY_FUNCTION__;
this->resize(PANEL_BAR_TABBED_WIDTH + PANEL_WIDTH,
size.height() - PANEL_TOP_PADDING - PANEL_BOTTOM_PADDING);
- if(!m_isOpen)
+ if(!m_isOpen) {
this->move(size.width() - PANEL_TAB_WIDTH - PANEL_BAR_WIDTH, PANEL_TOP_PADDING);
- else
+ }
+ else {
this->move(size.width() - PANEL_TAB_WIDTH - PANEL_BAR_WIDTH - PANEL_WIDTH,
PANEL_TOP_PADDING);
+ }
m_panelBar->resizeBar(size);
m_panelContent->resizePanelContent(size);
+ ///< @todo alignment
m_panelStateClosed->assignProperty(this, "pos",
QPoint(size.width() - PANEL_TAB_WIDTH - PANEL_BAR_WIDTH, PANEL_TOP_PADDING));
m_panelStateOpened->assignProperty(this, "pos",
PANEL_TOP_PADDING));
}
+void TabbedPanel::setActiveTab(int index)
+{
+ qDebug() << __PRETTY_FUNCTION__;
+
+ ///< @todo magic
+ ///< @todo short comments?
+ if(m_activeTab == -1) {
+ m_activeTab = index;
+ m_panelWidgetStack->setCurrentIndex(index);
+ emit tabChanged();
+ emit toggleState();
+ } else if(m_activeTab == index) {
+ m_activeTab = -1;
+ emit toggleState();
+ } else {
+ m_activeTab = index;
+ m_panelWidgetStack->setCurrentIndex(index);
+ emit tabChanged();
+ }
+}
+
void TabbedPanel::stateChanged()
{
qDebug() << __PRETTY_FUNCTION__;