Fixed preview navigation as per ancient bug report
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@22270 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
parent
a0fcdd5fed
commit
b38b0d22d7
@ -267,13 +267,14 @@ public:
|
||||
virtual wxPrintPreviewBase *GetPrintPreview() const
|
||||
{ return m_printPreview; }
|
||||
|
||||
void OnPrint(wxCommandEvent& event);
|
||||
void OnWindowClose(wxCommandEvent& event);
|
||||
void OnNext();
|
||||
void OnPrevious();
|
||||
void OnFirst();
|
||||
void OnLast();
|
||||
void OnGoto();
|
||||
void OnPrint();
|
||||
void OnPrint(wxCommandEvent& WXUNUSED(event)) { OnPrint(); }
|
||||
void OnNextButton(wxCommandEvent & WXUNUSED(event)) { OnNext(); }
|
||||
void OnPreviousButton(wxCommandEvent & WXUNUSED(event)) { OnPrevious(); }
|
||||
void OnFirstButton(wxCommandEvent & WXUNUSED(event)) { OnFirst(); }
|
||||
|
@ -242,34 +242,42 @@ void wxPreviewCanvas::OnSysColourChanged(wxSysColourChangedEvent& event)
|
||||
|
||||
void wxPreviewCanvas::OnChar(wxKeyEvent &event)
|
||||
{
|
||||
wxPreviewControlBar* controlBar = ((wxPreviewFrame*) GetParent())->GetControlBar();
|
||||
if (event.GetKeyCode() == WXK_ESCAPE)
|
||||
{
|
||||
((wxPreviewFrame*) GetParent())->Close(TRUE);
|
||||
return;
|
||||
}
|
||||
else if (event.GetKeyCode() == WXK_TAB)
|
||||
{
|
||||
controlBar->OnGoto();
|
||||
return;
|
||||
}
|
||||
|
||||
else if (event.GetKeyCode() == WXK_RETURN)
|
||||
{
|
||||
controlBar->OnPrint();
|
||||
return;
|
||||
}
|
||||
|
||||
if (!event.ControlDown())
|
||||
{
|
||||
event.Skip();
|
||||
return;
|
||||
}
|
||||
|
||||
wxPreviewControlBar* controlBar = ((wxPreviewFrame*) GetParent())->GetControlBar();
|
||||
switch(event.GetKeyCode())
|
||||
{
|
||||
case WXK_NEXT:
|
||||
controlBar->OnNext(); break;
|
||||
case WXK_PRIOR:
|
||||
controlBar->OnPrevious(); break;
|
||||
case WXK_HOME:
|
||||
controlBar->OnFirst(); break;
|
||||
case WXK_END:
|
||||
controlBar->OnLast(); break;
|
||||
case WXK_TAB:
|
||||
controlBar->OnGoto(); break;
|
||||
default:
|
||||
event.Skip();
|
||||
}
|
||||
|
||||
switch(event.GetKeyCode())
|
||||
{
|
||||
case WXK_NEXT:
|
||||
controlBar->OnNext(); break;
|
||||
case WXK_PRIOR:
|
||||
controlBar->OnPrevious(); break;
|
||||
case WXK_HOME:
|
||||
controlBar->OnFirst(); break;
|
||||
case WXK_END:
|
||||
controlBar->OnLast(); break;
|
||||
default:
|
||||
event.Skip();
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
@ -323,7 +331,7 @@ void wxPreviewControlBar::OnWindowClose(wxCommandEvent& WXUNUSED(event))
|
||||
frame->Close(TRUE);
|
||||
}
|
||||
|
||||
void wxPreviewControlBar::OnPrint(wxCommandEvent& WXUNUSED(event))
|
||||
void wxPreviewControlBar::OnPrint(void)
|
||||
{
|
||||
wxPrintPreviewBase *preview = GetPrintPreview();
|
||||
preview->Print(TRUE);
|
||||
|
Loading…
Reference in New Issue
Block a user