usbloadergx/source/prompts/CheckboxPrompt.hpp

59 lines
2.0 KiB
C++
Raw Normal View History

/****************************************************************************
* Copyright (C) 2010
* by Dimok
*
* This software is provided 'as-is', without any express or implied
* warranty. In no event will the authors be held liable for any
* damages arising from the use of this software.
*
* Permission is granted to anyone to use this software for any
* purpose, including commercial applications, and to alter it and
* redistribute it freely, subject to the following restrictions:
*
* 1. The origin of this software must not be misrepresented; you
* must not claim that you wrote the original software. If you use
* this software in a product, an acknowledgment in the product
* documentation would be appreciated but is not required.
*
* 2. Altered source versions must be plainly marked as such, and
* must not be misrepresented as being the original software.
*
* 3. This notice may not be removed or altered from any source
* distribution.
***************************************************************************/
#ifndef _CHECKBOXPROMPT_HPP_
#define _CHECKBOXPROMPT_HPP_
#include "libwiigui/gui_checkbox.hpp"
#include "PromptWindow.hpp"
enum
{
CheckedBox1 = 0x01,
CheckedBox2 = 0x02,
CheckedBox3 = 0x04,
CheckedBox4 = 0x08,
};
class CheckboxPrompt : private PromptWindow
{
public:
//! Constructor
CheckboxPrompt(const char * title = 0, const char *msg = 0);
//! Destructor
~CheckboxPrompt();
//! Add new checkbox
void AddCheckBox(const char *text);
//! Default function to get the button pressed
int GetChoice();
//! Show window and wait for the user to press OK/Cancel
static int Show(const char *title = 0, const char *msg = 0, const char *chbx1 = 0, const char *chbx2 = 0, const char *chbx3 = 0, const char *chbx4 = 0);
protected:
std::vector<GuiText *> CheckboxTxt;
std::vector<GuiCheckbox *> Checkbox;
};
#define CheckboxWindow CheckboxPrompt::Show
#endif