diff options
author | Bertram <bertram@cegetel.net> | 2010-01-21 00:04:59 +0100 |
---|---|---|
committer | Bertram <bertram@cegetel.net> | 2010-01-21 00:04:59 +0100 |
commit | bc510d9de037b665dc96f97da1848d69e5a8b0ed (patch) | |
tree | 139c592b8fd7971ff1da8ea9750ba7f56f2c8b15 /src | |
parent | 3fb3480ef461c7fa2e1f44142f4d37d80d87e087 (diff) | |
download | mana-bc510d9de037b665dc96f97da1848d69e5a8b0ed.tar.gz mana-bc510d9de037b665dc96f97da1848d69e5a8b0ed.tar.bz2 mana-bc510d9de037b665dc96f97da1848d69e5a8b0ed.tar.xz mana-bc510d9de037b665dc96f97da1848d69e5a8b0ed.zip |
Corrected the --default option behaviour to follow --help definition.
The --help options tells:
-D --default : Choose default character server and character
The client now choose the defaulted last character entry when --default is set.
The --character option still has precedence.
Also added a return value to the CharSelectDialog->chooseSelected() function while on it,
in case of someone willing to add errors handling at this stage.
Diffstat (limited to 'src')
-rw-r--r-- | src/gui/charselectdialog.cpp | 4 | ||||
-rw-r--r-- | src/gui/charselectdialog.h | 7 | ||||
-rw-r--r-- | src/main.cpp | 8 |
3 files changed, 14 insertions, 5 deletions
diff --git a/src/gui/charselectdialog.cpp b/src/gui/charselectdialog.cpp index e20ec849..66370a79 100644 --- a/src/gui/charselectdialog.cpp +++ b/src/gui/charselectdialog.cpp @@ -270,10 +270,10 @@ bool CharSelectDialog::selectByName(const std::string &name) return false; } -void CharSelectDialog::chooseSelected() +bool CharSelectDialog::chooseSelected() { if (!mCharInfo->getSize()) - return; + return false; setVisible(false); attemptCharSelect(); diff --git a/src/gui/charselectdialog.h b/src/gui/charselectdialog.h index d16453a6..e2803cfc 100644 --- a/src/gui/charselectdialog.h +++ b/src/gui/charselectdialog.h @@ -66,7 +66,12 @@ class CharSelectDialog : public Window, public gcn::ActionListener, bool selectByName(const std::string &name); - void chooseSelected(); + /** + * Send selection to character server + * @return false if the selection or the number of existing character + * is empty. + */ + bool chooseSelected(); void update(int slot = -1); diff --git a/src/main.cpp b/src/main.cpp index 69b45091..af1057a7 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -1073,8 +1073,12 @@ int main(int argc, char *argv[]) } else { - ((CharSelectDialog*) currentDialog)->selectByName( - config.getValue("lastCharacter", "")); + if (((CharSelectDialog*) currentDialog)->selectByName( + config.getValue("lastCharacter", ""))) + { + if (options.chooseDefault) + ((CharSelectDialog*) currentDialog)->chooseSelected(); + } } break; |