You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
61 lines
1.8 KiB
61 lines
1.8 KiB
15 years ago
|
#include "main.h"
|
||
|
#include "main.moc"
|
||
|
|
||
|
#include <klocale.h>
|
||
|
#include <kaction.h>
|
||
|
#include <kstdaction.h>
|
||
|
#include <kkeydialog.h>
|
||
|
#include <kconfigdialog.h>
|
||
|
|
||
|
#include "inter.h"
|
||
|
#include "factory.h"
|
||
|
|
||
|
void MainWindow::addConfig(KConfigDialog *dialog)
|
||
|
{
|
||
|
QWidget *w = cfactory->createAIConfig();
|
||
|
if (w) dialog->addPage(w, i18n("A.I."), "personal");
|
||
|
}
|
||
|
|
||
|
void MainWindow::init()
|
||
|
{
|
||
|
Interface *inter = static_cast<Interface *>(_inter);
|
||
|
inter->normalGame();
|
||
|
setFocusPolicy(StrongFocus);
|
||
|
|
||
|
// Modes
|
||
|
bool ama = ( bfactory->bbi.nbArcadeStages!=0 );
|
||
|
QString s = (ama ? i18n("&Single Human (Normal)") : i18n("&Single Human"));
|
||
|
(void)new KAction(s, 0, inter, SLOT(normalGame()),
|
||
|
actionCollection(), "mp_single_human");
|
||
|
if (ama) (void)new KAction(i18n("&Single Human (Arcade)"), 0,
|
||
|
inter, SLOT(arcadeGame()),
|
||
|
actionCollection(), "mp_arcade");
|
||
|
(void)new KAction(i18n("Human vs &Human"), 0, inter, SLOT(humanVsHuman()),
|
||
|
actionCollection(), "mp_human_vs_human");
|
||
|
(void)new KAction(i18n("Human vs &Computer"), 0,
|
||
|
inter, SLOT(humanVsComputer()),
|
||
|
actionCollection(), "mp_human_vs_computer");
|
||
|
(void)new KAction(i18n("&More..."), 0, inter, SLOT(dialog()),
|
||
|
actionCollection(), "mp_more");
|
||
|
|
||
|
buildGUI(inter);
|
||
|
connect(this, SIGNAL(settingsChanged()),
|
||
|
inter, SLOT(settingsChangedSlot()));
|
||
|
}
|
||
|
|
||
|
void MainWindow::addKeys(KKeyDialog &d)
|
||
|
{
|
||
|
static_cast<Interface *>(_inter)->addKeys(d);
|
||
|
}
|
||
|
|
||
|
void MainWindow::saveKeys()
|
||
|
{
|
||
|
static_cast<Interface *>(_inter)->saveKeys();
|
||
|
}
|
||
|
|
||
|
void MainWindow::focusInEvent(QFocusEvent *e)
|
||
|
{
|
||
|
static_cast<Interface *>(_inter)->setFocus();
|
||
|
BaseMainWindow::focusInEvent(e);
|
||
|
}
|