void Notebook::OnNavigationKey(wxNavigationKeyEvent &e) { if ( e.IsWindowChange() ) { if (DoNavigate()) return; } e.Skip(); }
void Notebook::OnKeyDown(wxKeyEvent& e) { if (e.GetKeyCode() == WXK_TAB && e.m_controlDown) { if (DoNavigate()) return; } else { e.Skip(); } }
void CMessageFrame::OnContinue() { CWinCX * pCX = GetMainWinContext(); if(pCX->GetOriginY() + pCX->GetHeight() < pCX->GetDocumentHeight()) { pCX->Scroll(SB_VERT, SB_PAGEDOWN, 0, NULL); } else if (!pCX->IsLayingOut()) { DoNavigate( MSG_NextUnreadMessage ); } }
// IMailFrame override void CMessageFrame::PaneChanged( MSG_Pane *pane, XP_Bool asynchronous, MSG_PANE_CHANGED_NOTIFY_CODE notify, int32 value) { if ( notify == MSG_PaneNotifyLastMessageDeleted || notify == MSG_PaneNotifyMessageDeleted ) { PostMessage( WM_CLOSE, (WPARAM) 0, (LPARAM) 0 ); } else if (notify == MSG_PaneNotifyFolderLoaded) { MSG_FolderInfo *folderInfo = GetCurFolder(); MessageKey key = MSG_MESSAGEKEYNONE; if (m_bNavPending) { switch ( m_navPending ) { case MSG_Forward: case MSG_Back: ASSERT(0); break; case MSG_NextFolder: case MSG_NextMessage: DoNavigate(MSG_FirstMessage); break; case MSG_NextUnreadMessage: case MSG_NextUnreadThread: case MSG_NextUnreadGroup: case MSG_LaterMessage: m_navPending = MSG_NextUnreadMessage; default: DoNavigate( m_navPending ); break; } } m_bNavPending = FALSE; } else if (notify == MSG_PaneNotifyMessageLoaded) { if (MSG_GetBacktrackState(pane) == MSG_BacktrackIdle) MSG_AddBacktrackMessage(pane, GetCurFolder(), (MessageKey) value); else MSG_SetBacktrackState(pane, MSG_BacktrackIdle); } m_pInfoBar->Update(); }
void MyFrame::OnTabBackward(wxCommandEvent& WXUNUSED(event)) { DoNavigate(wxNavigationKeyEvent::IsBackward | wxNavigationKeyEvent::FromTab); }