Irrlicht 3D Engine
IGUIButton.h
Go to the documentation of this file.
1
// Copyright (C) 2002-2012 Nikolaus Gebhardt
2
// This file is part of the "Irrlicht Engine".
3
// For conditions of distribution and use, see copyright notice in irrlicht.h
4
5
#ifndef __I_GUI_BUTTON_H_INCLUDED__
6
#define __I_GUI_BUTTON_H_INCLUDED__
7
8
#include "
IGUIElement.h
"
9
10
namespace
irr
11
{
12
13
namespace
video
14
{
15
class
ITexture;
16
}
// end namespace video
17
18
namespace
gui
19
{
20
class
IGUIFont;
21
class
IGUISpriteBank;
22
23
enum
EGUI_BUTTON_STATE
24
{
26
EGBS_BUTTON_UP
=0,
28
EGBS_BUTTON_DOWN
,
30
EGBS_BUTTON_MOUSE_OVER
,
32
EGBS_BUTTON_MOUSE_OFF
,
34
EGBS_BUTTON_FOCUSED
,
36
EGBS_BUTTON_NOT_FOCUSED
,
38
EGBS_COUNT
39
};
40
42
const
c8
*
const
GUIButtonStateNames
[] =
43
{
44
"buttonUp"
,
45
"buttonDown"
,
46
"buttonMouseOver"
,
47
"buttonMouseOff"
,
48
"buttonFocused"
,
49
"buttonNotFocused"
,
50
0,
51
0,
52
};
53
55
58
class
IGUIButton
:
public
IGUIElement
59
{
60
public
:
61
63
IGUIButton
(
IGUIEnvironment
* environment,
IGUIElement
* parent,
s32
id
,
core::rect<s32>
rectangle)
64
:
IGUIElement
(
EGUIET_BUTTON
, environment, parent, id, rectangle) {}
65
67
69
virtual
void
setOverrideFont(
IGUIFont
* font=0) = 0;
70
72
73
virtual
IGUIFont
* getOverrideFont(
void
)
const
= 0;
74
76
78
virtual
IGUIFont
* getActiveFont()
const
= 0;
79
81
82
virtual
void
setImage(
video::ITexture
* image=0) = 0;
83
85
87
virtual
void
setImage(
video::ITexture
* image,
const
core::rect<s32>
& pos) = 0;
88
90
93
virtual
void
setPressedImage(
video::ITexture
* image=0) = 0;
94
96
98
virtual
void
setPressedImage(
video::ITexture
* image,
const
core::rect<s32>
& pos) = 0;
99
101
virtual
void
setSpriteBank(
IGUISpriteBank
* bank=0) = 0;
102
104
110
virtual
void
setSprite(
EGUI_BUTTON_STATE
state,
s32
index,
111
video::SColor
color=
video::SColor
(255,255,255,255),
bool
loop=
false
) = 0;
112
114
116
virtual
void
setIsPushButton(
bool
isPushButton=
true
) = 0;
117
119
virtual
void
setPressed(
bool
pressed=
true
) = 0;
120
122
virtual
bool
isPressed()
const
= 0;
123
125
virtual
void
setUseAlphaChannel(
bool
useAlphaChannel=
true
) = 0;
126
128
virtual
bool
isAlphaChannelUsed()
const
= 0;
129
131
virtual
bool
isPushButton()
const
= 0;
132
134
virtual
void
setDrawBorder(
bool
border=
true
) = 0;
135
137
virtual
bool
isDrawingBorder()
const
= 0;
138
140
virtual
void
setScaleImage(
bool
scaleImage=
true
) = 0;
141
143
virtual
bool
isScalingImage()
const
= 0;
144
};
145
146
147
}
// end namespace gui
148
}
// end namespace irr
149
150
#endif
151
irr::core::rect< s32 >
irr::gui::IGUIButton
GUI Button interface.
Definition:
IGUIButton.h:58
irr::gui::EGBS_COUNT
not used, counts the number of enumerated items
Definition:
IGUIButton.h:38
irr::gui::IGUISpriteBank
Sprite bank interface.
Definition:
IGUISpriteBank.h:45
irr::gui::EGBS_BUTTON_MOUSE_OVER
The mouse cursor is over the button.
Definition:
IGUIButton.h:30
irr::c8
char c8
8 bit character variable.
Definition:
irrTypes.h:31
IGUIElement.h
irr::gui::EGBS_BUTTON_MOUSE_OFF
The mouse cursor is not over the button.
Definition:
IGUIButton.h:32
irr
Everything in the Irrlicht Engine can be found in this namespace.
Definition:
aabbox3d.h:12
irr::gui::GUIButtonStateNames
const c8 *const GUIButtonStateNames[]
Names for gui button state icons.
Definition:
IGUIButton.h:42
irr::gui::IGUIEnvironment
GUI Environment. Used as factory and manager of all other GUI elements.
Definition:
IGUIEnvironment.h:70
irr::gui::EGBS_BUTTON_DOWN
The button is currently pressed down.
Definition:
IGUIButton.h:28
irr::gui::IGUIFont
Font interface.
Definition:
IGUIFont.h:39
irr::s32
signed int s32
32 bit signed variable.
Definition:
irrTypes.h:66
irr::gui::EGBS_BUTTON_FOCUSED
The button has the focus.
Definition:
IGUIButton.h:34
irr::gui::EGBS_BUTTON_NOT_FOCUSED
The button doesn't have the focus.
Definition:
IGUIButton.h:36
irr::gui::IGUIButton::IGUIButton
IGUIButton(IGUIEnvironment *environment, IGUIElement *parent, s32 id, core::rect< s32 > rectangle)
constructor
Definition:
IGUIButton.h:63
irr::video::SColor
Class representing a 32 bit ARGB color.
Definition:
SColor.h:201
irr::gui::IGUIElement
Base class of all GUI elements.
Definition:
IGUIElement.h:25
irr::gui::EGBS_BUTTON_UP
The button is not pressed.
Definition:
IGUIButton.h:26
irr::gui::EGUI_BUTTON_STATE
EGUI_BUTTON_STATE
Definition:
IGUIButton.h:23
irr::video::ITexture
Interface of a Video Driver dependent Texture.
Definition:
ITexture.h:98
irr::gui::EGUIET_BUTTON
A button (IGUIButton)
Definition:
EGUIElementTypes.h:20
Irrlicht Engine
Documentation © 2003-2012 by Nikolaus Gebhardt. Generated on Wed Sep 21 2016 05:54:13 for Irrlicht 3D Engine by
Doxygen
1.8.12