fixed a bug I caused in CGUIMenu and CGUIContextMenu. added some more window symbols to the built-in font and the skin.

git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@768 dfc29bdd-3216-0410-991c-e03cc46cb475
master
bitplane 2007-07-08 12:19:39 +00:00
parent 163d098040
commit 9cd0eca1ce
9 changed files with 158 additions and 114 deletions

View File

@ -42,6 +42,13 @@ Changes in version 1.4 (... 2007)
GUI:
- Added 7 more symbols to the built-in font and skin.
EGDI_MORE_LEFT, EGDI_MORE_RIGHT, EGDI_MORE_UP, EGDI_MORE_DOWN: "<<" symbols
indicating there is more content in that direction.
EGDI_WINDOW_RESIZE: Window symbol for resizing by clicking the bottom right
corner of a window.
EGDI_EXPAND, EGDI_COLLAPSE: Plus and minus buttons for trees.
- Added IGUISkin::draw2dRectangle, so skins can override the default highlight.
- EGET_ELEMENT_FOCUS_LOST and EGET_ELEMENT_FOCUSED events can now be absorbed

View File

@ -171,6 +171,7 @@ void createToolBox()
env->addStaticText(L"Transparent Control:", core::rect<s32>(10,240,150,260), true, false, t1);
IGUIScrollBar* scrollbar = env->addScrollBar(true, core::rect<s32>(10,260,150,275), t1, 104);
scrollbar->setMax(255);
scrollbar->setPos(255);
// bring irrlicht engine logo to front, because it
// now may be below the newly created toolbox

View File

@ -221,6 +221,8 @@ namespace gui
EGDI_WINDOW_CLOSE,
//! minimize window button
EGDI_WINDOW_MINIMIZE,
//! resize icon for bottom right corner of a window
EGDI_WINDOW_RESIZE,
//! scroll bar up button
EGDI_CURSOR_UP,
//! scroll bar down button
@ -241,6 +243,18 @@ namespace gui
EGDI_SMALL_CURSOR_DOWN,
//! selection dot in a radio button
EGDI_RADIO_BUTTON_CHECKED,
//! << icon indicating there is more content to the left
EGDI_MORE_LEFT,
//! >> icon indicating that there is more content to the right
EGDI_MORE_RIGHT,
//! icon indicating that there is more content above
EGDI_MORE_UP,
//! icon indicating that there is more content below
EGDI_MORE_DOWN,
//! plus icon for trees
EGDI_EXPAND,
//! minus icon for trees
EGDI_COLLAPSE,
//! file icon for file selection
EGDI_FILE,
//! folder icon for file selection
@ -256,6 +270,7 @@ namespace gui
"windowRestore",
"windowClose",
"windowMinimize",
"windowResize",
"cursorUp",
"cursorDown",
"cursorLeft",
@ -266,6 +281,12 @@ namespace gui
"smallCursorUp",
"smallCursorDown",
"radioButtonChecked",
"moreLeft",
"moreRight",
"moreUp",
"moreDown",
"expand",
"collapse",
"file",
"directory",
0

View File

@ -81,182 +81,182 @@ u8 BuiltInFontData[] =
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x12, 0x22, 0x21, 0x22,
0x22, 0x22, 0x21, 0x22, 0x22, 0x22, 0x22, 0x12,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x00,
0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x04,
0x44, 0x44, 0x02, 0x04, 0x44, 0x44, 0x40, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x04,
0x44, 0x44, 0x02, 0x04, 0x44, 0x44, 0x40, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x42, 0x22, 0x22, 0x22, 0x04,
0x44, 0x44, 0x02, 0x04, 0x44, 0x44, 0x40, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x24, 0x44, 0x22, 0x44, 0x42, 0x04,
0x44, 0x44, 0x02, 0x04, 0x44, 0x44, 0x40, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x42, 0x22, 0x22, 0x22, 0x04,
0x40, 0x00, 0x02, 0x00, 0x44, 0x00, 0x00, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x04,
0x40, 0x40, 0x22, 0x20, 0x00, 0x02, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x04,
0x40, 0x02, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x00,
0x00, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x32, 0x22, 0x23, 0x22, 0x22, 0x32,
0x22, 0x22, 0x22, 0x32, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x12, 0x22,
0x22, 0x22, 0x21, 0x22, 0x22, 0x22, 0x12, 0x22,
0x22, 0x22, 0x12, 0x22, 0x22, 0x22, 0x12, 0x22,
0x21, 0x22, 0x22, 0x12, 0x22, 0x22, 0x22, 0x12,
0x22, 0x22, 0x12, 0x22, 0x21, 0x22, 0x22, 0x12,
0x22, 0x22, 0x12, 0x22, 0x22, 0x22, 0x21, 0x22,
0x22, 0x22, 0x22, 0x12, 0x22, 0x22, 0x12, 0x22,
0x22, 0x12, 0x22, 0x22, 0x22, 0x22, 0x12, 0x22,
0x22, 0x22, 0x44, 0x44, 0x44, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x44, 0x44, 0x44, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x24, 0x22, 0x24, 0x22, 0x24,
0x22, 0x22, 0x24, 0x42, 0x24, 0x42, 0x22, 0x22,
0x22, 0x22, 0x42, 0x22, 0x24, 0x22, 0x24, 0x42,
0x22, 0x24, 0x42, 0x44, 0x44, 0x44, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x42, 0x42, 0x22, 0x22, 0x24, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x24, 0x42, 0x44, 0x22, 0x44,
0x42, 0x22, 0x22, 0x44, 0x22, 0x44, 0x22, 0x22,
0x22, 0x22, 0x42, 0x22, 0x24, 0x22, 0x22, 0x44,
0x22, 0x44, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x42, 0x22, 0x22, 0x24,
0x42, 0x44, 0x22, 0x22, 0x44, 0x42, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x21, 0x22,
0x22, 0x22, 0x22, 0x12, 0x22, 0x22, 0x22, 0x21,
0x22, 0x22, 0x22, 0x12, 0x22, 0x22, 0x22, 0x12,
0x22, 0x22, 0x22, 0x12, 0x22, 0x21, 0x22, 0x22,
0x12, 0x22, 0x22, 0x22, 0x12, 0x22, 0x22, 0x12,
0x22, 0x21, 0x22, 0x22, 0x12, 0x22, 0x22, 0x12,
0x22, 0x22, 0x22, 0x12, 0x22, 0x22, 0x22, 0x21,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x44, 0x44, 0x44, 0x44, 0x42, 0x44,
0x22, 0x22, 0x22, 0x24, 0x42, 0x24, 0x42, 0x44,
0x22, 0x44, 0x22, 0x22, 0x44, 0x42, 0x24, 0x42,
0x44, 0x22, 0x22, 0x24, 0x42, 0x24, 0x22, 0x22,
0x22, 0x22, 0x42, 0x22, 0x24, 0x44, 0x22, 0x24,
0x44, 0x42, 0x22, 0x22, 0x22, 0x22, 0x24, 0x44,
0x44, 0x44, 0x22, 0x24, 0x44, 0x22, 0x22, 0x44,
0x42, 0x44, 0x42, 0x24, 0x44, 0x44, 0x22, 0x24,
0x44, 0x44, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x44, 0x44, 0x44, 0x22, 0x22, 0x22, 0x22, 0x22,
0x24, 0x42, 0x22, 0x44, 0x22, 0x44, 0x22, 0x24,
0x42, 0x24, 0x42, 0x22, 0x24, 0x22, 0x24, 0x22,
0x24, 0x22, 0x22, 0x22, 0x44, 0x22, 0x22, 0x22,
0x22, 0x22, 0x44, 0x44, 0x44, 0x24, 0x22, 0x22,
0x44, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x44,
0x44, 0x42, 0x22, 0x44, 0x44, 0x42, 0x24, 0x44,
0x42, 0x44, 0x44, 0x24, 0x42, 0x44, 0x42, 0x22,
0x22, 0x22, 0x22, 0x44, 0x42, 0x22, 0x42, 0x22,
0x44, 0x44, 0x24, 0x42, 0x24, 0x42, 0x22, 0x22,
0x44, 0x22, 0x44, 0x24, 0x22, 0x24, 0x22, 0x24,
0x22, 0x22, 0x22, 0x22, 0x24, 0x42, 0x22, 0x22,
0x22, 0x22, 0x44, 0x44, 0x44, 0x24, 0x22, 0x24,
0x44, 0x42, 0x22, 0x22, 0x22, 0x22, 0x22, 0x24,
0x44, 0x22, 0x24, 0x44, 0x44, 0x44, 0x22, 0x44,
0x42, 0x44, 0x42, 0x24, 0x22, 0x24, 0x44, 0x22,
0x24, 0x22, 0x22, 0x24, 0x22, 0x24, 0x44, 0x22,
0x44, 0x44, 0x22, 0x44, 0x22, 0x44, 0x22, 0x24,
0x42, 0x24, 0x42, 0x24, 0x42, 0x44, 0x22, 0x44,
0x42, 0x22, 0x22, 0x22, 0x22, 0x44, 0x22, 0x22,
0x22, 0x22, 0x22, 0x42, 0x22, 0x24, 0x22, 0x44,
0x22, 0x44, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x42, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x24,
0x42, 0x44, 0x22, 0x22, 0x22, 0x22, 0x44, 0x22,
0x44, 0x42, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x24, 0x42, 0x22, 0x24, 0x42, 0x24, 0x42, 0x44,
0x22, 0x44, 0x22, 0x22, 0x44, 0x42, 0x24, 0x42,
0x44, 0x22, 0x22, 0x22, 0x22, 0x24, 0x22, 0x22,
0x22, 0x22, 0x22, 0x44, 0x44, 0x44, 0x24, 0x42,
0x22, 0x24, 0x42, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x42, 0x42, 0x22, 0x22, 0x22, 0x22, 0x24, 0x24,
0x44, 0x44, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x20,
0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x02,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x42, 0x22, 0x22, 0x22, 0x42, 0x42,
0x22, 0x24, 0x22, 0x24, 0x42, 0x22, 0x24, 0x42,
0x44, 0x44, 0x44, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x42, 0x42, 0x22,
0x22, 0x24, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x20,
0x44, 0x44, 0x40, 0x20, 0x44, 0x44, 0x44, 0x02,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x42, 0x22, 0x22, 0x22, 0x42, 0x42,
0x22, 0x24, 0x22, 0x22, 0x44, 0x22, 0x44, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x42, 0x22, 0x22, 0x24, 0x42, 0x44, 0x22,
0x22, 0x44, 0x42, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x20,
0x44, 0x44, 0x40, 0x20, 0x44, 0x44, 0x44, 0x02,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x42, 0x22, 0x22, 0x22, 0x42, 0x42,
0x22, 0x24, 0x44, 0x22, 0x24, 0x44, 0x42, 0x22,
0x22, 0x22, 0x22, 0x24, 0x44, 0x44, 0x44, 0x22,
0x24, 0x44, 0x22, 0x22, 0x44, 0x42, 0x44, 0x42,
0x24, 0x44, 0x44, 0x22, 0x24, 0x44, 0x44, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x24, 0x42, 0x20,
0x44, 0x44, 0x40, 0x20, 0x44, 0x44, 0x44, 0x02,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x42, 0x22, 0x22, 0x22, 0x42, 0x44,
0x44, 0x44, 0x24, 0x22, 0x22, 0x44, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x44, 0x44, 0x42, 0x22,
0x44, 0x44, 0x42, 0x24, 0x44, 0x42, 0x44, 0x44,
0x24, 0x42, 0x44, 0x42, 0x22, 0x22, 0x22, 0x22,
0x44, 0x42, 0x22, 0x42, 0x22, 0x44, 0x44, 0x20,
0x44, 0x44, 0x40, 0x20, 0x44, 0x44, 0x44, 0x02,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x42, 0x22, 0x22, 0x22, 0x42, 0x44,
0x44, 0x44, 0x24, 0x22, 0x24, 0x44, 0x42, 0x22,
0x22, 0x22, 0x22, 0x22, 0x24, 0x44, 0x22, 0x24,
0x44, 0x44, 0x44, 0x22, 0x44, 0x42, 0x44, 0x42,
0x24, 0x22, 0x24, 0x44, 0x22, 0x24, 0x22, 0x22,
0x24, 0x22, 0x24, 0x44, 0x22, 0x44, 0x44, 0x20,
0x44, 0x00, 0x00, 0x20, 0x04, 0x40, 0x00, 0x02,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x42, 0x22, 0x22, 0x22, 0x42, 0x22,
0x42, 0x22, 0x24, 0x22, 0x44, 0x22, 0x44, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x42, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x24, 0x42, 0x44, 0x22,
0x22, 0x22, 0x22, 0x44, 0x22, 0x44, 0x42, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x24, 0x42, 0x20,
0x44, 0x04, 0x02, 0x22, 0x00, 0x00, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x44, 0x44, 0x44, 0x44, 0x42, 0x22,
0x44, 0x44, 0x44, 0x24, 0x42, 0x22, 0x24, 0x42,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x42, 0x42, 0x22,
0x22, 0x22, 0x22, 0x24, 0x24, 0x44, 0x44, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x20,
0x44, 0x00, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x44, 0x44, 0x44, 0x44, 0x42, 0x22,
0x44, 0x44, 0x44, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x24, 0x22, 0x24, 0x22,
0x24, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x44, 0x44, 0x44, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x20,
0x00, 0x02, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x32, 0x22, 0x22, 0x22, 0x22, 0x32,
0x22, 0x22, 0x22, 0x23, 0x22, 0x22, 0x22, 0x22,
0x32, 0x22, 0x22, 0x23, 0x22, 0x22, 0x22, 0x23,
0x22, 0x22, 0x22, 0x23, 0x22, 0x22, 0x32, 0x22,
0x23, 0x22, 0x22, 0x22, 0x23, 0x22, 0x22, 0x23,
0x22, 0x22, 0x32, 0x22, 0x23, 0x22, 0x22, 0x23,
0x22, 0x22, 0x22, 0x23, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x32, 0x22, 0x22, 0x22, 0x23, 0x22,
0x22, 0x22, 0x22, 0x32, 0x22, 0x22, 0x23, 0x22,
0x22, 0x22, 0x23, 0x22, 0x22, 0x22, 0x23, 0x22,
0x22, 0x32, 0x22, 0x23, 0x22, 0x22, 0x22, 0x23,
0x22, 0x22, 0x23, 0x22, 0x22, 0x32, 0x22, 0x23,
0x22, 0x22, 0x23, 0x22, 0x22, 0x22, 0x22, 0x32,
0x22, 0x22, 0x22, 0x23, 0x22, 0x22, 0x23, 0x22,
0x22, 0x23, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x12, 0x22, 0x21, 0x22,
0x12, 0x22, 0x12, 0x22, 0x12, 0x22, 0x12, 0x22,
0x22, 0x12, 0x22, 0x21, 0x22, 0x22, 0x21, 0x22,
@ -265,14 +265,14 @@ u8 BuiltInFontData[] =
0x12, 0x22, 0x21, 0x22, 0x22, 0x12, 0x22, 0x21,
0x22, 0x22, 0x12, 0x22, 0x21, 0x22, 0x22, 0x12,
0x22, 0x21, 0x22, 0x12, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x12, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x42, 0x22, 0x24, 0x22, 0x22,
0x42, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x42, 0x22, 0x22, 0x24, 0x44, 0x44, 0x44, 0x44,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
@ -280,7 +280,7 @@ u8 BuiltInFontData[] =
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x24, 0x22, 0x24, 0x22, 0x22,
0x24, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x24, 0x22, 0x22, 0x24, 0x22, 0x22, 0x22, 0x24,
0x22, 0x22, 0x22, 0x44, 0x22, 0x24, 0x42, 0x24,
0x22, 0x42, 0x22, 0x42, 0x22, 0x42, 0x22, 0x24,
0x42, 0x22, 0x42, 0x42, 0x22, 0x44, 0x22, 0x22,
@ -288,7 +288,7 @@ u8 BuiltInFontData[] =
0x22, 0x44, 0x22, 0x22, 0x22, 0x22, 0x44, 0x42,
0x22, 0x24, 0x42, 0x22, 0x44, 0x22, 0x24, 0x42,
0x22, 0x44, 0x22, 0x24, 0x22, 0x24, 0x42, 0x22,
0x24, 0x22, 0x24, 0x22, 0x22, 0x22, 0x22, 0x22,
0x24, 0x22, 0x24, 0x24, 0x22, 0x22, 0x22, 0x24,
0x22, 0x22, 0x24, 0x22, 0x22, 0x42, 0x22, 0x24,
0x22, 0x42, 0x22, 0x42, 0x22, 0x42, 0x22, 0x42,
0x24, 0x22, 0x42, 0x42, 0x24, 0x22, 0x42, 0x24,
@ -296,7 +296,7 @@ u8 BuiltInFontData[] =
0x24, 0x22, 0x42, 0x22, 0x42, 0x22, 0x44, 0x24,
0x22, 0x42, 0x42, 0x24, 0x24, 0x22, 0x42, 0x42,
0x24, 0x24, 0x22, 0x42, 0x42, 0x24, 0x24, 0x22,
0x42, 0x42, 0x24, 0x22, 0x22, 0x22, 0x22, 0x22,
0x42, 0x42, 0x24, 0x24, 0x22, 0x22, 0x22, 0x24,
0x22, 0x22, 0x24, 0x24, 0x22, 0x42, 0x42, 0x24,
0x22, 0x42, 0x22, 0x42, 0x22, 0x42, 0x22, 0x24,
0x42, 0x22, 0x42, 0x42, 0x24, 0x22, 0x42, 0x24,
@ -304,7 +304,7 @@ u8 BuiltInFontData[] =
0x24, 0x22, 0x42, 0x24, 0x44, 0x22, 0x42, 0x44,
0x22, 0x42, 0x42, 0x24, 0x24, 0x22, 0x42, 0x42,
0x24, 0x24, 0x22, 0x42, 0x42, 0x24, 0x24, 0x22,
0x42, 0x42, 0x24, 0x22, 0x22, 0x22, 0x22, 0x22,
0x42, 0x42, 0x24, 0x24, 0x22, 0x22, 0x22, 0x24,
0x22, 0x22, 0x22, 0x42, 0x22, 0x24, 0x22, 0x24,
0x22, 0x42, 0x22, 0x42, 0x22, 0x42, 0x22, 0x22,
0x42, 0x22, 0x44, 0x22, 0x22, 0x44, 0x22, 0x22,
@ -312,7 +312,7 @@ u8 BuiltInFontData[] =
0x22, 0x44, 0x22, 0x22, 0x42, 0x22, 0x24, 0x44,
0x22, 0x42, 0x42, 0x24, 0x24, 0x22, 0x42, 0x42,
0x24, 0x24, 0x22, 0x42, 0x42, 0x24, 0x42, 0x22,
0x42, 0x42, 0x24, 0x22, 0x22, 0x22, 0x22, 0x22,
0x42, 0x42, 0x24, 0x24, 0x22, 0x22, 0x22, 0x24,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x24,
0x42, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
@ -320,7 +320,7 @@ u8 BuiltInFontData[] =
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x24, 0x22, 0x22,
0x22, 0x22, 0x24, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x24, 0x24, 0x22, 0x22, 0x22, 0x24,
0x22, 0x22, 0x24, 0x24, 0x22, 0x42, 0x42, 0x24,
0x22, 0x42, 0x24, 0x24, 0x24, 0x24, 0x22, 0x22,
0x22, 0x22, 0x44, 0x22, 0x22, 0x24, 0x22, 0x22,
@ -328,7 +328,7 @@ u8 BuiltInFontData[] =
0x24, 0x22, 0x42, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x42, 0x22, 0x42, 0x22, 0x42, 0x42,
0x24, 0x24, 0x22, 0x24, 0x22, 0x22, 0x22, 0x22,
0x42, 0x42, 0x24, 0x22, 0x22, 0x22, 0x22, 0x22,
0x42, 0x42, 0x24, 0x24, 0x44, 0x44, 0x44, 0x44,
0x22, 0x22, 0x22, 0x42, 0x22, 0x22, 0x22, 0x42,
0x22, 0x24, 0x22, 0x42, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x24, 0x42, 0x22, 0x42, 0x22, 0x22,
@ -336,7 +336,7 @@ u8 BuiltInFontData[] =
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x24, 0x22, 0x22, 0x24, 0x22, 0x24, 0x22,
0x22, 0x22, 0x22, 0x22, 0x42, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x24, 0x44, 0x44, 0x44, 0x44,
0x22, 0x22, 0x32, 0x22, 0x23, 0x22, 0x22, 0x32,
0x23, 0x22, 0x23, 0x22, 0x23, 0x22, 0x23, 0x22,
0x22, 0x23, 0x22, 0x22, 0x32, 0x22, 0x22, 0x32,
@ -344,7 +344,7 @@ u8 BuiltInFontData[] =
0x32, 0x22, 0x22, 0x32, 0x22, 0x23, 0x22, 0x22,
0x23, 0x22, 0x22, 0x32, 0x22, 0x23, 0x22, 0x22,
0x32, 0x22, 0x23, 0x22, 0x22, 0x32, 0x22, 0x23,
0x22, 0x22, 0x32, 0x22, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x32, 0x23, 0x22, 0x22, 0x22, 0x22,
0x22, 0x22, 0x22, 0x22, 0x22, 0x12, 0x22, 0x22,
0x21, 0x22, 0x22, 0x12, 0x22, 0x22, 0x21, 0x22,
0x22, 0x22, 0x12, 0x22, 0x22, 0x21, 0x22, 0x22,

