本文整理汇总了C++中CFWL_NoteDriver::GetTopLoop方法的典型用法代码示例。如果您正苦于以下问题:C++ CFWL_NoteDriver::GetTopLoop方法的具体用法?C++ CFWL_NoteDriver::GetTopLoop怎么用?C++ CFWL_NoteDriver::GetTopLoop使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CFWL_NoteDriver
的用法示例。
在下文中一共展示了CFWL_NoteDriver::GetTopLoop方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: OnProcessMessageToForm
void CFWL_WidgetMgrDelegate::OnProcessMessageToForm(CFWL_Message* pMessage) {
if (!pMessage)
return;
if (!pMessage->m_pDstTarget)
return;
IFWL_Widget* pDstWidget = pMessage->m_pDstTarget;
IFWL_App* pApp = pDstWidget->GetOwnerApp();
if (!pApp)
return;
CFWL_NoteDriver* pNoteDriver =
static_cast<CFWL_NoteDriver*>(pApp->GetNoteDriver());
if (!pNoteDriver)
return;
if (m_pWidgetMgr->IsThreadEnabled())
pMessage = static_cast<CFWL_Message*>(pMessage->Clone());
if (m_pWidgetMgr->IsFormDisabled())
pNoteDriver->ProcessMessage(pMessage);
else
pNoteDriver->QueueMessage(pMessage);
#if (_FX_OS_ == _FX_MACOSX_)
CFWL_NoteLoop* pTopLoop = pNoteDriver->GetTopLoop();
if (pTopLoop)
pNoteDriver->UnqueueMessage(pTopLoop);
#endif
if (m_pWidgetMgr->IsThreadEnabled())
pMessage->Release();
return;
}
示例2: FWL_GetCurrentThreadModalWidget
IFWL_Widget* FWL_GetCurrentThreadModalWidget(IFWL_NoteThread* pNoteThread) {
if (!pNoteThread)
return NULL;
CFWL_NoteDriver* noteDriver =
static_cast<CFWL_NoteDriver*>(pNoteThread->GetNoteDriver());
if (!noteDriver)
return NULL;
if (noteDriver->CountLoop() == 1) {
return NULL;
}
CFWL_NoteLoop* topLoop = noteDriver->GetTopLoop();
if (!topLoop)
return NULL;
CFWL_WidgetImp* widget = topLoop->GetForm();
if (!widget)
return NULL;
return widget->GetInterface();
}