From 2e64c8e7bc59bda27be26495a605719c254ce388 Mon Sep 17 00:00:00 2001 From: Chris Elliott Date: Mon, 18 Nov 2002 16:07:14 +0000 Subject: [PATCH] update sample to test for const char * cast to int in imagbmp.cpp bug git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_2_4_BRANCH@17897 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- samples/image/horse3.ani | Bin 0 -> 17268 bytes samples/image/image.cpp | 35 +++++++++++++++++++++++++++++++++++ 2 files changed, 35 insertions(+) create mode 100644 samples/image/horse3.ani diff --git a/samples/image/horse3.ani b/samples/image/horse3.ani new file mode 100644 index 0000000000000000000000000000000000000000..24ef4b1e23dd62589814fad4102b7e14d52bfbfd GIT binary patch literal 17268 zcmeHN&1w`u5FQg@(MxjDi;y55e2XZG5D*3R1%fE%UVoyqP-cc9bt^Zj(s>`umsFLs|iIegSK4<9{$ws)}q?q1V0G_H3ePrc)2 z&aUP0aqsZWW}Yd(A;#0)m#^+*y|*9t-tWKuaPXBt&06McZ#T_mbG!MRE4Om(ejd5h zJjf$=^Ur*==+kiZ^Xi|0PhY+#9*fuwd&@bx4&p{RgqNNeNA#Fm!(pyAd-WvO!;$z> z?9n0&YLs}0P2GWY%1b)3hg{i{G2$ra1ACHZ#mJ=`IU1%^Lw+eA(;?1S&#IUFuxDvS z`>1c_QGE+<`C;GEi}X?3lSlL|tj7;AmS&`n+MYb3Z(%)th_N)iebn{lUVRJa^+TMc z>*=FrB=_iBn1~-@Ep1O9H6yu4zl4c+Y1opsr>AK~Y90>_6Y=n3HJ`DXSF;v3=1cWj z%^IGzjvAd>4*J*XOu?J?xu0UqmIgmVxAVzPN+%oX=+7+e{9aF6zt+>nk37E3((HJa z)|y%V>}_;oE6;N5?5E9PfDLBk`r!qeU3hDDe<`dLK$>Z_;GHq$7KhL$U117;%*I zfj!ByV&qbe91T;dA-|N5=@4hEXVpu7*t4{vebl$|sJ?}_{IGB7Mf#}i$s_s}*5ij5 zOEc0(ZBHK2x3C^R#8{f%KI(e&G5zMjaiTHS$GX=Kai~N2yu4{GEC2JqM9Fh6uYGg( z@!97<#w{K%XfVg~&(|LP$(M)Z1nma!o>upnm)^23i!qN=zVhgu0r?H@HRhB^e~zQpwRZ;g)8@z; zm|w$Tt~Pu1B-g`{_)_fAA`EJjc!=dYAl4}_>Bt^(WlzS4qnr=yNuCuWm+}E8@UID# zKM*`GX#T9x&VeT@);d?WBj$|F{8T&E$GYvfrVjkJQ&#{j}Kbf;P z&9Xig_mzFwm=@L9zl4!JpJN{-`4~t1`>Os7Jvonf6UXn^N3x%s=jBZ+k-i)+qklfZ z?H?9-jdJdv(O4#RDCWJ>%sqO0!2YYZ7^iQ2VrSWj4*aflDptez+G}&QXa#ZE{42IF z8HLWpWMWGq#Lv*}yn2hVBv<8sT86yCEMni%pX2B{YVQo}r_GTyFu#VwTy6I1Nv?+@ z@uk?KMHtj5@es>*K&(?<(vdyn%3d!PPj$>0^Y8JDgtg>6pma|+^2t)-F&^*>1>|y0 z6pHz&7GuU~bHQ%V()hBb`OBKbQams)3dqM?^WqxK1H9pfZRBIlURbA`d%Oi>uEKQA7V5eu0{M&*PF8!&Jl0odi@ZG zzO7bwztehJ4K*XVs<(vx`2?@tVs!r>LteAUwbrmbt?s(hXJ6K}Skt<2E%3R!u$LjA u?U`!^b<*~kXMWhCKipG3sevKZ`gPvqZ@@3Ny=ebS*j?Vz`LTev7=HoZxT`Jz literal 0 HcmV?d00001 diff --git a/samples/image/image.cpp b/samples/image/image.cpp index 3f60d99734..d2e2924524 100644 --- a/samples/image/image.cpp +++ b/samples/image/image.cpp @@ -60,12 +60,14 @@ public: wxBitmap *my_horse_ico16; wxBitmap *my_horse_ico; wxBitmap *my_horse_cur; + wxBitmap *my_horse_ani; wxBitmap *my_smile_xbm; wxBitmap *my_square; wxBitmap *my_anti; int xH, yH ; + int m_ani_images ; protected: wxBitmap m_bmpSmileXpm; @@ -264,11 +266,14 @@ MyCanvas::MyCanvas( wxWindow *parent, wxWindowID id, my_horse_ico16 = (wxBitmap*) NULL; my_horse_ico = (wxBitmap*) NULL; my_horse_cur = (wxBitmap*) NULL; + my_horse_ani = (wxBitmap*) NULL; my_smile_xbm = (wxBitmap*) NULL; my_square = (wxBitmap*) NULL; my_anti = (wxBitmap*) NULL; + m_ani_images = 0 ; + SetBackgroundColour(* wxWHITE); wxBitmap bitmap( 100, 100 ); @@ -417,6 +422,27 @@ MyCanvas::MyCanvas( wxWindow *parent, wxWindowID id, xH = 30 + image.GetOptionInt(wxIMAGE_OPTION_CUR_HOTSPOT_X) ; yH = 2420 + image.GetOptionInt(wxIMAGE_OPTION_CUR_HOTSPOT_Y) ; } + + m_ani_images = wxImage::GetImageCount ( dir + _T("horse.ani"), wxBITMAP_TYPE_ANI ); + if (m_ani_images==0) + wxLogError(wxT("No ANI-format images found")); + else + my_horse_ani = new wxBitmap [m_ani_images]; + int i ; + for (i=0; i < m_ani_images; i++) + { + image.Destroy(); + if (!image.LoadFile( dir + _T("horse.ani"), wxBITMAP_TYPE_ANI, i )) + { + wxString tmp = wxT("Can't load image number "); + tmp << i ; + wxLogError(tmp); + } + else + my_horse_ani [i] = wxBitmap( image ); + } + + #endif image.Destroy(); @@ -454,6 +480,7 @@ MyCanvas::~MyCanvas() delete my_horse_ico16; delete my_horse_ico; delete my_horse_cur; + delete [] my_horse_ani; delete my_smile_xbm; delete my_square; delete my_anti; @@ -611,6 +638,13 @@ void MyCanvas::OnPaint( wxPaintEvent &WXUNUSED(event) ) dc.DrawLine (xH-10,yH,xH+10,yH); dc.DrawLine (xH,yH-10,xH,yH+10); } + dc.DrawText( _T("ANI handler"), 230, 2390 ); + int i ; + for (i=0; i < m_ani_images; i ++) + if (my_horse_ani[i].Ok()) + { + dc.DrawBitmap( my_horse_ani[i], 230 + i * 2 * my_horse_ani[i].GetWidth() , 2420, TRUE ); + } } void MyCanvas::CreateAntiAliasedBitmap() @@ -768,6 +802,7 @@ bool MyApp::OnInit() #if wxUSE_ICO_CUR wxImage::AddHandler( new wxICOHandler ); wxImage::AddHandler( new wxCURHandler ); + wxImage::AddHandler( new wxANIHandler ); #endif wxFrame *frame = new MyFrame();