mirror of
https://github.com/TorqueGameEngines/Torque3D.git
synced 2026-01-20 04:34:48 +00:00
Merge pull request #1395 from Azaezel/alpha41/beResponsible
setFirstResonder Safeties
This commit is contained in:
commit
fef87c59c3
|
|
@ -2169,7 +2169,7 @@ void GuiCanvas::setFirstResponder( GuiControl* newResponder )
|
|||
if( oldResponder && ( oldResponder != newResponder ) )
|
||||
oldResponder->onLoseFirstResponder();
|
||||
|
||||
if( newResponder && ( newResponder != oldResponder ) )
|
||||
if( newResponder && ( newResponder != oldResponder ) && newResponder->isProperlyAdded())
|
||||
newResponder->onGainFirstResponder();
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -2230,10 +2230,10 @@ void GuiControl::setFirstResponder( GuiControl* firstResponder )
|
|||
|
||||
void GuiControl::setFirstResponder()
|
||||
{
|
||||
if( mAwake && mVisible )
|
||||
if( mAwake && mVisible && isProperlyAdded())
|
||||
{
|
||||
GuiControl *parent = getParent();
|
||||
if ( mProfile->mCanKeyFocus == true && parent != NULL )
|
||||
if ( mProfile->mCanKeyFocus == true && parent && parent->isProperlyAdded())
|
||||
parent->setFirstResponder( this );
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -741,7 +741,7 @@ class GuiControl : public SimGroup
|
|||
GuiControl *getFirstResponder() { return mFirstResponder; }
|
||||
|
||||
/// Occurs when the control gains first-responder status.
|
||||
virtual void onGainFirstResponder();
|
||||
void onGainFirstResponder();
|
||||
|
||||
/// Occurs when the control loses first-responder status.
|
||||
virtual void onLoseFirstResponder();
|
||||
|
|
|
|||
|
|
@ -233,7 +233,7 @@ void GuiInspectorField::setFirstResponder( GuiControl *firstResponder )
|
|||
{
|
||||
Parent::setFirstResponder( firstResponder );
|
||||
|
||||
if ( firstResponder == this || firstResponder == mEdit )
|
||||
if (( firstResponder == this || firstResponder == mEdit ) && firstResponder->isProperlyAdded())
|
||||
{
|
||||
mInspector->setHighlightField( this );
|
||||
}
|
||||
|
|
@ -851,7 +851,8 @@ void GuiInspectorField::setHLEnabled( bool enabled )
|
|||
edit->setCursorPos(0);
|
||||
}
|
||||
}
|
||||
_executeSelectedCallback();
|
||||
if (isProperlyAdded())
|
||||
_executeSelectedCallback();
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue