#ifndef CAMERAPARAM_H
#define CAMERAPARAM_H

#include <QWidget>

class QVBoxLayout;
class QHBoxLayout;
class QGridLayout;
class QToolButton;
class QLabel;
class QStackedWidget;
class QFrame;
class QLabel;
class QSpacerItem;
class QPushButton;
class QTextEdit;
class QSplitter;

class AWidget;
class BWidget;
class CStackedWidget;
class CTextEdit;

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

    void setIndex(const QString& index);
    void setTitle(const QString& title);
    void setState(const QString& state);

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


private:
    QVBoxLayout* mMainVLayout;

    QWidget* mTopWidget;
    QHBoxLayout* mTopHLayout;
    QToolButton* mIndexButton;
    QLabel* mTitleLabel;
    QLabel* mStateLabel;
    QToolButton* mExtendButton;

    QSplitter* mSplitter;
    CStackedWidget* mStackedWidget;
    AWidget* mAWidget;
    BWidget* mBWidget;
    QTextEdit* mLogTextEdit;
};

#endif // CAMERAPARAM_H
