You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
45 lines
1.4 KiB
C++
45 lines
1.4 KiB
C++
#ifndef MWGUI_CURSOR_H
|
|
#define MWGUI_CURSOR_H
|
|
|
|
#include <MyGUI_IPointer.h>
|
|
#include <MyGUI_ResourceImageSet.h>
|
|
|
|
namespace MWGui
|
|
{
|
|
|
|
/// \brief Allows us to get the members of
|
|
/// ResourceImageSetPointer that we need.
|
|
/// \example MyGUI::FactoryManager::getInstance().registerFactory<ResourceImageSetPointerFix>("Resource", "ResourceImageSetPointer");
|
|
/// MyGUI::ResourceManager::getInstance().load("core.xml");
|
|
class ResourceImageSetPointerFix final :
|
|
public MyGUI::IPointer
|
|
{
|
|
MYGUI_RTTI_DERIVED( ResourceImageSetPointerFix )
|
|
|
|
public:
|
|
ResourceImageSetPointerFix();
|
|
virtual ~ResourceImageSetPointerFix();
|
|
|
|
void deserialization(MyGUI::xml::ElementPtr _node, MyGUI::Version _version) override;
|
|
|
|
void setImage(MyGUI::ImageBox* _image) override;
|
|
void setPosition(MyGUI::ImageBox* _image, const MyGUI::IntPoint& _point) override;
|
|
|
|
//and now for the whole point of this class, allow us to get
|
|
//the hot spot, the image and the size of the cursor.
|
|
MyGUI::ResourceImageSetPtr getImageSet();
|
|
MyGUI::IntPoint getHotSpot();
|
|
MyGUI::IntSize getSize();
|
|
int getRotation();
|
|
|
|
private:
|
|
MyGUI::IntPoint mPoint;
|
|
MyGUI::IntSize mSize;
|
|
MyGUI::ResourceImageSetPtr mImageSet;
|
|
int mRotation; // rotation in degrees
|
|
};
|
|
|
|
}
|
|
|
|
#endif
|