MyGUI_ImageBox.cpp
Go to the documentation of this file.
/*
* This source file is part of MyGUI. For the latest info, see http://mygui.info/
* Distributed under the MIT License
* (See accompanying file COPYING.MIT or copy at http://opensource.org/licenses/MIT)
*/
#include "MyGUI_Precompiled.h"
#include "MyGUI_ImageBox.h"
#include "MyGUI_CoordConverter.h"
#include "MyGUI_ResourceManager.h"
#include "MyGUI_ResourceSkin.h"
#include "MyGUI_RotatingSkin.h"
#include "MyGUI_Gui.h"
#include "MyGUI_TextureUtility.h"
namespace MyGUI
{
const size_t IMAGE_MAX_INDEX = 256;
void ImageBox::shutdownOverride()
{
frameAdvise(false);
Base::shutdownOverride();
}
void ImageBox::setImageInfo(std::string_view _texture, const IntCoord& _coord, const IntSize& _tile)
{
mCurrentTextureName = _texture;
mSizeTexture = texture_utility::getTextureSize(mCurrentTextureName);
mSizeTile = _tile;
mRectImage.left = _coord.left;
mRectImage.top = _coord.top;
mRectImage.right = _coord.left + _coord.width;
mRectImage.bottom = _coord.top + _coord.height;
recalcIndexes();
updateSelectIndex(mIndexSelect);
}
void ImageBox::setImageTile(const IntSize& _tile)
{
mSizeTile = _tile;
// если размер еще не установлен, то ставим тот что у тайла
if (mRectImage.empty())
mRectImage.set(0, 0, _tile.width, _tile.height);
//если индекса еще нет, то ставим 0
if (mIndexSelect == ITEM_NONE)
mIndexSelect = 0;
recalcIndexes();
updateSelectIndex(mIndexSelect);
}
void ImageBox::setImageCoord(const IntCoord& _coord)
{
mRectImage.left = _coord.left;
mRectImage.top = _coord.top;
mRectImage.right = _coord.left + _coord.width;
mRectImage.bottom = _coord.top + _coord.height;
setImageRect(mRectImage);
}
void ImageBox::setImageRect(const IntRect& _rect)
{
mRectImage = _rect;
// если тайл еще не установлен, то ставим тот что у координат
if (mSizeTile.empty())
mSizeTile.set(_rect.width(), _rect.height());
//если индекса еще нет, то ставим 0
if (mIndexSelect == ITEM_NONE)
mIndexSelect = 0;
recalcIndexes();
updateSelectIndex(mIndexSelect);
}
void ImageBox::setImageTexture(std::string_view _texture)
{
mCurrentTextureName = _texture;
mSizeTexture = texture_utility::getTextureSize(mCurrentTextureName);
// если первый раз, то ставим во всю текстуру
if (mItems.empty())
{
_setUVSet(FloatRect(0, 0, 1, 1));
_setTextureName(mCurrentTextureName);
}
else
{
recalcIndexes();
updateSelectIndex(mIndexSelect);
}
}
void ImageBox::recalcIndexes()
{
mItems.clear();
if ((mRectImage.right <= mRectImage.left) || (mRectImage.bottom <= mRectImage.top))
return;
if ((mSizeTile.width <= 0) || (mSizeTile.height <= 0))
return;
size_t count_h = (size_t)(mRectImage.width() / mSizeTile.width);
size_t count_v = (size_t)(mRectImage.height() / mSizeTile.height);
if ((count_h * count_v) > IMAGE_MAX_INDEX)
{
MYGUI_LOG(
Warning,
"Tile count very mach, rect : "
<< mRectImage.print() << " tile : " << mSizeTile.print() << " texture : " << _getTextureName()
<< " indexes : " << (count_h * count_v) << " max : " << IMAGE_MAX_INDEX);
return;
}
int pos_h = mRectImage.left;
int pos_v = mRectImage.top;
for (size_t v = 0; v < count_v; ++v)
{
for (size_t h = 0; h < count_h; ++h)
{
addItem(IntCoord(pos_h, pos_v, mSizeTile.width, mSizeTile.height));
pos_h += mSizeTile.width;
}
pos_v += mSizeTile.height;
pos_h = mRectImage.left;
}
}
void ImageBox::updateSelectIndex(size_t _index)
{
mIndexSelect = _index;
if ((_index == ITEM_NONE) || (_index >= mItems.size()))
{
_setTextureName(std::string_view{});
return;
}
_setTextureName(mCurrentTextureName);
VectorImages::iterator iter = mItems.begin() + _index;
if (iter->images.size() < 2)
{
frameAdvise(false);
}
else
{
if (!mFrameAdvise)
{
mCurrentTime = 0;
mCurrentFrame = 0;
}
frameAdvise(true);
}
if (!iter->images.empty())
{
_setUVSet(iter->images.front());
}
}
void ImageBox::deleteItem(size_t _index)
{
MYGUI_ASSERT_RANGE(_index, mItems.size(), "ImageBox::deleteItem");
mItems.erase(mItems.begin() + _index);
if (mIndexSelect != ITEM_NONE)
{
if (mItems.empty())
updateSelectIndex(ITEM_NONE);
else if ((_index < mIndexSelect) || (mIndexSelect == mItems.size()))
updateSelectIndex(mIndexSelect--);
}
}
void ImageBox::deleteAllItems()
{
updateSelectIndex(ITEM_NONE);
mItems.clear();
}
void ImageBox::insertItem(size_t _index, const IntCoord& _item)
{
MYGUI_ASSERT_RANGE_INSERT(_index, mItems.size(), "ImageBox::insertItem");
if (_index == ITEM_NONE)
_index = mItems.size();
VectorImages::iterator iter = mItems.insert(mItems.begin() + _index, ImageItem());
iter->images.push_back(CoordConverter::convertTextureCoord(_item, mSizeTexture));
if ((mIndexSelect != ITEM_NONE) && (_index <= mIndexSelect))
updateSelectIndex(mIndexSelect++);
}
void ImageBox::setItem(size_t _index, const IntCoord& _item)
{
MYGUI_ASSERT_RANGE(_index, mItems.size(), "ImageBox::setItem");
VectorImages::iterator iter = mItems.begin() + _index;
iter->images.clear();
iter->images.push_back(CoordConverter::convertTextureCoord(_item, mSizeTexture));
if (_index == mIndexSelect)
updateSelectIndex(mIndexSelect);
}
void ImageBox::frameEntered(float _frame)
{
if (mIndexSelect == ITEM_NONE)
return;
if (mItems.empty())
return;
VectorImages::iterator iter = mItems.begin() + mIndexSelect;
if ((iter->images.size() < 2) || (iter->frame_rate == 0))
return;
mCurrentTime += _frame;
while (mCurrentTime >= iter->frame_rate)
{
mCurrentTime -= iter->frame_rate;
mCurrentFrame++;
if (mCurrentFrame >= (iter->images.size()))
mCurrentFrame = 0;
}
_setUVSet(iter->images[mCurrentFrame]);
}
void ImageBox::deleteAllItemFrames(size_t _index)
{
MYGUI_ASSERT_RANGE(_index, mItems.size(), "ImageBox::clearItemFrame");
VectorImages::iterator iter = mItems.begin() + _index;
iter->images.clear();
}
void ImageBox::addItemFrame(size_t _index, const IntCoord& _item)
{
MYGUI_ASSERT_RANGE(_index, mItems.size(), "ImageBox::addItemFrame");
VectorImages::iterator iter = mItems.begin() + _index;
iter->images.push_back(CoordConverter::convertTextureCoord(_item, mSizeTexture));
}
void ImageBox::setItemFrameRate(size_t _index, float _rate)
{
MYGUI_ASSERT_RANGE(_index, mItems.size(), "ImageBox::setItemFrameRate");
VectorImages::iterator iter = mItems.begin() + _index;
iter->frame_rate = _rate;
}
float ImageBox::getItemFrameRate(size_t _index) const
{
MYGUI_ASSERT_RANGE(_index, mItems.size(), "ImageBox::getItemFrameRate");
VectorImages::const_iterator iter = mItems.begin() + _index;
return iter->frame_rate;
}
void ImageBox::addItemFrameDuplicate(size_t _index, size_t _indexSourceFrame)
{
MYGUI_ASSERT_RANGE(_index, mItems.size(), "ImageBox::addItemFrameDuplicate");
VectorImages::iterator iter = mItems.begin() + _index;
MYGUI_ASSERT_RANGE(_indexSourceFrame, iter->images.size(), "ImageBox::addItemFrameDuplicate");
iter->images.push_back(iter->images[_indexSourceFrame]);
}
void ImageBox::insertItemFrame(size_t _index, size_t _indexFrame, const IntCoord& _item)
{
MYGUI_ASSERT_RANGE(_index, mItems.size(), "ImageBox::insertItemFrame");
VectorImages::iterator iter = mItems.begin() + _index;
MYGUI_ASSERT_RANGE_INSERT(_indexFrame, iter->images.size(), "ImageBox::insertItemFrame");
if (_indexFrame == ITEM_NONE)
_indexFrame = iter->images.size() - 1;
iter->images.insert(
iter->images.begin() + _indexFrame,
CoordConverter::convertTextureCoord(_item, mSizeTexture));
}
void ImageBox::insertItemFrameDuplicate(size_t _index, size_t _indexFrame, size_t _indexSourceFrame)
{
MYGUI_ASSERT_RANGE(_index, mItems.size(), "ImageBox::insertItemFrameDuplicate");
VectorImages::iterator iter = mItems.begin() + _index;
MYGUI_ASSERT_RANGE_INSERT(_indexFrame, iter->images.size(), "ImageBox::insertItemFrameDuplicate");
if (_indexFrame == ITEM_NONE)
_indexFrame = iter->images.size() - 1;
MYGUI_ASSERT_RANGE(_indexSourceFrame, iter->images.size(), "ImageBox::insertItemFrameDuplicate");
iter->images.insert(iter->images.begin() + _indexFrame, iter->images[_indexSourceFrame]);
}
void ImageBox::setItemFrame(size_t _index, size_t _indexFrame, const IntCoord& _item)
{
MYGUI_ASSERT_RANGE(_index, mItems.size(), "ImageBox::setItemFrame");
VectorImages::iterator iter = mItems.begin() + _index;
MYGUI_ASSERT_RANGE(_indexFrame, iter->images.size(), "ImageBox::setItemFrame");
iter->images[_indexFrame] = CoordConverter::convertTextureCoord(_item, mSizeTexture);
}
void ImageBox::deleteItemFrame(size_t _index, size_t _indexFrame)
{
MYGUI_ASSERT_RANGE(_index, mItems.size(), "ImageBox::deleteItemFrame");
VectorImages::iterator iter = mItems.begin() + _index;
MYGUI_ASSERT_RANGE_INSERT(_indexFrame, iter->images.size(), "ImageBox::deleteItemFrame");
if (_indexFrame == ITEM_NONE)
_indexFrame = iter->images.size() - 1;
iter->images.erase(iter->images.begin() + _indexFrame);
}
void ImageBox::setItemResourceInfo(const ImageIndexInfo& _info)
{
mCurrentTextureName = _info.texture;
mSizeTexture = texture_utility::getTextureSize(mCurrentTextureName);
mItems.clear();
if (!_info.frames.empty())
{
std::vector<IntPoint>::const_iterator iter = _info.frames.begin();
addItem(IntCoord(*iter, _info.size));
setItemFrameRate(0, _info.rate);
for (++iter; iter != _info.frames.end(); ++iter)
{
addItemFrame(0, MyGUI::IntCoord(*iter, _info.size));
}
}
mIndexSelect = 0;
updateSelectIndex(mIndexSelect);
}
bool ImageBox::setItemResource(std::string_view _name)
{
IResourcePtr resource = ResourceManager::getInstance().getByName(_name, false);
setItemResourcePtr(resource ? resource->castType<ResourceImageSet>() : nullptr);
return resource != nullptr;
}
void ImageBox::setItemResourcePtr(ResourceImageSetPtr _resource)
{
if (mResource == _resource)
return;
// если первый раз то устанавливаем дефолтное
if (mResource == nullptr)
{
if (mItemGroup.empty())
{
EnumeratorGroupImage iter_group = _resource->getEnumerator();
while (iter_group.next())
{
mItemGroup = iter_group.current().name;
if (mItemName.empty() && !iter_group.current().indexes.empty())
{
mItemName = iter_group.current().indexes[0].name;
}
break;
}
}
else if (mItemName.empty())
{
EnumeratorGroupImage iter_group = _resource->getEnumerator();
while (iter_group.next())
{
if (mItemGroup == iter_group.current().name)
{
if (!iter_group.current().indexes.empty())
{
mItemName = iter_group.current().indexes[0].name;
break;
}
}
}
}
}
mResource = _resource;
if (!mResource || mItemGroup.empty() || mItemName.empty())
updateSelectIndex(ITEM_NONE);
else
setItemResourceInfo(mResource->getIndexInfo(mItemGroup, mItemName));
}
void ImageBox::setItemGroup(std::string_view _group)
{
if (mItemGroup == _group)
return;
mItemGroup = _group;
if (!mResource || mItemGroup.empty() || mItemName.empty())
updateSelectIndex(ITEM_NONE);
else
setItemResourceInfo(mResource->getIndexInfo(mItemGroup, mItemName));
}
void ImageBox::setItemName(std::string_view _name)
{
if (mItemName == _name)
return;
mItemName = _name;
if (!mResource || mItemGroup.empty() || mItemName.empty())
updateSelectIndex(ITEM_NONE);
else
setItemResourceInfo(mResource->getIndexInfo(mItemGroup, mItemName));
}
void ImageBox::setItemResourceInfo(ResourceImageSetPtr _resource, std::string_view _group, std::string_view _name)
{
mResource = _resource;
mItemGroup = _group;
mItemName = _name;
if (!mResource || mItemGroup.empty() || mItemName.empty())
updateSelectIndex(ITEM_NONE);
else
setItemResourceInfo(mResource->getIndexInfo(mItemGroup, mItemName));
}
void ImageBox::frameAdvise(bool _advise)
{
if (_advise)
{
if (!mFrameAdvise)
{
MyGUI::Gui::getInstance().eventFrameStart += MyGUI::newDelegate(this, &ImageBox::frameEntered);
mFrameAdvise = true;
}
}
else
{
if (mFrameAdvise)
{
MyGUI::Gui::getInstance().eventFrameStart -= MyGUI::newDelegate(this, &ImageBox::frameEntered);
mFrameAdvise = false;
}
}
}
void ImageBox::setImageIndex(size_t _index)
{
setItemSelect(_index);
}
size_t ImageBox::getImageIndex() const
{
return getItemSelect();
}
IntSize ImageBox::getImageSize() const
{
return mSizeTexture;
}
void ImageBox::setItemSelect(size_t _index)
{
if (mIndexSelect != _index)
updateSelectIndex(_index);
}
void ImageBox::_setUVSet(const FloatRect& _rect)
{
if (nullptr != getSubWidgetMain())
getSubWidgetMain()->_setUVSet(_rect);
}
void ImageBox::setPropertyOverride(std::string_view _key, std::string_view _value)
{
if (_key == "ImageTexture")
setImageTexture(_value);
else if (_key == "ImageCoord")
setImageCoord(utility::parseValue<IntCoord>(_value));
else if (_key == "ImageTile")
setImageTile(utility::parseValue<IntSize>(_value));
else if (_key == "ImageIndex")
setItemSelect(utility::parseValue<size_t>(_value));
else if (_key == "ImageResource")
setItemResource(_value);
else if (_key == "ImageGroup")
setItemGroup(_value);
else if (_key == "ImageName")
setItemName(_value);
else
{
Base::setPropertyOverride(_key, _value);
return;
}
eventChangeProperty(this, _key, _value);
}
size_t ImageBox::getItemCount() const
{
return mItems.size();
}
size_t ImageBox::getItemSelect() const
{
return mIndexSelect;
}
void ImageBox::resetItemSelect()
{
setItemSelect(ITEM_NONE);
}
void ImageBox::addItem(const IntCoord& _item)
{
insertItem(ITEM_NONE, _item);
}
ResourceImageSetPtr ImageBox::getItemResource() const
{
return mResource;
}
} // namespace MyGUI
MyGUI_CoordConverter.h
MYGUI_ASSERT_RANGE_INSERT
#define MYGUI_ASSERT_RANGE_INSERT(index, size, owner)
Definition MyGUI_Diagnostic.h:50
MYGUI_ASSERT_RANGE
#define MYGUI_ASSERT_RANGE(index, size, owner)
Definition MyGUI_Diagnostic.h:44
MYGUI_LOG
#define MYGUI_LOG(level, text)
Definition MyGUI_Diagnostic.h:17
MyGUI_Gui.h
MyGUI_ImageBox.h
MyGUI_Precompiled.h
MyGUI_ResourceManager.h
MyGUI_ResourceSkin.h
MyGUI_RotatingSkin.h
MyGUI_TextureUtility.h
MyGUI::CoordConverter::convertTextureCoord
static FloatRect convertTextureCoord(const IntCoord &_coord, const IntSize &_textureSize)
Definition MyGUI_CoordConverter.h:20
MyGUI::Enumerator::current
T::const_reference current()
Definition MyGUI_Enumerator.h:84
MyGUI::Enumerator::next
bool next()
Definition MyGUI_Enumerator.h:65
MyGUI::Gui::getInstance
static Gui & getInstance()
Definition MyGUI_Gui.cpp:34
MyGUI::Gui::eventFrameStart
EventHandle_FrameEventDelegate eventFrameStart
Definition MyGUI_Gui.h:215
MyGUI::IObject::castType
Type * castType(bool _throw=true)
Definition MyGUI_IObject.h:18
MyGUI::ISubWidgetRect::_setUVSet
virtual void _setUVSet(const FloatRect &)
Definition MyGUI_ISubWidgetRect.h:22
MyGUI::ImageBox::setItemGroup
void setItemGroup(std::string_view _group)
Definition MyGUI_ImageBox.cpp:407
MyGUI::ImageBox::setItemFrame
void setItemFrame(size_t _index, size_t _indexFrame, const IntCoord &_item)
Definition MyGUI_ImageBox.cpp:309
MyGUI::ImageBox::getImageSize
IntSize getImageSize() const
Definition MyGUI_ImageBox.cpp:472
MyGUI::ImageBox::setItemFrameRate
void setItemFrameRate(size_t _index, float _rate)
Definition MyGUI_ImageBox.cpp:258
MyGUI::ImageBox::setImageTexture
void setImageTexture(std::string_view _texture)
Definition MyGUI_ImageBox.cpp:83
MyGUI::ImageBox::insertItemFrame
void insertItemFrame(size_t _index, size_t _indexFrame, const IntCoord &_item)
Definition MyGUI_ImageBox.cpp:281
MyGUI::ImageBox::shutdownOverride
void shutdownOverride() override
Definition MyGUI_ImageBox.cpp:21
MyGUI::ImageBox::deleteAllItemFrames
void deleteAllItemFrames(size_t _index)
Definition MyGUI_ImageBox.cpp:244
MyGUI::ImageBox::setItemResource
bool setItemResource(std::string_view _name)
Definition MyGUI_ImageBox.cpp:355
MyGUI::ImageBox::resetItemSelect
void resetItemSelect()
Reset item selection.
Definition MyGUI_ImageBox.cpp:538
MyGUI::ImageBox::setPropertyOverride
void setPropertyOverride(std::string_view _key, std::string_view _value) override
Definition MyGUI_ImageBox.cpp:489
MyGUI::ImageBox::setItemSelect
void setItemSelect(size_t _index)
Select specified _index.
Definition MyGUI_ImageBox.cpp:477
MyGUI::ImageBox::setItemName
void setItemName(std::string_view _name)
Definition MyGUI_ImageBox.cpp:419
MyGUI::ImageBox::setImageIndex
void setImageIndex(size_t _index)
Definition MyGUI_ImageBox.cpp:462
MyGUI::ImageBox::setItemResourcePtr
void setItemResourcePtr(ResourceImageSetPtr _resource)
Definition MyGUI_ImageBox.cpp:362
MyGUI::ImageBox::setImageInfo
void setImageInfo(std::string_view _texture, const IntCoord &_coord, const IntSize &_tile)
Definition MyGUI_ImageBox.cpp:28
MyGUI::ImageBox::setItemResourceInfo
void setItemResourceInfo(const ImageIndexInfo &_info)
Definition MyGUI_ImageBox.cpp:331
MyGUI::ImageBox::getItemResource
ResourceImageSetPtr getItemResource() const
Definition MyGUI_ImageBox.cpp:548
MyGUI::ImageBox::insertItem
void insertItem(size_t _index, const IntCoord &_item)
Insert an item into a list at a specified position.
Definition MyGUI_ImageBox.cpp:194
MyGUI::ImageBox::insertItemFrameDuplicate
void insertItemFrameDuplicate(size_t _index, size_t _indexFrame, size_t _indexSourceFrame)
Definition MyGUI_ImageBox.cpp:295
MyGUI::ImageBox::deleteItemFrame
void deleteItemFrame(size_t _index, size_t _indexFrame)
Definition MyGUI_ImageBox.cpp:319
MyGUI::ImageBox::getItemCount
size_t getItemCount() const
Get number of items.
Definition MyGUI_ImageBox.cpp:528
MyGUI::ImageBox::getItemFrameRate
float getItemFrameRate(size_t _index) const
Definition MyGUI_ImageBox.cpp:265
MyGUI::ImageBox::addItemFrameDuplicate
void addItemFrameDuplicate(size_t _index, size_t _indexSourceFrame)
Definition MyGUI_ImageBox.cpp:272
MyGUI::ImageBox::deleteAllItems
void deleteAllItems()
Delete all items.
Definition MyGUI_ImageBox.cpp:188
MyGUI::ImageBox::setImageCoord
void setImageCoord(const IntCoord &_coord)
Definition MyGUI_ImageBox.cpp:58
MyGUI::ImageBox::addItemFrame
void addItemFrame(size_t _index, const IntCoord &_item)
Definition MyGUI_ImageBox.cpp:251
MyGUI::ImageBox::setImageRect
void setImageRect(const IntRect &_rect)
Definition MyGUI_ImageBox.cpp:68
MyGUI::ImageBox::setImageTile
void setImageTile(const IntSize &_tile)
Definition MyGUI_ImageBox.cpp:43
MyGUI::ImageBox::getItemSelect
size_t getItemSelect() const
Get index of selected item (ITEM_NONE if none selected).
Definition MyGUI_ImageBox.cpp:533
MyGUI::ImageBox::deleteItem
void deleteItem(size_t _index)
Delete item at a specified position.
Definition MyGUI_ImageBox.cpp:173
MyGUI::ImageBox::addItem
void addItem(const IntCoord &_item)
Add an item to the end of a list.
Definition MyGUI_ImageBox.cpp:543
MyGUI::ImageBox::setItem
void setItem(size_t _index, const IntCoord &_item)
Replace an item at a specified position.
Definition MyGUI_ImageBox.cpp:208
MyGUI::ImageBox::getImageIndex
size_t getImageIndex() const
Definition MyGUI_ImageBox.cpp:467
MyGUI::ResourceImageSet
Definition MyGUI_ResourceImageSet.h:27
MyGUI::ResourceImageSet::getEnumerator
EnumeratorGroupImage getEnumerator() const
Definition MyGUI_ResourceImageSet.cpp:186
MyGUI::ResourceManager::getByName
IResource * getByName(std::string_view _name, bool _throw=true) const
Definition MyGUI_ResourceManager.cpp:243
MyGUI::ResourceManager::getInstance
static ResourceManager & getInstance()
MyGUI::SkinItem::getSubWidgetMain
ISubWidgetRect * getSubWidgetMain() const
Definition MyGUI_SkinItem.cpp:153
MyGUI::SkinItem::_setTextureName
void _setTextureName(std::string_view _texture)
Definition MyGUI_SkinItem.cpp:126
MyGUI::SkinItem::_getTextureName
const std::string & _getTextureName() const
Definition MyGUI_SkinItem.cpp:134
MyGUI::Widget::eventChangeProperty
EventHandle_WidgetStringString eventChangeProperty
Definition MyGUI_Widget.h:324
MyGUI::texture_utility::getTextureSize
const IntSize & getTextureSize(const std::string &_texture, bool _cache=true)
Definition MyGUI_TextureUtility.cpp:17
MyGUI::utility::parseValue
T parseValue(std::string_view _value)
Definition MyGUI_StringUtility.h:60
MyGUI
Definition MyGUI_ActionController.h:15
MyGUI::IntRect
types::TRect< int > IntRect
Definition MyGUI_Types.h:33
MyGUI::ResourceImageSetPtr
ResourceImageSet * ResourceImageSetPtr
Definition MyGUI_ResourceImageSet.h:24
MyGUI::IResourcePtr
IResource * IResourcePtr
Definition MyGUI_IResource.h:19
MyGUI::FloatRect
types::TRect< float > FloatRect
Definition MyGUI_Types.h:34
MyGUI::ITEM_NONE
constexpr size_t ITEM_NONE
Definition MyGUI_Macros.h:19
MyGUI::IMAGE_MAX_INDEX
const size_t IMAGE_MAX_INDEX
Definition MyGUI_ImageBox.cpp:19
MyGUI::IntCoord
types::TCoord< int > IntCoord
Definition MyGUI_Types.h:36
MyGUI::IntSize
types::TSize< int > IntSize
Definition MyGUI_Types.h:30
MyGUI::newDelegate
delegates::DelegateFunction< Args... > * newDelegate(void(*_func)(Args... args))
Definition MyGUI_Delegate.h:100
MyGUI::EnumeratorGroupImage
Enumerator< VectorGroupImage > EnumeratorGroupImage
Definition MyGUI_ResourceImageSetData.h:31
MyGUI::ImageIndexInfo
Definition MyGUI_ImageInfo.h:25
MyGUI::ImageIndexInfo::texture
std::string_view texture
Definition MyGUI_ImageInfo.h:40
MyGUI::ImageIndexInfo::size
const IntSize & size
Definition MyGUI_ImageInfo.h:41
MyGUI::ImageIndexInfo::rate
const float rate
Definition MyGUI_ImageInfo.h:42
MyGUI::ImageIndexInfo::frames
const std::vector< IntPoint > & frames
Definition MyGUI_ImageInfo.h:43
MyGUI::ImageItem
Definition MyGUI_ImageInfo.h:17
MyGUI::types::TCoord::height
T height
Definition MyGUI_TCoord.h:23
MyGUI::types::TCoord::width
T width
Definition MyGUI_TCoord.h:22
MyGUI::types::TCoord::top
T top
Definition MyGUI_TCoord.h:21
MyGUI::types::TCoord::left
T left
Definition MyGUI_TCoord.h:20
MyGUI::types::TRect::right
T right
Definition MyGUI_TRect.h:21
MyGUI::types::TRect::print
std::string print() const
Definition MyGUI_TRect.h:135
MyGUI::types::TRect::set
void set(T const &_left, T const &_top, T const &_right, T const &_bottom)
Definition MyGUI_TRect.h:98
MyGUI::types::TRect::height
T height() const
Definition MyGUI_TRect.h:88
MyGUI::types::TRect::left
T left
Definition MyGUI_TRect.h:19
MyGUI::types::TRect::bottom
T bottom
Definition MyGUI_TRect.h:22
MyGUI::types::TRect::width
T width() const
Definition MyGUI_TRect.h:83
MyGUI::types::TRect::top
T top
Definition MyGUI_TRect.h:20
MyGUI::types::TSize::width
T width
Definition MyGUI_TSize.h:19
MyGUI::types::TSize::height
T height
Definition MyGUI_TSize.h:20
MyGUI::types::TSize::print
std::string print() const
Definition MyGUI_TSize.h:95
MyGUI::types::TSize::set
void set(T const &_width, T const &_height)
Definition MyGUI_TSize.h:77