Brain Trainer Qt (учимся считать в уме или проект выходного дня)

5gcaj9_zxl5qhdf_fzijrllgjiq.png
//-- create statistic class
    statistict = new Statistic(ui->graph,
                               ui->stat_all_time,
                               ui->stat_exe_correct,
                               ui->stat_exe_passed,
                               ui->stat_exe_wrong);

    //--- create setttings
    settings = new Settings();
    if(settings->init()) {
        statistict->setLastStatistic(
                    settings->getLastAllTime(),
                    settings->getLastExerciseCorect(),
                    settings->getLastExerciseWrong(),
                    settings->getLastExercisePassed());
    } else {
        QMessageBox::critical(this, "Error JSON", "Error opening JSON file!", QMessageBox::Ok);
    }

    //-- create controller
    controller = new Controller();

    //--- create exercise
    exercise = new Exercise();

    //-- create reverse timerClass and connect slot
    timer = new TimerClass();

    connect(timer, SIGNAL(update(QString)), this, SLOT(updateTime(QString)));
    connect(timer, SIGNAL(updateAdvice()), this, SLOT(updateAdvice()));
    connect(timer, SIGNAL(updateLastResult()), this, SLOT(updateLastResult()));

    //-- Set StyleSheet
    QFile styleF;
    styleF.setFileName("./darkstyle/darkstyle.qss");
    styleF.open(QFile::ReadOnly);
    QString qssStr = styleF.readAll();
    qApp->setStyleSheet(qssStr);

    //--- insert control buttons
    controller->addButtonControl(ui->addition_button, Controller::state_addtion);
    controller->addButtonControl(ui->division_button, Controller::state_division);
    controller->addButtonControl(ui->multiplication_button, Controller::state_multiplication);
    controller->addButtonControl(ui->settings_button, Controller::state_settings);
    controller->addButtonControl(ui->statistic_button, Controller::state_statisctic);
    controller->addButtonControl(ui->substraction_button, Controller::state_substraction);
    controller->addResultInput(ui->result_input);

    ui->settings_count_digits->setCurrentIndex(settings->getCountDigiMax()-1);
    ui->settings_use_minus->setCurrentIndex(settings->getUseMinus());
    ui->settings_first_name->setText(settings->getFirstName());
    ui->settings_last_name->setText(settings->getLastName());
    ui->settings_use_advice->setCurrentIndex(settings->getUseAdvice());

    //-- Connect signal-slots
    connect(ui->result_input, SIGNAL(returnPressed()), this, SLOT(resultInputEditFinished()));
    connect(controller, SIGNAL(changeStateAddition()), this, SLOT(updateStateAddition()));
    connect(controller, SIGNAL(changeStateMultiplication()), this, SLOT(updateStateMultiplication()));
    connect(controller, SIGNAL(changeStateSettings()), this, SLOT(updateStateSettings()));
    connect(controller, SIGNAL(changeStateStatistic()), this, SLOT(updateStateStatistic()));
    connect(controller, SIGNAL(changeStateSubstraction()), this, SLOT(updateStateSubstraction()));
    connect(controller, SIGNAL(changeStateDivision()), this, SLOT(updateStateDivision()));
    connect(ui->settings_count_digits, SIGNAL(currentIndexChanged(int)), this, SLOT(updateCountDigits(int)));
    connect(ui->settings_use_minus, SIGNAL(currentIndexChanged(int)), this, SLOT(updateUseMinus(int)));
    connect(ui->settings_use_advice, SIGNAL(currentIndexChanged(int)), this, SLOT(updateUseAdvice(int)));
    connectSlots();


© Habrahabr.ru