1 /* 2 Copyright (C) 2008 - 2018 by Mark de Wever <koraq@xs4all.nl> 3 Part of the Battle for Wesnoth Project https://www.wesnoth.org/ 4 5 This program is free software; you can redistribute it and/or modify 6 it under the terms of the GNU General Public License as published by 7 the Free Software Foundation; either version 2 of the License, or 8 (at your option) any later version. 9 This program is distributed in the hope that it will be useful, 10 but WITHOUT ANY WARRANTY. 11 12 See the COPYING file for more details. 13 */ 14 15 #pragma once 16 17 #include "gui/dialogs/modal_dialog.hpp" 18 19 namespace gui2 20 { 21 namespace dialogs 22 { 23 24 /** Addon connect dialog. */ 25 class addon_connect : public modal_dialog 26 { 27 public: 28 /** 29 * Constructor. 30 * 31 * @param [in, out]host_name The parameter's usage is: 32 * - Input: The initial value for the host_name. 33 * - Output :The final value of the host_name if 34 * the dialog returns @ref retval::OK or 3 35 * undefined otherwise. 36 * @param allow_remove Sets @ref allow_remove_. 37 */ 38 addon_connect(std::string& host_name, 39 const bool allow_remove); 40 41 private: 42 /** Enable the addon remove button? */ 43 bool allow_remove_; 44 45 void help_button_callback(window& window); 46 47 /** Inherited from modal_dialog, implemented by REGISTER_DIALOG. */ 48 virtual const std::string& window_id() const override; 49 50 /** Inherited from modal_dialog. */ 51 virtual void pre_show(window& window) override; 52 53 /** Inherited from modal_dialog. */ 54 virtual void post_show(window& window) override; 55 }; 56 57 } // namespace dialogs 58 } // namespace gui2 59