77 lines
2.0 KiB
C++
77 lines
2.0 KiB
C++
#include "mainwindow.h"
|
|
#include "ui_mainwindow.h"
|
|
#include "alienmodel.h"
|
|
|
|
|
|
MainWindow::MainWindow(QWidget *parent) :
|
|
QMainWindow(parent),
|
|
ui(new Ui::MainWindow)
|
|
{
|
|
ui->setupUi(this);
|
|
adloader = new Loader(this);
|
|
adloader->load("data2.xml");
|
|
QAbstractItemModel * model = new AlienModel(adloader->aliens.values());
|
|
ui->lvAliens->setModel(model);
|
|
connect(ui->lvAliens->selectionModel(),SIGNAL(currentChanged(QModelIndex, QModelIndex)),this,SLOT(lvAliens_select(QModelIndex, QModelIndex)));
|
|
ui->lvAliens->selectionModel()->setCurrentIndex(ui->lvAliens->model()->index(0,0),QItemSelectionModel::Select);
|
|
}
|
|
|
|
|
|
MainWindow::~MainWindow()
|
|
{
|
|
delete ui;
|
|
}
|
|
|
|
|
|
void MainWindow::changeEvent(QEvent *e)
|
|
{
|
|
QMainWindow::changeEvent(e);
|
|
switch (e->type()) {
|
|
case QEvent::LanguageChange:
|
|
ui->retranslateUi(this);
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
|
|
|
|
void MainWindow::on_cbAlArmor_toggled(bool checked)
|
|
{
|
|
ui->sbAlArmor->setEnabled(checked);
|
|
}
|
|
|
|
|
|
void MainWindow::on_cbAlRegeneration_toggled(bool checked)
|
|
{
|
|
ui->sbAlregeneration->setEnabled(checked);
|
|
}
|
|
|
|
|
|
void MainWindow::lvAliens_select(QModelIndex index, QModelIndex)
|
|
{
|
|
tbAlien al = adloader->aliens.values().at(index.row());
|
|
ui->leAlName->setText(al.name);
|
|
ui->sbAlHealth->setValue(al.health);
|
|
ui->sbAlArmor->setValue(al.armor);
|
|
if (al.armor > 0) ui->cbAlArmor->setChecked(true);
|
|
else ui->cbAlArmor->setChecked(false);
|
|
ui->sbAlSpeed->setValue(al.speed);
|
|
ui->sbAlPrise->setValue(al.prise);
|
|
ui->sbAlregeneration->setValue(al.regeneration);
|
|
if (al.regeneration > 0) ui->cbAlRegeneration->setChecked(true);
|
|
else ui->cbAlRegeneration->setChecked(false);
|
|
ui->sbAlScore->setValue(al.score);
|
|
ui->cbAlIsFly->setChecked(al.isFlying);
|
|
}
|
|
|
|
|
|
void MainWindow::on_pbSave_clicked()
|
|
{
|
|
adloader->save("data2.xml");
|
|
adloader->load("data2.xml");
|
|
QAbstractItemModel * model = new AlienModel(adloader->aliens.values());
|
|
ui->lvAliens->setModel(model);
|
|
ui->lvAliens->selectionModel()->setCurrentIndex(ui->lvAliens->model()->index(0,0),QItemSelectionModel::Select);
|
|
}
|