MyGUI
3.0.1
Main Page
Related Pages
Namespaces
Data Structures
Files
Examples
File List
Globals
MyGUIEngine
include
MyGUI_Button.h
Go to the documentation of this file.
1
7
/*
8
This file is part of MyGUI.
9
10
MyGUI is free software: you can redistribute it and/or modify
11
it under the terms of the GNU Lesser General Public License as published by
12
the Free Software Foundation, either version 3 of the License, or
13
(at your option) any later version.
14
15
MyGUI is distributed in the hope that it will be useful,
16
but WITHOUT ANY WARRANTY; without even the implied warranty of
17
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18
GNU Lesser General Public License for more details.
19
20
You should have received a copy of the GNU Lesser General Public License
21
along with MyGUI. If not, see <http://www.gnu.org/licenses/>.
22
*/
23
#ifndef __MYGUI_BUTTON_H__
24
#define __MYGUI_BUTTON_H__
25
26
#include "
MyGUI_Prerequest.h
"
27
#include "
MyGUI_StaticText.h
"
28
29
namespace
MyGUI
30
{
31
32
class
MYGUI_EXPORT
Button
:
33
public
StaticText
34
{
35
MYGUI_RTTI_DERIVED
(
Button
)
36
37
public:
38
Button
();
39
41
void
setButtonPressed(
bool
_value) { setStateCheck(_value); }
43
bool
getButtonPressed
() {
return
getStateCheck(); }
44
46
void
setStateCheck(
bool
_value);
47
49
bool
getStateCheck
() {
return
mIsStateCheck; }
50
52
void
setImageIndex(
size_t
_value);
54
size_t
getImageIndex();
55
60
void
setModeImage(
bool
_value);
62
bool
getModeImage
() {
return
mModeImage; }
63
65
StaticImage
*
getStaticImage
() {
return
mImage; }
66
68
virtual
void
setProperty(
const
std::string& _key,
const
std::string& _value);
69
70
/*internal:*/
71
virtual
void
_initialise(
WidgetStyle
_style,
const
IntCoord
& _coord,
Align
_align,
ResourceSkin
* _info,
Widget
* _parent,
ICroppedRectangle
* _croppedParent,
IWidgetCreator
* _creator,
const
std::string& _name);
72
73
void
_setMouseFocus(
bool
_focus);
74
75
protected
:
76
virtual
~
Button
();
77
78
virtual
void
baseChangeWidgetSkin(
ResourceSkin
* _info);
79
80
virtual
void
onMouseLostFocus(
Widget
* _new);
81
virtual
void
onMouseSetFocus(
Widget
* _old);
82
virtual
void
onMouseButtonPressed(
int
_left,
int
_top,
MouseButton
_id);
83
virtual
void
onMouseButtonReleased(
int
_left,
int
_top,
MouseButton
_id);
84
85
virtual
void
baseUpdateEnable();
86
87
bool
_setState(
const
std::string& _value);
88
void
setImageResource(
const
std::string& _name);
89
90
private
:
91
void
updateButtonState();
92
93
void
shutdownWidgetSkin();
94
void
initialiseWidgetSkin(
ResourceSkin
* _info);
95
96
private
:
97
// нажата ли кнопка
98
bool
mIsMousePressed;
99
// в фокусе ли кнопка
100
bool
mIsMouseFocus;
101
// статус кнопки нажата или нет
102
bool
mIsStateCheck;
103
104
StaticImage
* mImage;
105
bool
mModeImage;
106
107
};
108
109
}
// namespace MyGUI
110
111
#endif // __MYGUI_BUTTON_H__
Generated by
1.8.1.2