* CMessageBox: Buttons draw better

- Improved button layout
- Alignment either left / right / center


git-svn-id: file:///home/bas/coolstream_public_svn/THIRDPARTY/applications/neutrino-beta@2069 e54a6e83-5905-42d5-8d5c-058d10e6a962
This commit is contained in:
micha-bbg
2012-01-20 16:28:21 +00:00
parent 211ed92473
commit 6593d693e4
2 changed files with 113 additions and 100 deletions

View File

@@ -42,11 +42,23 @@
class CMessageBox : public CHintBoxExt
{
private:
struct mbButtons
{
bool active;
bool def;
const char* icon;
const char* text;
};
int showbuttons;
bool returnDefaultOnTimeout;
int mbBtnAlign;
int ButtonSpacing;
int fh, i_maxw;
int b_height, bb_height;
void paintButtons();
int getButtonWidth();
public:
enum result_
@@ -60,12 +72,15 @@ class CMessageBox : public CHintBoxExt
enum buttons_
{
mbYes= 0x01,
mbNo = 0x02,
mbCancel = 0x04,
mbAll = 0x07,
mbBack = 0x08,
mbOk = 0x10
mbYes = 0x01,
mbNo = 0x02,
mbCancel = 0x04,
mbAll = 0x07,
mbBack = 0x08,
mbOk = 0x10,
mbBtnAlignCenter = 0x0100,
mbBtnAlignLeft = 0x0200,
mbBtnAlignRight = 0x0400
} buttons;
// Text & Caption are always UTF-8 encoded
@@ -75,6 +90,9 @@ class CMessageBox : public CHintBoxExt
int exec(int timeout = -1);
void returnDefaultValueOnTimeout(bool returnDefault);
private:
void Init(const CMessageBox::result_ Default, const uint32_t ShowButtons);
};
// Text is always UTF-8 encoded