#ifndef SIDEPANEL_H
#define SIDEPANEL_H

#include <QWidget>

class QVBoxLayout;
class QPushButton;
class QToolButton;
class QSplitter;
class QTabWidget;

class TreeWidget;
class CTextEdit;

class SidePanel : public QWidget
{
    Q_OBJECT
public:
    explicit SidePanel(QWidget* parent = nullptr);
    ~SidePanel();

signals:
    void signalClicked(const QString& txt);

protected:
    void paintEvent(QPaintEvent *e);

private:
    void initUI();
    void createConnections();


private:
    QVBoxLayout* mMainVLayout;

    QSplitter* mSplitter;

    TreeWidget* mTreeWidget;

    QTabWidget* mTabWidget;

    QWidget* mButtonWidget;
    QVBoxLayout* mButtonVLayout;
    QToolButton* mSetupButton;
    QToolButton* mPauseButton;
    QToolButton* mWaitButton;

    CTextEdit* mTextEdit;
};

#endif // SIDEPANEL_H
