#ifndef QUESTIONSET_H
#define QUESTIONSET_H

#include <QWidget>

#include "changeQuestion.h"
#include "paperDef.h"
#include "CBaseWidget.h"
#include "CHttpBll.h"

namespace Ui {
class questionSet;
}

class questionSet : public QWidget
{
    Q_OBJECT

public:
    explicit questionSet(CQuestionStruct &qs, int nOrder, int nTotalSubQuestion, QWidget *parent = nullptr);
    ~questionSet();

    void setUI(const int nLeft, const int nTop, const int nWidth, const int nHeight);
    void showBtn(int nType);
	
	void setGroupInfo(QString sTitle, QString sProgress);
    
	void handinPaper();
signals:
    void previousQuestion(int nOrder);
    void nextQuestion(int nOrder);
    void markedItem(bool bMarked, int nOrder);
    void questionAnswered(bool bAnswered, int nOrder);
    void uploadAnswer(int nOrder, __int64 timeStamp, QString sAnswer);
private slots:
    void onPreviousQuestion();
    void onNextQuestion();
    void onMarkedItem(bool bMarked, int nOrder);
    void onQuestionAnswered(bool bAnswered, int nOrder);
    void onUploadAnswer(int nOrder, __int64 timeStamp, QString sAnswer);
private:
    void initSubQuestionItem(CSubQuestionStruct &subQuestionItem);
    void initBody();
    
    Ui::questionSet *ui;

    changeQuestion *m_pWidgetChangeQuestion;
    CQuestionStruct &m_qs;
    int m_nOrder;
    int m_nTotalSubQuestion;
};

#endif // QUESTIONSET_H
