YAPOG
0.0.1
Yet Another Pokemon Online Game
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
GridMenu.hpp
Go to the documentation of this file.
1
#ifndef YAPOG_GRIDMENU_HPP
2
# define YAPOG_GRIDMENU_HPP
3
4
# include "
YAPOG/Collection/Matrix.hpp
"
5
# include "
YAPOG/Graphics/Gui/BaseWidget.hpp
"
6
# include "
YAPOG/Collection/Array.hpp
"
7
# include "
YAPOG/Graphics/Gui/MenuItem.hpp
"
8
# include "
YAPOG/Graphics/Gui/LayoutBox.hpp
"
9
# include "
YAPOG/Graphics/Gui/Padding.hpp
"
10
# include "
YAPOG/Graphics/Gui/PartialLayoutManager.hpp
"
11
# include "
YAPOG/System/Event/Event.hpp
"
12
13
namespace
yap
14
{
15
class
VerticalLayout;
16
class
HorizontalLayout;
17
18
class
YAPOG_LIB
GridMenu
:
public
BaseWidget
19
{
20
DISALLOW_COPY
(
GridMenu
);
21
22
public
:
23
Event<const GridMenu&, const EmptyEventArgs&>
OnDesactivated
;
24
25
GridMenu
(
const
Vector2
& size,
Padding
ext,
Padding
in,
bool
extend);
26
void
AddChild (
MenuItem
& child,
LayoutBox::Align
align
27
= LayoutBox::Align::CENTER);
28
virtual
~
GridMenu
();
29
30
void
SetSelectedBackground (
WidgetBackground
& background);
31
void
SetSelectedBorder (
WidgetBorder
& border);
32
virtual
bool
IsFocusable ()
const
;
33
Vector2
GetCurrentSelect ()
const
;
34
35
protected
:
36
virtual
Vector2
HandleGetSize ()
const
;
37
virtual
void
HandleMove (
const
Vector2
& offset);
38
virtual
void
HandleScale (
const
Vector2
& factor);
39
40
virtual
void
HandleDraw (
IDrawingContext
& context);
41
42
virtual
void
HandleShow (
bool
isVisible);
43
virtual
void
HandleChangeColor (
const
sf::Color& color);
44
45
virtual
void
HandleUpdate (
const
Time
& dt);
46
bool
HandleOnEvent (
const
GuiEvent
& guiEvent);
47
48
private
:
49
void
SetFormItem ();
50
void
SetUnformItem ();
51
52
collection::Matrix<MenuItem*>
itemz_
;
53
Vector2
currentSelec_
;
54
VerticalLayout
*
layoutV_
;
55
collection::Array<HorizontalLayout*>
layoutHs_
;
56
57
WidgetBackground
*
selecBckgrd_
;
58
WidgetBorder
*
selecBrdr_
;
59
uint
selecBrdSize_
;
60
Vector2
size_
;
61
bool
isFixed_
;
62
uint
currentLine_
;
63
collection::Array<uint>
itemCount_
;
64
65
};
66
}
// namespace yap
67
68
#endif
/* YAPOG_GRIDMENU_HPP! */
YAPOG
include
YAPOG
Graphics
Gui
GridMenu.hpp
Generated on Mon Sep 17 2012 22:24:24 for YAPOG by
1.8.1.1