X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/fc7995487f3032d8415f87619efac7c391c72730..81744507e8ee99136a6db5af695bd3b390d8dc31:/demos/forty/pile.cpp diff --git a/demos/forty/pile.cpp b/demos/forty/pile.cpp index 4622829964..cf1564751d 100644 --- a/demos/forty/pile.cpp +++ b/demos/forty/pile.cpp @@ -40,6 +40,8 @@ #include #include "card.h" #include "pile.h" +#include "forty.h" +#include "canvas.h" #include "wx/app.h" @@ -75,19 +77,18 @@ Pile::Pile(int x, int y, int dx, int dy) //+-------------------------------------------------------------+ void Pile::Redraw(wxDC& dc ) { - wxWindow *frame = wxTheApp->GetTopWindow(); + FortyFrame *frame = (FortyFrame*) wxTheApp->GetTopWindow(); wxWindow *canvas = (wxWindow *) NULL; if (frame) { - wxNode *node = frame->GetChildren().First(); - if (node) canvas = (wxWindow*)node->Data(); + canvas = frame->GetCanvas(); } if (m_topCard >= 0) { if (m_dx == 0 && m_dy == 0) { - if ((canvas) && (canvas->IsExposed(m_x,m_y,Card::GetScale()*60,Card::GetScale()*200))) + if ((canvas) && (canvas->IsExposed(m_x,m_y,(int)(Card::GetScale()*60),(int)(Card::GetScale()*200)))) m_cards[m_topCard]->Draw(dc, m_x, m_y); } else @@ -96,7 +97,7 @@ void Pile::Redraw(wxDC& dc ) int y = m_y; for (int i = 0; i <= m_topCard; i++) { - if ((canvas) && (canvas->IsExposed(x,y,Card::GetScale()*60,Card::GetScale()*200))) + if ((canvas) && (canvas->IsExposed(x,y,(int)(Card::GetScale()*60),(int)(Card::GetScale()*200)))) m_cards[i]->Draw(dc, x, y); x += (int)Card::GetScale()*m_dx; y += (int)Card::GetScale()*m_dy; @@ -105,7 +106,7 @@ void Pile::Redraw(wxDC& dc ) } else { - if ((canvas) && (canvas->IsExposed(m_x,m_y,Card::GetScale()*60,Card::GetScale()*200))) + if ((canvas) && (canvas->IsExposed(m_x,m_y,(int)(Card::GetScale()*60),(int)(Card::GetScale()*200)))) Card::DrawNullCard(dc, m_x, m_y); } }