diff options
author | Bjørn Lindeijer <bjorn@lindeijer.nl> | 2007-03-24 16:24:43 +0000 |
---|---|---|
committer | Bjørn Lindeijer <bjorn@lindeijer.nl> | 2007-03-24 16:24:43 +0000 |
commit | bfbb797e6c528e0650826e917d498c52362abbb0 (patch) | |
tree | 8d111b92eefe8451a66b57599217829b4127318e /src/gui/register.h | |
parent | dae5c721bf974792db526f1d736384d95a75635e (diff) | |
download | mana-bfbb797e6c528e0650826e917d498c52362abbb0.tar.gz mana-bfbb797e6c528e0650826e917d498c52362abbb0.tar.bz2 mana-bfbb797e6c528e0650826e917d498c52362abbb0.tar.xz mana-bfbb797e6c528e0650826e917d498c52362abbb0.zip |
Merged 0.0 changes from revision 3177 to 3234 to trunk.
Diffstat (limited to 'src/gui/register.h')
-rw-r--r-- | src/gui/register.h | 37 |
1 files changed, 31 insertions, 6 deletions
diff --git a/src/gui/register.h b/src/gui/register.h index 4ffe451f..088e8f9b 100644 --- a/src/gui/register.h +++ b/src/gui/register.h @@ -26,23 +26,39 @@ #include <iosfwd> #include <guichan/actionlistener.hpp> +#include <guichan/keylistener.hpp> #include "window.h" #include "../guichanfwd.h" class LoginData; class OkDialog; -class WrongDataNoticeListener; /** - * The login dialog. + * Listener used while dealing with wrong data. It is used to direct the focus + * to the field which contained wrong data when the Ok button was pressed on + * the error notice. + */ +class WrongDataNoticeListener : public gcn::ActionListener { + public: + void setTarget(gcn::TextField *textField); + void action(const gcn::ActionEvent &event); + private: + gcn::TextField *mTarget; +}; + +/** + * The registration dialog. * * \ingroup Interface */ -class RegisterDialog : public Window, public gcn::ActionListener { +class RegisterDialog : public Window, public gcn::ActionListener, + public gcn::KeyListener +{ public: /** - * Constructor + * Constructor. Name, password and server fields will be initialized to + * the information already present in the LoginData instance. * * @see Window::Window */ @@ -58,10 +74,19 @@ class RegisterDialog : public Window, public gcn::ActionListener { */ void action(const gcn::ActionEvent &event); - // Made them public to have the possibility to request focus - // from external functions. + /** + * Called when a key is pressed in one of the text fields. + */ + void keyPressed(gcn::KeyEvent &keyEvent); private: + /** + * Returns whether submit can be enabled. This is true in the register + * state, when all necessary fields have some text. + */ + bool + canSubmit(); + gcn::TextField *mUserField; gcn::TextField *mPasswordField; gcn::TextField *mConfirmField; |