opcoes.cpp
Ir para a documentação deste ficheiro.00001 #include <QtGui>
00002 #include "opcoes.h"
00003
00004
00005
00006 Opcoes::Opcoes(QWidget *parent, Qt::WFlags f) : QWidget(parent, f)
00007 {
00008 setupUi(this);
00009 setWindowFlags(f & (~Qt::WindowMaximizeButtonHint));
00010
00011
00012 QObject::connect(buttonBox, SIGNAL(accepted()), this, SLOT(aceitou()));
00013 QObject::connect(buttonBox, SIGNAL(rejected()), this, SLOT(close()));
00014 }
00015
00016
00017
00018 void Opcoes::setMundo(Mundo *m)
00019 {
00020 mundo = m;
00021 }
00022
00023
00024
00025 void Opcoes::setBarras(QScrollBar *x, QScrollBar *y)
00026 {
00027 barX = x;
00028 barY = y;
00029 }
00030
00031
00032
00033 void Opcoes::showEvent ( QShowEvent * event )
00034 {
00035 Q_UNUSED(event)
00036
00037
00038 spinTeto->setValue(mundo->propriedades.teto_energetico);
00039 spinGrao->setValue(mundo->propriedades.energia_grao);
00040 spinProbabilidade->setValue(mundo->propriedades.probabilidade_mutacao);
00041 spinIntensidade->setValue(mundo->propriedades.intensidade_mutacao);
00042 spinHorizontal->setValue(mundo->propriedades.tamanho_x);
00043 spinVertical->setValue(mundo->propriedades.tamanho_y);
00044 }
00045
00046
00047
00048 void Opcoes::aceitou()
00049 {
00050
00051 mundo->propriedades.teto_energetico = spinTeto->value();
00052 mundo->propriedades.energia_grao = spinGrao->value();
00053 mundo->propriedades.probabilidade_mutacao = spinProbabilidade->value();
00054 mundo->propriedades.intensidade_mutacao = spinIntensidade->value();
00055 mundo->propriedades.tamanho_x = spinHorizontal->value();
00056 mundo->propriedades.tamanho_y = spinVertical->value();
00057
00058
00059 barX->setRange(0, mundo->propriedades.tamanho_x);
00060 barY->setRange(0, mundo->propriedades.tamanho_y);
00061
00062 if (checkPadrao->isChecked())
00063 {
00064
00065
00066 FILE *arq = fopen("simvida.cfg", "w");
00067
00068 fprintf(arq, "%d\n%d\n%d\n%d\n%d\n%d\n",
00069 mundo->propriedades.tamanho_x,
00070 mundo->propriedades.tamanho_y,
00071 mundo->propriedades.energia_grao,
00072 mundo->propriedades.teto_energetico,
00073 mundo->propriedades.probabilidade_mutacao,
00074 mundo->propriedades.intensidade_mutacao);
00075
00076
00077 fclose(arq);
00078 }
00079
00080 close();
00081 }
00082
00083