Fix expose requests seek graph
authorH.G. Muller <h.g.muller@hccnet.nl>
Wed, 10 Oct 2012 18:37:58 +0000 (20:37 +0200)
committerH.G. Muller <h.g.muller@hccnet.nl>
Sun, 21 Oct 2012 09:28:19 +0000 (11:28 +0200)
backend.c
draw.c
frontend.h

index 9333320..b7dad06 100644 (file)
--- a/backend.c
+++ b/backend.c
@@ -2513,9 +2513,7 @@ PlotSeekAd (int i)
 void
 PlotSingleSeekAd (int i)
 {
-       DrawSeekOpen();
        PlotSeekAd(i);
-       DrawSeekClose();
 }
 
 void
@@ -2602,14 +2600,13 @@ DrawSeekGraph ()
     h = BOARD_HEIGHT * (squareSize + lineGap) + lineGap;
     w = BOARD_WIDTH  * (squareSize + lineGap) + lineGap;
 
-    DrawSeekOpen();
     DrawSeekBackground(0, 0, w, h);
     DrawSeekAxis(hMargin, h-1-vMargin, w-5, h-1-vMargin);
     DrawSeekAxis(hMargin, h-1-vMargin, hMargin, 5);
     for(i=0; i<4000; i+= 100) if(i>=minRating && i<maxRating) {
        int yy =((double)i - minRating)/(maxRating - minRating)*(h-vMargin-squareSize/8-1) + vMargin;
        yy = h-1-yy;
-       DrawSeekAxis(hMargin+5*(i%500==0), yy, hMargin-5, yy); // rating ticks
+       DrawSeekAxis(hMargin-5, yy, hMargin+5*(i%500==0), yy); // rating ticks
        if(i%500 == 0) {
            char buf[MSG_SIZ];
            snprintf(buf, MSG_SIZ, "%d", i);
@@ -2627,7 +2624,6 @@ DrawSeekGraph ()
        }
     }
     for(i=0; i<nrOfSeekAds; i++) PlotSeekAd(i);
-    DrawSeekClose();
     return TRUE;
 }
 
diff --git a/draw.c b/draw.c
index 668e4a5..3807516 100644 (file)
--- a/draw.c
+++ b/draw.c
@@ -372,6 +372,7 @@ void DrawSeekAxis( int x, int y, int xTo, int yTo )
 
     /* free memory */
     cairo_destroy (cr);
+    GraphExpose(currBoard, x-1, yTo-1, xTo-x+2, y-yTo+2);
 }
 
 void DrawSeekBackground( int left, int top, int right, int bottom )
@@ -385,6 +386,7 @@ void DrawSeekBackground( int left, int top, int right, int bottom )
 
     /* free memory */
     cairo_destroy (cr);
+    GraphExpose(currBoard, left, top, right-left, bottom-top);
 }
 
 void DrawSeekText(char *buf, int x, int y)
@@ -403,6 +405,7 @@ void DrawSeekText(char *buf, int x, int y)
 
     /* free memory */
     cairo_destroy (cr);
+    GraphExpose(currBoard, x-5, y-10, 60, 15);
 }
 
 void DrawSeekDot(int x, int y, int colorNr)
@@ -427,6 +430,7 @@ void DrawSeekDot(int x, int y, int colorNr)
 
     /* free memory */
     cairo_destroy (cr);
+    GraphExpose(currBoard, x-squareSize/8, y-squareSize/8, 2*(squareSize/8), 2*(squareSize/8));
 }
 
 void
@@ -436,16 +440,6 @@ InitDrawingHandle (Option *opt)
 }
 
 void
-DrawSeekOpen ()
-{
-}
-
-void
-DrawSeekClose ()
-{
-}
-
-void
 CreateGrid ()
 {
     int i, j;
@@ -478,7 +472,6 @@ DrawGrid()
   int i;
   cairo_t *cr;
 
-  DrawSeekOpen();
   /* get a cairo_t */
   cr = cairo_create (csBoardWindow);
 
@@ -503,7 +496,6 @@ void
 DrawBorder (int x, int y, int type)
 {
     cairo_t *cr;
-    DrawSeekOpen();
     char *col;
 
     switch(type) {
@@ -628,7 +620,6 @@ DoDrawDot (cairo_surface_t *cs, int marker, int x, int y, int r)
 void
 DrawDot (int marker, int x, int y, int r)
 { // used for atomic captures; no need to draw on backup
-  DrawSeekOpen();
   DoDrawDot(csBoardWindow, marker, x, y, r);
 }
 
@@ -638,8 +629,6 @@ DrawOneSquare (int x, int y, ChessSquare piece, int square_color, int marker, ch
     // piece, background, coordinate/count, marker dot
     cairo_t *cr;
 
-    DrawSeekOpen();
-
     if (piece == EmptySquare) {
        BlankSquare(csBoardWindow, x, y, square_color, piece, 1);
     } else {
@@ -696,7 +685,6 @@ static cairo_surface_t *c_animBufs[3*NrOfAnims]; // newBuf, saveBuf
 static void
 InitAnimState (AnimNr anr)
 {
-    DrawSeekOpen(); // set cs to board widget
     if(c_animBufs[anr]) cairo_surface_destroy (c_animBufs[anr]);
     if(c_animBufs[anr+2]) cairo_surface_destroy (c_animBufs[anr+2]);
     c_animBufs[anr+4] = csBoardWindow;
index 2956cf8..56fed20 100644 (file)
@@ -97,8 +97,6 @@ void DrawSeekAxis P(( int x, int y, int xTo, int yTo ));
 void DrawSeekBackground P(( int left, int top, int right, int bottom ));
 void DrawSeekText P((char *buf, int x, int y));
 void DrawSeekDot P((int x, int y, int color));
-void DrawSeekOpen P((void));
-void DrawSeekClose P((void));
 void PopUpMoveDialog P((char first));
 
 void RingBell P((void));