summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog2
-rw-r--r--src/Makefile.am2
-rw-r--r--src/gui/error.cpp39
-rw-r--r--src/gui/error.h51
-rw-r--r--src/main.cpp19
5 files changed, 19 insertions, 94 deletions
diff --git a/ChangeLog b/ChangeLog
index d9ae102d..a82c8b4f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,7 @@
2006-02-01 Björn Steinbrink <B.Steinbrink@gmx.de>
+ * src/Makefile.am, src/main.cpp, src/gui/error.cpp, src/gui/error.h:
+ Replaced ErrorDialog by OkDialog + listener.
* src/Makefile.am, src/game.cpp, src/gui/buysell.cpp,
src/gui/char_select.cpp, src/gui/confirm_dialog.cpp,
src/gui/confirm_dialog.h, src/gui/login.cpp, src/gui/login.h,
diff --git a/src/Makefile.am b/src/Makefile.am
index a5d8b6bf..79512e66 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -32,8 +32,6 @@ tmw_SOURCES = graphic/spriteset.cpp \
gui/debugwindow.h \
gui/equipmentwindow.cpp \
gui/equipmentwindow.h \
- gui/error.cpp \
- gui/error.h \
gui/focushandler.cpp \
gui/focushandler.h \
gui/gccontainer.cpp \
diff --git a/src/gui/error.cpp b/src/gui/error.cpp
deleted file mode 100644
index 3d33c665..00000000
--- a/src/gui/error.cpp
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * The Mana World
- * Copyright 2004 The Mana World Development Team
- *
- * This file is part of The Mana World.
- *
- * The Mana World is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * any later version.
- *
- * The Mana World is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with The Mana World; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- *
- * $Id$
- */
-
-#include "error.h"
-
-#include "../main.h"
-
-ErrorDialog::ErrorDialog(const std::string &msg):
- OkDialog("Error", msg)
-{
-}
-
-void ErrorDialog::action(const std::string& eventId)
-{
- if (eventId == "ok")
- {
- state = LOGIN_STATE;
- }
-}
diff --git a/src/gui/error.h b/src/gui/error.h
deleted file mode 100644
index 20544358..00000000
--- a/src/gui/error.h
+++ /dev/null
@@ -1,51 +0,0 @@
-/*
- * The Mana World
- * Copyright 2004 The Mana World Development Team
- *
- * This file is part of The Mana World.
- *
- * The Mana World is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * any later version.
- *
- * The Mana World is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with The Mana World; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- *
- * $Id$
- */
-
-#ifndef _TMW_ERROR_H
-#define _TMW_ERROR_H
-
-#include <iosfwd>
-
-#include "ok_dialog.h"
-
-/**
- * The error dialog.
- *
- * \ingroup Interface
- */
-class ErrorDialog : public OkDialog {
- public:
- /**
- * Constructor
- *
- * @see Window::Window
- */
- ErrorDialog(const std::string &msg);
-
- /**
- * Called when receiving actions from the widgets.
- */
- void action(const std::string& eventId);
-};
-
-#endif
diff --git a/src/main.cpp b/src/main.cpp
index 9c45614b..28502b5e 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -29,6 +29,8 @@
#include <unistd.h>
#include <SDL_image.h>
+#include <guichan/actionlistener.hpp>
+
#include <guichan/sdl/sdlinput.hpp>
#include <libxml/parser.h>
@@ -58,9 +60,9 @@
#include "gui/char_server.h"
#include "gui/char_select.h"
#include "gui/connection.h"
-#include "gui/error.h"
#include "gui/gui.h"
#include "gui/login.h"
+#include "gui/ok_dialog.h"
#include "gui/register.h"
#include "gui/updatewindow.h"
#include "gui/textfield.h"
@@ -108,6 +110,17 @@ Uint32 nextFrame(Uint32 interval, void *param)
return interval;
}
+struct ErrorListener : public gcn::ActionListener
+{
+ void action(const std::string& eventId)
+ {
+ if (eventId == "ok")
+ {
+ state = LOGIN_STATE;
+ }
+ }
+} errorListener;
+
/**
* Do all initialization stuff
*/
@@ -620,7 +633,9 @@ int main(int argc, char *argv[])
case ERROR_STATE:
logger->log("State: ERROR");
- currentDialog = new ErrorDialog(errorMessage);
+ currentDialog = new OkDialog("Error", errorMessage);
+ currentDialog->addActionListener(&errorListener);
+ currentDialog = NULL; // OkDialog deletes itself
network->disconnect();
network->clearHandlers();
break;