View File

@ -20,8 +20,9 @@ namespace gui
//! constructor
CGUIContextMenu::CGUIContextMenu(IGUIEnvironment* environment,
IGUIElement* parent, s32 id,
core::rect<s32> rectangle, bool getFocus)
: IGUIContextMenu(environment, parent, id, rectangle), HighLighted(-1), ChangeTime(0), EventParent(0)
core::rect<s32> rectangle, bool getFocus, bool allowFocus)
: IGUIContextMenu(environment, parent, id, rectangle), HighLighted(-1),
ChangeTime(0), EventParent(0), AllowFocus(allowFocus)
{
#ifdef _DEBUG
setDebugName("CGUIContextMenu");
@ -67,7 +68,7 @@ s32 CGUIContextMenu::addItem(const wchar_t* text, s32 id, bool enabled, bool has
if (hasSubMenu)
{
s.SubMenu = new CGUIContextMenu(Environment, this, id,
core::rect<s32>(0,0,100,100), false);
core::rect<s32>(0,0,100,100), false, false);
s.SubMenu->setVisible(false);
}
@ -211,7 +212,7 @@ bool CGUIContextMenu::OnEvent(SEvent event)
switch(event.GUIEvent.EventType)
{
case EGET_ELEMENT_FOCUS_LOST:
if (event.GUIEvent.Caller == this)
if (event.GUIEvent.Caller == this && !isMyChild(event.GUIEvent.Element))
{
// set event parent of submenus
setEventParent(Parent);
@ -219,6 +220,11 @@ bool CGUIContextMenu::OnEvent(SEvent event)
return false;
}
break;
case EGET_ELEMENT_FOCUSED:
if (event.GUIEvent.Caller == this && !AllowFocus)
{
return true;
}
}
break;
case EET_MOUSE_INPUT_EVENT:

View File

@ -22,7 +22,7 @@ namespace gui
//! constructor
CGUIContextMenu(IGUIEnvironment* environment,
IGUIElement* parent, s32 id, core::rect<s32> rectangle,
bool getFocus = true);
bool getFocus = true, bool allowFocus = true);
//! destructor
~CGUIContextMenu();
@ -131,6 +131,7 @@ namespace gui
core::position2d<s32> Pos;
u32 ChangeTime;
IGUIElement* EventParent;
bool AllowFocus;
};
} // end namespace gui

