Brain Trainer Qt (учимся считать в уме или проект выходного дня)
//-- 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();