public void ClosePopup( bool allowOverride )
{
if( popup == null )
return;
if( dfGUIManager.GetModalControl() == popup )
{
dfGUIManager.PopModal();
}
popup.LostFocus -= popup_LostFocus;
popup.SelectedIndexChanged -= popup_SelectedIndexChanged;
popup.ItemClicked -= popup_ItemClicked;
popup.KeyDown -= popup_KeyDown;
if( !allowOverride )
{
Destroy( popup.gameObject );
popup = null;
return;
}
bool overridden = false;
if( DropdownClose != null )
{
DropdownClose( this, popup, ref overridden );
}
if( !overridden )
{
Signal( "OnDropdownClose", this, popup );
}
if( !overridden )
{
Destroy( popup.gameObject );
}
popup = null;
}