All pastes #2056242 Raw Edit

mainwindow.h

public text v1 · immutable
#2056242 ·published 2011-05-10 13:51 UTC
rendered paste body
#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>
#include <QVBoxLayout>
#include <QHBoxLayout>
#include <QAbstractItemModel>
#include <QSortFilterProxyModel>
#include <QItemSelectionModel>
#include <QToolButton>

#include "CAnswer.h"
#include "CListQuestion.h"
#include "ctestmodel.h"
#include "canswerform.h"

namespace Ui {
    class MainWindow;
}

class MainWindow : public QMainWindow
{
    Q_OBJECT

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

private:
    Ui::MainWindow *ui;

    CTestModel *testModel;
    QSortFilterProxyModel *proxyModel;
    QItemSelectionModel *selectionModel;

    QVBoxLayout *rightVbl;
    QVBoxLayout *testsVbl;
    QWidget *testsWidget;

    QVector<CAnswerForm*> answerList; //вектор виджетов для вывода ответов
    CAnswerForm *curAnswerForm;

    //tool buttons
    QToolButton *loadBtn;
    QToolButton *newBtn;
    QToolButton *saveBtn;
    QToolButton *addQuest;
    QToolButton *delQuest;
    QToolButton *saveQuestBtn;
    QToolButton *addAnswerBtn;
    QToolButton *delAnswerBtn;
    QToolButton *addPictBtn;

    //счетчик добавленных ответов в редактируемый вопрос
    int countAddAnswer;
private: //methods
    void makeInterface();
    void createToolBar();

private slots:
    void on_questTextEdit_textChanged();
    void openFile();
    void saveFile();
    void addQuestion();
    void delQuestion();
    void addAnswer();
    void delAnswer();
    void showSelectedItem( const QItemSelection & selected, const QItemSelection & deselected ); //Выбран вопрос из списка
    void saveItem();//сохранение вопроса
    void rightAnswerChecked(); //Поставлена/снята отметка на ответе
    void answerChanged(); //изменен ответ
    void commentChanged(); //изменен коментарий
    void answerClicked(CAnswerForm *answerForm);

signals:
    void answerAdded(const int &nQuestion, const int &count);
};

#endif // MAINWINDOW_H