summaryrefslogtreecommitdiff
path: root/src/gui/login.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/gui/login.h')
-rw-r--r--src/gui/login.h45
1 files changed, 22 insertions, 23 deletions
diff --git a/src/gui/login.h b/src/gui/login.h
index 9fd866aa..ca50df96 100644
--- a/src/gui/login.h
+++ b/src/gui/login.h
@@ -28,9 +28,23 @@
#include <guichan/actionlistener.hpp>
#include <SDL_events.h>
+#include "ok_dialog.h"
#include "window.h"
#include "../guichanfwd.h"
+class LoginDialog;
+
+/**
+ * Listener used for handling wrong data.
+ */
+class WrongDataNoticeListener : public gcn::ActionListener {
+ public:
+ void setTarget(gcn::TextField *textField);
+ void action(const std::string &eventId);
+ private:
+ gcn::TextField *target;
+};
+
/**
* The login dialog.
*
@@ -44,6 +58,11 @@ class LoginDialog : public Window, public gcn::ActionListener {
* @see Window::Window
*/
LoginDialog();
+
+ /**
+ * Destructor
+ */
+ ~LoginDialog();
/**
* Called when receiving actions from the widgets.
@@ -74,32 +93,12 @@ class LoginDialog : public Window, public gcn::ActionListener {
void attemptLogin(const std::string& user, const std::string& pass);
void checkLogin();
+
+ WrongDataNoticeListener *wrongDataNoticeListener;
+ OkDialog *wrongLoginNotice;
};
/**
- * Listener used for handling wrong password.
- */
-class WrongPasswordNoticeListener : public gcn::ActionListener {
- public:
- void setLoginDialog(LoginDialog *loginDialog);
- void action(const std::string &eventId);
- private:
- LoginDialog *mLoginDialog;
-};
-
-/**
- * Listener used for handling wrong username.
- */
-class WrongUsernameNoticeListener : public gcn::ActionListener {
- public:
- void setLoginDialog(LoginDialog *loginDialog);
- void action(const std::string &eventId);
- private:
- LoginDialog *mLoginDialog;
-};
-
-
-/**
* Handle input
*/
void loginInputHandler(SDL_KeyboardEvent *keyEvent);