_ContextMenu::~_ContextMenu(void)
{
- if (__pCurrentFrame)
- {
- __pCurrentFrame->RemoveFrameEventListener(*this);
- __pCurrentFrame = null;
- }
-
if (__isAttachedToMainTree && GetOwner() != null)
{
GetOwner()->UnlockInputEvent();
}
- if (__pScrollPanel) {
+ __pCurrentFrame = null;
+
+ if (__pScrollPanel)
+ {
__pScrollPanel->DetachAllChildren();
DetachChild(*__pScrollPanel);
delete __pScrollPanel;
__pCurrentFrame = dynamic_cast<_Frame*>(_ControlManager::GetInstance()->GetCurrentFrame());
SysTryReturn(NID_UI_CTRL, __pCurrentFrame != null, E_SYSTEM, E_SYSTEM, "[E_SYSTEM] Current frame instance is not available.");
- __pCurrentFrame->AddFrameEventListener(*this);
-
_Form* pForm = __pCurrentFrame->GetCurrentForm();
pForm != null ? SetOwner(pForm) : SetOwner(__pCurrentFrame);
pOwner->LockInputEvent();
}
+ if (__pCurrentFrame != null)
+ {
+ __pCurrentFrame->AddFrameEventListener(*this);
+ }
+
__layout = pOwner->GetOrientation();
_Window* pOwnerWindow = pOwner->GetRootWindow();
ReleaseTouchCapture();
+ if (__pCurrentFrame)
+ {
+ __pCurrentFrame->RemoveFrameEventListener(*this);
+ }
+
_Control* pOwner = GetOwner();
if (pOwner != null)
{
_OptionMenu::~_OptionMenu(void)
{
- if (__pCurrentFrame)
- {
- __pCurrentFrame->RemoveFrameEventListener(*this);
- __pCurrentFrame = null;
- }
-
if (__isAttachedToMainTree && GetOwner() != null)
{
GetOwner()->UnlockInputEvent();
}
+ __pCurrentFrame = null;
+
if (__pScrollPanel)
{
__pScrollPanel->DetachAllChildren();
__pCurrentFrame = dynamic_cast<_Frame*>(_ControlManager::GetInstance()->GetCurrentFrame());
SysTryReturn(NID_UI_CTRL, __pCurrentFrame != null, E_SYSTEM, E_SYSTEM, "[E_SYSTEM] Current frame instance is not available.");
- __pCurrentFrame->AddFrameEventListener(*this);
-
_Form* pForm = __pCurrentFrame->GetCurrentForm();
pForm != null ? SetOwner(pForm) : SetOwner(__pCurrentFrame);
pOwner->LockInputEvent();
}
+ if (__pCurrentFrame != null)
+ {
+ __pCurrentFrame->AddFrameEventListener(*this);
+ }
+
__layout = pOwner->GetOrientation();
_Window* pOwnerWindow = pOwner->GetRootWindow();
{
ReleaseTouchCapture();
+ if (__pCurrentFrame)
+ {
+ __pCurrentFrame->RemoveFrameEventListener(*this);
+ }
+
_Control* pOwner = GetOwner();
if (pOwner != null)
{