MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); network_ = new Network(this); connect(network_,SIGNAL(listUpdated()), this,SLOT(onRedraw())); this->setFixedSize(this->size()); //QTextCodec::setCodecForLocale(QTextCodec::codecForName("CP-866")); QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8")); ui->listWidget->setContextMenuPolicy(Qt::CustomContextMenu); QAction *act; modeMenu_ = new QMenu(this); act = new QAction(tr("Telnet mode"),this); connect(act,SIGNAL(triggered()),this,SLOT(runTelnet())); modeMenu_->addAction(act); act = new QAction(tr("File mode"),this); connect(act,SIGNAL(triggered()),this,SLOT(runFile())); modeMenu_->addAction(act); act = new QAction(tr("Graphics mode"),this); connect(act,SIGNAL(triggered()),this,SLOT(runGraph())); modeMenu_->addAction(act); modeMenu_->addSeparator(); act = new QAction(tr("Options"),this); connect(act,SIGNAL(triggered()),this,SLOT(runOptions())); modeMenu_->addAction(act); }
/** * Start level under pressed button. * Start pedometer when level is solved already. */ void WorldMap::runSelected() { Level *level = createSelected(); if (level) { m_levelStatus->prepareRun(m_selected->getCodename(), m_selected->getPoster(), m_selected->getBestMoves(), m_selected->getBestAuthor()); level->fillStatus(m_levelStatus); if (m_selected->getState() == LevelNode::STATE_SOLVED) { Pedometer *pedometer = new Pedometer(m_levelStatus, level); pushState(pedometer); } else { pushState(level); } } else { if (m_activeMask == m_maskIntro) { runIntro(); } else if (m_activeMask == m_maskExit) { quitState(); } else if (m_activeMask == m_maskCredits) { runCredits(); } else if (m_activeMask == m_maskOptions) { runOptions(); } } }