summaryrefslogtreecommitdiff
path: root/src/gui/login.cpp
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2011-05-12 01:09:56 +0300
committerAndrei Karas <akaras@inbox.ru>2011-05-12 01:09:56 +0300
commit8edbf5c3879850bb8546a1cb96ba713ef35c1d41 (patch)
treee65efd1cf38a831b333816b8b3c0efb03044f467 /src/gui/login.cpp
parent5969220af9a8d9ff1958cf64cbbaa9bbf911e8d2 (diff)
downloadplus-8edbf5c3879850bb8546a1cb96ba713ef35c1d41.tar.gz
plus-8edbf5c3879850bb8546a1cb96ba713ef35c1d41.tar.bz2
plus-8edbf5c3879850bb8546a1cb96ba713ef35c1d41.tar.xz
plus-8edbf5c3879850bb8546a1cb96ba713ef35c1d41.zip
Renaming login, sell, trade (cpp, h) files to correct names.
Diffstat (limited to 'src/gui/login.cpp')
-rw-r--r--src/gui/login.cpp235
1 files changed, 0 insertions, 235 deletions
diff --git a/src/gui/login.cpp b/src/gui/login.cpp
deleted file mode 100644
index d910d37bc..000000000
--- a/src/gui/login.cpp
+++ /dev/null
@@ -1,235 +0,0 @@
-/*
- * The ManaPlus Client
- * Copyright (C) 2004-2009 The Mana World Development Team
- * Copyright (C) 2009-2010 The Mana Developers
- * Copyright (C) 2011 The ManaPlus Developers
- *
- * This file is part of The ManaPlus Client.
- *
- * This program 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.
- *
- * This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include "gui/login.h"
-
-#include "client.h"
-#include "configuration.h"
-
-#include "gui/okdialog.h"
-#include "gui/sdlinput.h"
-
-#include "gui/widgets/button.h"
-#include "gui/widgets/checkbox.h"
-#include "gui/widgets/dropdown.h"
-#include "gui/widgets/label.h"
-#include "gui/widgets/layout.h"
-#include "gui/widgets/passwordfield.h"
-#include "gui/widgets/textfield.h"
-
-#include "net/logindata.h"
-#include "net/loginhandler.h"
-#include "net/net.h"
-
-#include "utils/gettext.h"
-#include "utils/stringutils.h"
-
-static const int MAX_SERVER_LIST_SIZE = 15;
-static const int LOGIN_DIALOG_WIDTH = 300;
-static const int LOGIN_DIALOG_HEIGHT = 140;
-static const int FIELD_WIDTH = LOGIN_DIALOG_WIDTH - 70;
-
-std::string LoginDialog::savedPassword = "";
-std::string LoginDialog::savedPasswordKey = "";
-
-
-const char *UPDATE_TYPE_TEXT[3] =
-{
- N_("Normal"),
- N_("Auto Close"),
- N_("Skip"),
-};
-
-class UpdateTypeModel : public gcn::ListModel
-{
-public:
- virtual ~UpdateTypeModel()
- { }
-
- virtual int getNumberOfElements()
- {
- return 3;
- }
-
- virtual std::string getElementAt(int i)
- {
- if (i >= getNumberOfElements() || i < 0)
- return _("???");
-
- return gettext(UPDATE_TYPE_TEXT[i]);
- }
-};
-
-LoginDialog::LoginDialog(LoginData *loginData, std::string serverName,
- std::string *updateHost):
- Window(_("Login")),
- mLoginData(loginData),
- mUpdateHost(updateHost)
-{
- gcn::Label *serverLabel1 = new Label(_("Server:"));
- gcn::Label *serverLabel2 = new Label(serverName);
- serverLabel2->adjustSize();
- gcn::Label *userLabel = new Label(_("Name:"));
- gcn::Label *passLabel = new Label(_("Password:"));
- mCustomUpdateHost = new CheckBox(_("Custom update host"),
- loginData->updateType & LoginData::Upd_Custom, this, "customhost");
-
- mUpdateHostText = new TextField(serverConfig.getValue(
- "customUpdateHost", ""));
-
- mUpdateHostText->adjustSize();
-
- mUserField = new TextField(mLoginData->username);
- mPassField = new PasswordField(mLoginData->password);
-
- if (mPassField->getText().empty() && LoginDialog::savedPassword != "")
- mPassField->setText(LoginDialog::savedPassword);
-
- mKeepCheck = new CheckBox(_("Remember username"), mLoginData->remember);
- mUpdateTypeLabel = new Label(_("Update:"));
- mUpdateTypeModel = new UpdateTypeModel();
- mUpdateTypeDropDown = new DropDown(mUpdateTypeModel);
- mUpdateTypeDropDown->setActionEventId("updatetype");
- mUpdateTypeDropDown->setSelected((loginData->updateType
- | LoginData::Upd_Custom) ^ LoginData::Upd_Custom);
-
- if (!mCustomUpdateHost->isSelected())
- mUpdateHostText->setVisible(false);
-
- mRegisterButton = new Button(_("Register"), "register", this);
- mServerButton = new Button(_("Change Server"), "server", this);
- mLoginButton = new Button(_("Login"), "login", this);
-
- mUserField->setActionEventId("login");
- mPassField->setActionEventId("login");
-
- mUserField->addKeyListener(this);
- mPassField->addKeyListener(this);
- mUserField->addActionListener(this);
- mPassField->addActionListener(this);
-
- place(0, 0, serverLabel1);
- place(1, 0, serverLabel2, 8).setPadding(1);
-
- place(0, 1, userLabel);
- place(0, 2, passLabel);
- place(1, 1, mUserField, 8).setPadding(1);
- place(1, 2, mPassField, 8).setPadding(1);
- place(0, 6, mUpdateTypeLabel, 1);
- place(1, 6, mUpdateTypeDropDown, 8);
- place(0, 7, mCustomUpdateHost, 9);
- place(0, 8, mUpdateHostText, 9);
- place(0, 9, mKeepCheck, 9);
- place(0, 10, mRegisterButton).setHAlign(LayoutCell::LEFT);
- place(2, 10, mServerButton);
- place(3, 10, mLoginButton);
-
- reflowLayout();
-
- addKeyListener(this);
-
- center();
- setVisible(true);
-
- if (mUserField->getText().empty())
- mUserField->requestFocus();
- else
- mPassField->requestFocus();
-
- mLoginButton->setEnabled(canSubmit());
- mRegisterButton->setEnabled(Net::getLoginHandler()
- ->isRegistrationEnabled());
-}
-
-LoginDialog::~LoginDialog()
-{
- delete mUpdateTypeModel;
- mUpdateTypeModel = 0;
-}
-
-void LoginDialog::action(const gcn::ActionEvent &event)
-{
- if (event.getId() == "login" && canSubmit())
- {
- mLoginData->username = mUserField->getText();
- mLoginData->password = mPassField->getText();
- mLoginData->remember = mKeepCheck->isSelected();
- int updateType = mUpdateTypeDropDown->getSelected();
-
- if (mCustomUpdateHost->isSelected())
- {
- updateType |= LoginData::Upd_Custom;
- serverConfig.setValue("customUpdateHost",
- mUpdateHostText->getText());
-
- mLoginData->updateHost = mUpdateHostText->getText();
- *mUpdateHost = mUpdateHostText->getText();
- }
- mLoginData->updateType = updateType;
- serverConfig.setValue("updateType", updateType);
-
- mLoginData->registerLogin = false;
-
- mRegisterButton->setEnabled(false);
- mServerButton->setEnabled(false);
- mLoginButton->setEnabled(false);
-
- if (mLoginData->remember)
- LoginDialog::savedPassword = mPassField->getText();
-
- Client::setState(STATE_LOGIN_ATTEMPT);
- }
- else if (event.getId() == "server")
- {
- Client::setState(STATE_SWITCH_SERVER);
- }
- else if (event.getId() == "register")
- {
- mLoginData->username = mUserField->getText();
- mLoginData->password = mPassField->getText();
-
- Client::setState(STATE_REGISTER_PREP);
- }
- else if (event.getId() == "customhost")
- {
- mUpdateHostText->setVisible(mCustomUpdateHost->isSelected());
- }
-}
-
-void LoginDialog::keyPressed(gcn::KeyEvent &keyEvent)
-{
- gcn::Key key = keyEvent.getKey();
-
- if (key.getValue() == Key::ESCAPE)
- action(gcn::ActionEvent(NULL, mServerButton->getActionEventId()));
- else if (key.getValue() == Key::ENTER)
- action(gcn::ActionEvent(NULL, mLoginButton->getActionEventId()));
- else
- mLoginButton->setEnabled(canSubmit());
-}
-
-bool LoginDialog::canSubmit() const
-{
- return !mUserField->getText().empty() &&
- !mPassField->getText().empty() &&
- Client::getState() == STATE_LOGIN;
-}