Adding the delete game functionality to the gui2 load-game dialog.

This commit is contained in:
Jörg Hinrichs 2009-07-14 22:17:03 +00:00
parent 79af4718b0
commit 174a6280f9
4 changed files with 38 additions and 20 deletions

View file

@ -62,6 +62,7 @@
[column]
grow_factor = 1
horizontal_grow = "true"
horizontal_alignment = "right"
[toggle_button]
id = "dont_ask_again"
@ -74,6 +75,24 @@
[/row]
[row]
grow_factor = 1
[column]
grow_factor = 1
horizontal_grow = "true"
[label]
id = "lblSpacer"
definition = "default"
label = " "
[/label]
[/column]
[/row]
[row]
grow_factor = 0

View file

@ -12,8 +12,7 @@
See the COPYING file for more details.
*/
//#define GETTEXT_DOMAIN "wesnoth-lib"
#include "gui/dialogs/field.hpp"
#include "gui/dialogs/game_delete.hpp"
#include "gui/widgets/settings.hpp"
@ -31,7 +30,9 @@ namespace gui2 {
* @end_table
*/
tgame_delete::tgame_delete() {}
tgame_delete::tgame_delete()
: chk_dont_ask_again_(register_bool("dont_ask_again"))
{}
twindow* tgame_delete::build_window(CVideo& video)
{
@ -44,6 +45,7 @@ void tgame_delete::pre_show(CVideo& /*video*/, twindow& window)
void tgame_delete::post_show(twindow& window)
{
dont_ask_again_ = chk_dont_ask_again_->get_widget_value(window);
}
} // namespace gui2

View file

@ -24,6 +24,8 @@ class tgame_delete : public tdialog
public:
tgame_delete();
bool dont_ask_again() const { return dont_ask_again_; }
protected:
/** Inherited from tdialog. */
void pre_show(CVideo& video, twindow& window);
@ -34,6 +36,9 @@ protected:
private:
/** Inherited from tdialog. */
twindow* build_window(CVideo& video);
tfield_bool* chk_dont_ask_again_;
bool dont_ask_again_;
};
}

View file

@ -265,28 +265,20 @@ void tgame_load::delete_button_callback(twindow& window){
// See if we should ask the user for deletion confirmation
if(preferences::ask_delete_saves()) {
//gui2::tgame_delete dlg_delete;
//dlg_delete.show(window, 0);
/*
gui::dialog dmenu(disp_,"",
_("Do you really want to delete this game?"),
gui::YES_NO);
dmenu.add_option(_("Don't ask me again!"), false);
const int res = dmenu.show();
// See if the user doesn't want to be asked this again
if(dmenu.option_checked()) {
gui2::tgame_delete dlg_delete;
dlg_delete.show(window.video(), 0);
int res = dlg_delete.get_retval();
if (res == twindow::CANCEL)
return;
if (dlg_delete.dont_ask_again()) {
preferences::set_ask_delete_saves(false);
}
*/
//if(res != 0) {
// return gui::CONTINUE_DIALOG;
//}
}
// Delete the file
//savegame_manager::delete_game(games_[index].name);
savegame_manager::delete_game(games_[index].name);
// Remove it from the list of saves
games_.erase(games_.begin() + index);