View File

@ -18,7 +18,7 @@ namespace gui
//! constructor
CGUIMenu::CGUIMenu(IGUIEnvironment* environment, IGUIElement* parent,
s32 id, core::rect<s32> rectangle)
: CGUIContextMenu(environment, parent, id, rectangle, false)
: CGUIContextMenu(environment, parent, id, rectangle, false, true)
{
#ifdef _DEBUG
setDebugName("CGUIMenu");
@ -99,7 +99,7 @@ bool CGUIMenu::OnEvent(SEvent event)
switch(event.GUIEvent.EventType)
{
case gui::EGET_ELEMENT_FOCUS_LOST:
if (event.GUIEvent.Caller == this)
if (event.GUIEvent.Caller == this && !isMyChild(event.GUIEvent.Element))
closeAllSubMenus();
break;
case gui::EGET_ELEMENT_FOCUSED:

View File

@ -122,8 +122,16 @@ CGUISkin::CGUISkin(EGUI_SKIN_TYPE type, video::IVideoDriver* driver)
Icons[EGDI_SMALL_CURSOR_UP] = 235;
Icons[EGDI_SMALL_CURSOR_DOWN] = 236;
Icons[EGDI_RADIO_BUTTON_CHECKED] = 237;
Icons[EGDI_FILE] = 238;
Icons[EGDI_DIRECTORY] = 239;
Icons[EGDI_MORE_LEFT] = 238;
Icons[EGDI_MORE_RIGHT] = 239;
Icons[EGDI_MORE_UP] = 240;
Icons[EGDI_MORE_DOWN] = 241;
Icons[EGDI_WINDOW_RESIZE] = 242;
Icons[EGDI_EXPAND] = 243;
Icons[EGDI_COLLAPSE] = 244;
Icons[EGDI_FILE] = 245;
Icons[EGDI_DIRECTORY] = 246;
for (u32 i=0; i<EGDF_COUNT; ++i)
Fonts[i] = 0;

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.1 KiB

After

Width:  |  Height:  |  Size: 8.1 KiB