#ifndef SHEETWIDGET_H
#define SHEETWIDGET_H

#include <QWidget>
#include <QLabel>
#include <QPushButton>
#include "main.h"
#include "setcontrolstyle.h"
#include "promptdialog.h"

#define ROW_NUM          8    //按钮行数
#define COLUMN_NUM    12    //按钮列数

#define RETYPE_X  0
#define RETYPE_Y  1

namespace Ui {
class SheetWidget;
}

class SheetWidget : public QWidget
{
    Q_OBJECT

public:
    explicit SheetWidget(QWidget *parent = 0);
    ~SheetWidget();

private:
    Ui::SheetWidget *ui;

private:
    s16 m_reType;//x、y类型
    int m_btnPerPage;//每页按钮数
    int m_curPages;//花样选择界面当前页数
    int m_pageNums;//总页数
    int m_minValue;
    int m_maxValue;
    QList<QPushButton*> m_sheetBtnList;//表格按钮个数
    QList<QLabel*> m_sheetHLabelList;//横向label
    QList<QLabel*> m_sheetVLabelList;//纵向label
    QList<u16> m_itemXList;//条目数
    QList<u16> m_itemYList;//条目数

    EmbMvAng m_frameAngleParaValues;

private:
    void initWidget();
    void initControl();//初始化窗体控件，包括位置、尺寸、样式
    void initResolution1910();//初始化窗体控件为1920x1080分辨率
    void initResolution1006();
    void initControlStyle();//初始化窗体控件样式
    void initArabControlPos();//设置阿拉伯语时控件对齐方式

    void refreshValues();//刷新参数数值

public:
    void setTypeLogo(QString tStyle);//设置类型图标
    void setMainTitle(QString str);//设置主title
    void setSubTitle(QString str);//设置副title
    void setMinMax();//设置最小最大值

public:
    void refreshPageUi();//刷新界面显示
    void show();

signals:

private slots:
    void slotSheetBtnClicked();//表格中按钮被点击
    void on_buttonPgUp_clicked();
    void on_buttonPgDn_clicked();
    void on_buttonOk_clicked();
    void on_buttonCancel_clicked();
    void on_buttonSwitchXY_clicked();//切换xy
    void on_buttonParaRestore_clicked();

public slots:
    void slotFrameAngleParaChange(int type,int id);//动框角度参数改变
};

#endif // SHEETWIDGET_H
