1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
|
/*!
@file
@author Pavel Turin
@date 08/2009
*/
#include "Precompiled.h"
#include "TreeControlItem.h"
namespace MyGUI
{
TreeControlItem::TreeControlItem() :
mpButtonExpandCollapse(nullptr),
mpIcon(nullptr)
{
}
void TreeControlItem::initialiseOverride()
{
Base::initialiseOverride();
assignWidget(mpButtonExpandCollapse, "ButtonExpandCollapse");
if (mpButtonExpandCollapse != nullptr)
{
mpButtonExpandCollapse->eventMouseSetFocus += newDelegate(this, &TreeControlItem::notifyMouseSetFocus);
mpButtonExpandCollapse->eventMouseLostFocus += newDelegate(this, &TreeControlItem::notifyMouseLostFocus);
mpButtonExpandCollapse->eventMouseWheel += newDelegate(this, &TreeControlItem::notifyMouseWheel);
}
assignWidget(mpIcon, "Image");
MYGUI_ASSERT(nullptr != mpButtonExpandCollapse, "Child ButtonExpandCollapse not found in skin (TreeControlItem must have ButtonExpandCollapse)");
}
void TreeControlItem::shutdownOverride()
{
mpButtonExpandCollapse = nullptr;
Base::shutdownOverride();
}
void TreeControlItem::notifyMouseSetFocus(Widget* pSender, Widget* pPreviousWidget)
{
if (pSender && pSender->getParent() == this)
onMouseSetFocus(pPreviousWidget);
}
void TreeControlItem::notifyMouseLostFocus(Widget* pSender, Widget* pNextWidget)
{
if (pSender && pSender->getParent() == this)
onMouseLostFocus(pNextWidget);
}
void TreeControlItem::notifyMouseWheel(Widget* pSender, int nValue)
{
if (pSender && pSender->getParent() == this)
onMouseWheel(nValue);
}
TreeControl::Node* TreeControlItem::getNode() const
{
return *getUserData<TreeControl::Node*>();
}
}
|