Commit 9b894a78 authored by twanvl's avatar twanvl

* compatibility with wxWdigets 2.9+: SetClippingRegion -> SetDeviceClippingRegion

* overload wxEVT_ERASE_BACKGROUND, to reduce flicker
parent 1363c9a0
...@@ -88,7 +88,7 @@ void CardViewer::onPaint(wxPaintEvent&) { ...@@ -88,7 +88,7 @@ void CardViewer::onPaint(wxPaintEvent&) {
// dc.SetDeviceOrigin(-dx, -dy); // dc.SetDeviceOrigin(-dx, -dy);
wxRegion clip = GetUpdateRegion(); wxRegion clip = GetUpdateRegion();
// clip.Offset(dx, dy); // clip.Offset(dx, dy);
dc.SetClippingRegion(clip); dc.SetDeviceClippingRegion(clip);
// draw // draw
if (!up_to_date) { if (!up_to_date) {
up_to_date = true; up_to_date = true;
...@@ -150,4 +150,5 @@ Rotation CardViewer::getRotation() const { ...@@ -150,4 +150,5 @@ Rotation CardViewer::getRotation() const {
BEGIN_EVENT_TABLE(CardViewer, wxControl) BEGIN_EVENT_TABLE(CardViewer, wxControl)
EVT_PAINT (CardViewer::onPaint) EVT_PAINT (CardViewer::onPaint)
EVT_ERASE_BACKGROUND(CardViewer::onEraseBackground)
END_EVENT_TABLE () END_EVENT_TABLE ()
...@@ -24,7 +24,7 @@ DECLARE_EVENT_TYPE(EVENT_SIZE_CHANGE, <not used>) ...@@ -24,7 +24,7 @@ DECLARE_EVENT_TYPE(EVENT_SIZE_CHANGE, <not used>)
/// A control to view a single card /// A control to view a single card
class CardViewer : public wxControl, public DataViewer { class CardViewer : public wxControl, public DataViewer {
public: public:
CardViewer(Window* parent, int id, long style = 0); CardViewer(Window* parent, int id, long style = wxBORDER_THEME);
/// Get a dc to draw on the card outside onPaint /// Get a dc to draw on the card outside onPaint
/** May NOT be called while in onPaint/draw */ /** May NOT be called while in onPaint/draw */
...@@ -55,6 +55,7 @@ class CardViewer : public wxControl, public DataViewer { ...@@ -55,6 +55,7 @@ class CardViewer : public wxControl, public DataViewer {
private: private:
DECLARE_EVENT_TABLE(); DECLARE_EVENT_TABLE();
void onEraseBackground(wxEraseEvent&) {}
void onPaint(wxPaintEvent&); void onPaint(wxPaintEvent&);
Bitmap buffer; ///< Off-screen buffer we draw to Bitmap buffer; ///< Off-screen buffer we draw to
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment