ios stuff
This commit is contained in:
parent
554d35f27b
commit
144acdd633
@ -24,6 +24,7 @@ public:
|
||||
|
||||
virtual void OnTapDown(vec2 pos) { }
|
||||
virtual void OnTapUp(vec2 pos) { }
|
||||
virtual void OnTapUpAfterMove(vec2 pos) { }
|
||||
virtual void OnMove(vec2 shift) { }
|
||||
virtual void OnMoveOut() { }
|
||||
virtual void OnKeyPress(int key) { }
|
||||
@ -164,6 +165,7 @@ public:
|
||||
|
||||
virtual void OnTapDown(vec2 pos);
|
||||
virtual void OnTapUp(vec2 pos);
|
||||
virtual void OnTapUpAfterMove(vec2 pos);
|
||||
virtual void OnMoveOut();
|
||||
|
||||
static TUniversalButton* CreateButton(vec2 posFrom, vec2 posTo);
|
||||
|
@ -169,6 +169,8 @@ public:
|
||||
|
||||
void OnMouseUp(vec2 pos);
|
||||
|
||||
void OnMouseUpAfterMove(vec2 pos);
|
||||
|
||||
void OnMove(vec2 shift);
|
||||
|
||||
void ShowKeyboard(const std::string text = "");
|
||||
|
@ -331,6 +331,11 @@ void TUniversalButton::OnTapUp(vec2 pos)
|
||||
|
||||
}
|
||||
|
||||
void TUniversalButton::OnTapUpAfterMove(vec2 pos)
|
||||
{
|
||||
OnTapUp(pos);
|
||||
}
|
||||
|
||||
void TUniversalButton::OnMoveOut()
|
||||
{
|
||||
if (ButtonState == BS_PRESSED || ButtonState == BS_GO_PRESSED)
|
||||
|
@ -326,6 +326,44 @@ void TGUIManager::OnMouseUp(vec2 pos)
|
||||
|
||||
}
|
||||
|
||||
void TGUIManager::OnMouseUpAfterMove(vec2 pos)
|
||||
{
|
||||
//Xperimental - need to call widget methods and signals NOT IN "FOR" LOOP
|
||||
|
||||
boost::lock_guard<boost::mutex> guard(WidgetListMutex);
|
||||
|
||||
TWidgetArr::reverse_iterator i;
|
||||
|
||||
std::vector<std::shared_ptr<boost::signal<void (TSignalParam)>>> signalMap;
|
||||
|
||||
for (i = WidgetArr.rbegin(); i != WidgetArr.rend(); ++i)
|
||||
{
|
||||
if (i->Widget->CheckClick(pos))
|
||||
{
|
||||
bool isTransparentForInput = i->Widget->IsTransparentForInput();
|
||||
i->Widget->OnTapUpAfterMove(pos);
|
||||
i->IsMouseDown = false;
|
||||
|
||||
//signalMap.push_back((i->SignalMap[CONST_CLICK_SIGNAL_NAME]));
|
||||
//Do not call signals here
|
||||
|
||||
if (! isTransparentForInput)
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//Keep this outside since signal may affect WidgetArr
|
||||
BOOST_FOREACH(auto signalPtr, signalMap)
|
||||
{
|
||||
(*signalPtr)(TSignalParam(pos));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
void TGUIManager::OnMove(vec2 shift)
|
||||
{
|
||||
//Xperimental - need to call widget methods and signals NOT IN "FOR" LOOP
|
||||
|
@ -133,6 +133,7 @@ void TApplicationAncestor::OuterOnTapUp(vec2 p)
|
||||
|
||||
void TApplicationAncestor::OuterOnTapUpAfterMove(vec2 p)
|
||||
{
|
||||
ResourceManager->GUIManager.OnMouseUpAfterMove(p);
|
||||
InnerOnTapUpAfterMove(p);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user