MyGUI
3.0.1
Main Page
Related Pages
Namespaces
Data Structures
Files
Examples
File List
Globals
MyGUIEngine
src
MyGUI_ResourceImageSetPointer.cpp
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
#include "
MyGUI_Precompiled.h
"
24
#include "
MyGUI_ResourceImageSetPointer.h
"
25
#include "
MyGUI_StaticImage.h
"
26
#include "
MyGUI_ResourceManager.h
"
27
28
namespace
MyGUI
29
{
30
31
ResourceImageSetPointer::ResourceImageSetPointer
() :
32
mImageSet(
nullptr
)
33
{
34
}
35
36
void
ResourceImageSetPointer::deserialization
(
xml::ElementPtr
_node,
Version
_version)
37
{
38
Base::deserialization
(_node, _version);
39
40
// берем детей и крутимся, основной цикл
41
xml::ElementEnumerator
info = _node->
getElementEnumerator
();
42
while
(info.
next
(
"Property"
))
43
{
44
const
std::string& key = info->
findAttribute
(
"key"
);
45
const
std::string& value = info->
findAttribute
(
"value"
);
46
47
if
(key ==
"Point"
) mPoint =
IntPoint::parse
(value);
48
else
if
(key ==
"Size"
) mSize =
IntSize::parse
(value);
49
else
if
(key ==
"Resource"
) mImageSet =
ResourceManager::getInstance
().
getByName
(value)->
castType
<
ResourceImageSet
>();
50
}
51
}
52
53
void
ResourceImageSetPointer::setImage
(
StaticImage
* _image)
54
{
55
if
(mImageSet !=
nullptr
)
56
_image->
setItemResourceInfo
(mImageSet->
getIndexInfo
(0, 0));
57
}
58
59
void
ResourceImageSetPointer::setPosition
(
StaticImage
* _image,
const
IntPoint
& _point)
60
{
61
_image->
setCoord
(_point.
left
- mPoint.
left
, _point.
top
- mPoint.
top
, mSize.
width
, mSize.
height
);
62
}
63
64
}
// namespace MyGUI
Generated by
1.8.1.2