45 const std::string factory_type =
"Controller";
57 if (!mIsInitialise)
return;
60 const std::string factory_type =
"Controller";
70 mIsInitialise =
false;
73 void ControllerManager::clear()
75 for (ListControllerItem::iterator iter=mListItem.begin(); iter!=mListItem.end(); ++iter)
77 delete (*iter).second;
85 return object ==
nullptr ?
nullptr :
object->castType<
ControllerItem>();
96 for (ListControllerItem::iterator iter=mListItem.begin(); iter!=mListItem.end(); ++iter)
99 if ((*iter).first == _widget)
101 if ((*iter).second->getTypeName() == _item->
getTypeName())
103 delete (*iter).second;
104 (*iter).second = _item;
111 mListItem.push_back(PairControllerItem(_widget, _item));
117 for (ListControllerItem::iterator iter=mListItem.begin(); iter!=mListItem.end(); ++iter)
119 if ((*iter).first == _widget) (*iter).first =
nullptr;
123 void ControllerManager::_unlinkWidget(
Widget* _widget)
128 void ControllerManager::frameEntered(
float _time)
130 for (ListControllerItem::iterator iter=mListItem.begin(); iter!=mListItem.end(); )
132 if (
nullptr == (*iter).first)
134 delete (*iter).second;
136 iter = mListItem.erase(iter);
140 if ((*iter).second->addTime((*iter).first, _time))
147 (*iter).first =
nullptr;