diff --git a/Makefile.in b/Makefile.in index 13fdb61e95..9d9bc2492b 100644 --- a/Makefile.in +++ b/Makefile.in @@ -24852,7 +24852,7 @@ SAMPLES_DIST: ALL_GUI_DIST cp $(SAMPDIR)/rotate/Makefile.in $(DISTDIR)/samples/rotate cp $(SAMPDIR)/rotate/makefile.unx $(DISTDIR)/samples/rotate cp $(SAMPDIR)/rotate/*.cpp $(DISTDIR)/samples/rotate - cp $(SAMPDIR)/rotate/*.bmp $(DISTDIR)/samples/rotate + cp $(SAMPDIR)/rotate/*.png $(DISTDIR)/samples/rotate mkdir $(DISTDIR)/samples/richedit cp $(SAMPDIR)/richedit/Makefile.in $(DISTDIR)/samples/richedit diff --git a/build/bakefiles/make_dist.mk b/build/bakefiles/make_dist.mk index 37abcff7cc..8874b1d101 100644 --- a/build/bakefiles/make_dist.mk +++ b/build/bakefiles/make_dist.mk @@ -781,7 +781,7 @@ SAMPLES_DIST: ALL_GUI_DIST cp $(SAMPDIR)/rotate/Makefile.in $(DISTDIR)/samples/rotate cp $(SAMPDIR)/rotate/makefile.unx $(DISTDIR)/samples/rotate cp $(SAMPDIR)/rotate/*.cpp $(DISTDIR)/samples/rotate - cp $(SAMPDIR)/rotate/*.bmp $(DISTDIR)/samples/rotate + cp $(SAMPDIR)/rotate/*.png $(DISTDIR)/samples/rotate mkdir $(DISTDIR)/samples/richedit cp $(SAMPDIR)/richedit/Makefile.in $(DISTDIR)/samples/richedit diff --git a/samples/rotate/Makefile.in b/samples/rotate/Makefile.in index 4c40493b4f..7cd2117ac3 100644 --- a/samples/rotate/Makefile.in +++ b/samples/rotate/Makefile.in @@ -174,7 +174,7 @@ rotate.app/Contents/PkgInfo: rotate$(EXEEXT) $(top_srcdir)/src/mac/carbon/Info.p data: @mkdir -p . - @for f in kclub.bmp; do \ + @for f in duck.png; do \ if test ! -f ./$$f ; \ then x=yep ; \ else x=`find $(srcdir)/$$f -newer ./$$f -print` ; \ diff --git a/samples/rotate/duck.png b/samples/rotate/duck.png new file mode 100644 index 0000000000..19721266e9 Binary files /dev/null and b/samples/rotate/duck.png differ diff --git a/samples/rotate/kclub.bmp b/samples/rotate/kclub.bmp deleted file mode 100644 index 2a4aa03a4b..0000000000 Binary files a/samples/rotate/kclub.bmp and /dev/null differ diff --git a/samples/rotate/makefile.bcc b/samples/rotate/makefile.bcc index 30f539035a..12c027d56f 100644 --- a/samples/rotate/makefile.bcc +++ b/samples/rotate/makefile.bcc @@ -212,7 +212,7 @@ $(OBJS)\rotate.exe: $(ROTATE_OBJECTS) $(OBJS)\rotate_rotate.res data: if not exist $(OBJS) mkdir $(OBJS) - for %f in (kclub.bmp) do if not exist $(OBJS)\%f copy .\%f $(OBJS) + for %f in (duck.png) do if not exist $(OBJS)\%f copy .\%f $(OBJS) $(OBJS)\rotate_rotate.obj: .\rotate.cpp $(CXX) -q -c -P -o$@ $(ROTATE_CXXFLAGS) $** diff --git a/samples/rotate/makefile.gcc b/samples/rotate/makefile.gcc index 33c70f9bbf..a573d07d4f 100644 --- a/samples/rotate/makefile.gcc +++ b/samples/rotate/makefile.gcc @@ -203,7 +203,7 @@ $(OBJS)\rotate.exe: $(ROTATE_OBJECTS) $(OBJS)\rotate_rotate_rc.o data: if not exist $(OBJS) mkdir $(OBJS) - for %%f in (kclub.bmp) do if not exist $(OBJS)\%%f copy .\%%f $(OBJS) + for %%f in (duck.png) do if not exist $(OBJS)\%%f copy .\%%f $(OBJS) $(OBJS)\rotate_rotate.o: ./rotate.cpp $(CXX) -c -o $@ $(ROTATE_CXXFLAGS) $< diff --git a/samples/rotate/makefile.vc b/samples/rotate/makefile.vc index 9544ac17d2..85d38a5130 100644 --- a/samples/rotate/makefile.vc +++ b/samples/rotate/makefile.vc @@ -263,7 +263,7 @@ $(OBJS)\rotate.exe: $(ROTATE_OBJECTS) $(OBJS)\rotate_rotate.res data: if not exist $(OBJS) mkdir $(OBJS) - for %f in (kclub.bmp) do if not exist $(OBJS)\%f copy .\%f $(OBJS) + for %f in (duck.png) do if not exist $(OBJS)\%f copy .\%f $(OBJS) $(OBJS)\rotate_rotate.obj: .\rotate.cpp $(CXX) /c /nologo /TP /Fo$@ $(ROTATE_CXXFLAGS) $** diff --git a/samples/rotate/makefile.wat b/samples/rotate/makefile.wat index 3a083010c4..58830dafb0 100644 --- a/samples/rotate/makefile.wat +++ b/samples/rotate/makefile.wat @@ -246,7 +246,7 @@ $(OBJS)\rotate.exe : $(ROTATE_OBJECTS) $(OBJS)\rotate_rotate.res data : .SYMBOLIC if not exist $(OBJS) mkdir $(OBJS) - for %f in (kclub.bmp) do if not exist $(OBJS)\%f copy .\%f $(OBJS) + for %f in (duck.png) do if not exist $(OBJS)\%f copy .\%f $(OBJS) $(OBJS)\rotate_rotate.obj : .AUTODEPEND .\rotate.cpp $(CXX) -zq -fo=$^@ $(ROTATE_CXXFLAGS) $< diff --git a/samples/rotate/rotate.bkl b/samples/rotate/rotate.bkl index 7c9eff1038..e212f20e41 100644 --- a/samples/rotate/rotate.bkl +++ b/samples/rotate/rotate.bkl @@ -12,7 +12,7 @@ - kclub.bmp + duck.png diff --git a/samples/rotate/rotate.cpp b/samples/rotate/rotate.cpp index 002cc3bebd..7313f50ec8 100644 --- a/samples/rotate/rotate.cpp +++ b/samples/rotate/rotate.cpp @@ -47,20 +47,20 @@ private: }; // ---------------------------------------------------------------------------- -// data class for cards that need to be rendered +// data class for images that need to be rendered // ---------------------------------------------------------------------------- -class MyRenderedCard +class MyRenderedImage { public: - MyRenderedCard(const wxBitmap& bmp, int x, int y) + MyRenderedImage(const wxBitmap& bmp, int x, int y) : m_bmp(bmp), m_x(x), m_y(y) { } wxBitmap m_bmp; int m_x, m_y; }; -// Declare a wxArray type to hold MyRenderedCards. -WX_DECLARE_OBJARRAY(MyRenderedCard, ArrayOfCards); +// Declare a wxArray type to hold MyRenderedImages. +WX_DECLARE_OBJARRAY(MyRenderedImage, ArrayOfImages); // ---------------------------------------------------------------------------- // custom canvas control that we can draw on @@ -71,14 +71,14 @@ class MyCanvas: public wxScrolledWindow public: MyCanvas(wxWindow* parent); - void ClearCards(); + void ClearImages(); void OnMouseLeftUp (wxMouseEvent & event); void OnMouseRightUp (wxMouseEvent & event); void OnPaint (wxPaintEvent & event); private: - ArrayOfCards m_cards; + ArrayOfImages m_images; DECLARE_EVENT_TABLE() }; @@ -127,10 +127,11 @@ IMPLEMENT_APP(MyApp) bool MyApp::OnInit() { - m_image = wxImage(_T("kclub.bmp"), wxBITMAP_TYPE_BMP); +#if wxUSE_LIBPNG + wxImage::AddHandler( new wxPNGHandler ); +#endif - // any unused colour will do - m_image.SetMaskColour( 0, 255, 255 ); + m_image = wxImage(_T("duck.png"), wxBITMAP_TYPE_PNG); if ( !m_image.Ok() ) { @@ -148,11 +149,11 @@ bool MyApp::OnInit() } // ---------------------------------------------------------------------------- -// data class for cards that need to be rendered +// data class for images that need to be rendered // ---------------------------------------------------------------------------- #include "wx/arrimpl.cpp" -WX_DEFINE_OBJARRAY(ArrayOfCards); +WX_DEFINE_OBJARRAY(ArrayOfImages); // ---------------------------------------------------------------------------- // custom canvas control that we can draw on @@ -171,9 +172,9 @@ MyCanvas::MyCanvas(wxWindow* parent): ClearBackground(); } -void MyCanvas::ClearCards () +void MyCanvas::ClearImages () { - m_cards.Clear(); + m_images.Clear(); Refresh(true); } @@ -187,8 +188,8 @@ void MyCanvas::OnMouseLeftUp (wxMouseEvent & event) wxImage img2 = img.Rotate(frame->m_angle, wxPoint(img.GetWidth() / 2, img.GetHeight() / 2), true, &offset); - // Add the cards to an array to be drawn later in OnPaint() - m_cards.Add(new MyRenderedCard(wxBitmap(img2), + // Add the images to an array to be drawn later in OnPaint() + m_images.Add(new MyRenderedImage(wxBitmap(img2), event.m_x + offset.x, event.m_y + offset.y)); Refresh(false); } @@ -202,24 +203,24 @@ void MyCanvas::OnMouseRightUp (wxMouseEvent & event) wxImage img2 = img.Rotate(frame->m_angle, wxPoint(img.GetWidth() / 2, img.GetHeight() / 2), false); - // Add the cards to an array to be drawn later in OnPaint() - m_cards.Add(new MyRenderedCard(wxBitmap(img2), event.m_x, event.m_y)); + // Add the images to an array to be drawn later in OnPaint() + m_images.Add(new MyRenderedImage(wxBitmap(img2), event.m_x, event.m_y)); Refresh(false); } void MyCanvas::OnPaint (wxPaintEvent &) { - size_t numCards = m_cards.GetCount(); + size_t numImages = m_images.GetCount(); wxPaintDC dc(this); dc.BeginDrawing(); dc.SetTextForeground(wxColour(255, 255, 255)); - dc.DrawText(wxT("Click on the canvas to draw a card."), 10, 10); + dc.DrawText(wxT("Click on the canvas to draw a duck."), 10, 10); - for (size_t i = 0; i < numCards; i++) { - MyRenderedCard & card = m_cards.Item(i); - dc.DrawBitmap(card.m_bmp, card.m_x, card.m_y, true); + for (size_t i = 0; i < numImages; i++) { + MyRenderedImage & image = m_images.Item(i); + dc.DrawBitmap(image.m_bmp, image.m_x, image.m_y, true); } dc.EndDrawing(); @@ -244,7 +245,7 @@ MyFrame::MyFrame(const wxString& title, const wxPoint& pos, const wxSize& size) wxMenu *menuFile = new wxMenu; menuFile->Append (ID_Angle, _T("Set &angle...\tCtrl-A")); - menuFile->Append (ID_Clear, _T("&Clear all cards\tCtrl-C")); + menuFile->Append (ID_Clear, _T("&Clear all ducks\tCtrl-C")); menuFile->AppendSeparator(); menuFile->Append (ID_Quit, _T("E&xit\tAlt-X")); @@ -274,5 +275,6 @@ void MyFrame::OnQuit (wxCommandEvent &) void MyFrame::OnClear (wxCommandEvent &) { - m_canvas->ClearCards (); + m_canvas->ClearImages (); } +