No changes, just cleanup the image part of the docview sample.

Remove unnecessary, never used methods.

Don't use pointers when objects or references can be used more safely.

Don't name classes which are not part of wx with "wx" prefix to avoid
confusing people.

Don't define empty unnecessary event tables.

Prefer wxScrolledWindow::SetVirtualSize() to SetScrollbars().

Stop using "protected" when "private" should be used.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64300 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
2010-05-13 14:37:06 +00:00
parent 2954883593
commit 2d4a03f8a7
5 changed files with 47 additions and 107 deletions

View File

@@ -284,70 +284,66 @@ void MyCanvas::OnMouseEvent(wxMouseEvent& event)
}
// ----------------------------------------------------------------------------
// wxImageCanvas implementation
// ImageCanvas implementation
// ----------------------------------------------------------------------------
BEGIN_EVENT_TABLE(wxImageCanvas, wxScrolledWindow)
END_EVENT_TABLE()
// Define a constructor for my canvas
wxImageCanvas::wxImageCanvas(wxView* view, wxWindow* parent)
ImageCanvas::ImageCanvas(wxView* view, wxWindow* parent)
: wxScrolledWindow(parent, wxID_ANY, wxPoint(0, 0), parent->GetClientSize())
{
SetScrollRate( 10, 10 );
m_view = view;
}
// Define the repainting behaviour
void wxImageCanvas::OnDraw(wxDC& dc)
void ImageCanvas::OnDraw(wxDC& dc)
{
if ( m_view )
m_view->OnDraw(& dc);
}
// ----------------------------------------------------------------------------
// wxImageView implementation
// ImageView implementation
// ----------------------------------------------------------------------------
IMPLEMENT_DYNAMIC_CLASS(wxImageView, wxView)
IMPLEMENT_DYNAMIC_CLASS(ImageView, wxView)
BEGIN_EVENT_TABLE(wxImageView, wxView)
END_EVENT_TABLE()
wxImageDocument* wxImageView::GetDocument()
ImageDocument* ImageView::GetDocument()
{
return wxStaticCast(wxView::GetDocument(), wxImageDocument);
return wxStaticCast(wxView::GetDocument(), ImageDocument);
}
bool wxImageView::OnCreate(wxDocument* doc, long WXUNUSED(flags))
bool ImageView::OnCreate(wxDocument* doc, long WXUNUSED(flags))
{
m_frame = wxGetApp().CreateChildFrame(doc, this, false);
m_frame->SetTitle("Image View");
m_canvas = new wxImageCanvas(this, m_frame);
m_canvas = new ImageCanvas(this, m_frame);
m_frame->Show(true);
Activate(true);
return true;
}
void wxImageView::OnUpdate(wxView* sender, wxObject* hint)
void ImageView::OnUpdate(wxView* sender, wxObject* hint)
{
wxView::OnUpdate(sender, hint);
const wxImage* image = GetDocument()->GetImage();
if (image->IsOk())
wxImage image = GetDocument()->GetImage();
if ( image.IsOk() )
{
m_canvas->SetScrollbars( 1, 1, image->GetWidth(), image->GetHeight() );
m_canvas->SetVirtualSize(image.GetWidth(), image.GetHeight());
}
}
void wxImageView::OnDraw(wxDC* dc)
void ImageView::OnDraw(wxDC* dc)
{
const wxImage* image = GetDocument()->GetImage();
if (image->IsOk())
wxImage image = GetDocument()->GetImage();
if ( image.IsOk() )
{
dc->DrawBitmap(wxBitmap(*image), 0, 0);
dc->DrawBitmap(wxBitmap(image), 0, 0);
}
}
bool wxImageView::OnClose(bool deleteWindow)
bool ImageView::OnClose(bool deleteWindow)
{
if ( !GetDocument()->Close() )
return false;