Commit 5a6415b

Nick Faro committed on
Proper XOR selection drawing. Should fix QT and Cocoa
commit 5a6415b7379572f042645c2439336d987ef550aa parent 00140d7
1 changed files +7−16
Modifiedsrc/trackergrid.pas +7−16
@@ -392,9 +392,9 @@ begin
392 for I := 0 to NumColumns do 392 for I := 0 to NumColumns do
393 Canvas.Line((ColumnWidth*I) - 1, 0, (ColumnWidth*I) - 1, Height); 393 Canvas.Line((ColumnWidth*I) - 1, 0, (ColumnWidth*I) - 1, Height);
394 394
395 RenderSelectedArea;
396 if DraggingSelection then 395 if DraggingSelection then
397 Canvas.DrawFocusRect(SelectionsToRect(DragSelCursor, DragSelOther)); 396 Canvas.DrawFocusRect(SelectionsToRect(DragSelCursor, DragSelOther));
397 RenderSelectedArea;
398 end; 398 end;
399 399
400 procedure TTrackerGrid.MouseDown(Button: TMouseButton; Shift: TShiftState; X, 400 procedure TTrackerGrid.MouseDown(Button: TMouseButton; Shift: TShiftState; X,
@@ -822,22 +822,13 @@ begin
822 end; 822 end;
823 823
824 procedure TTrackerGrid.RenderSelectedArea; 824 procedure TTrackerGrid.RenderSelectedArea;
825 var
826 R: TRect;
827 begin 825 begin
828 R := SelectionsToRect(Cursor, Other); 826 Canvas.Pen.Width := 1;
829 827 Canvas.Pen.Color := clBlack;
830 with Cursor do 828 Canvas.Brush.Color := clWhite;
831 BitBlt( 829 Canvas.Pen.Mode := pmXOR;
832 Canvas.Handle, 830 Canvas.Rectangle(SelectionsToRect(Cursor, Other));
833 R.Left, 831 Canvas.Pen.Mode := pmCopy;
834 R.Top,
835 R.Width,
836 R.Height,
837 Canvas.Handle,
838 R.Left,
839 R.Top,
840 DSTINVERT);
841 end; 832 end;
842 833
843 procedure TTrackerGrid.ClampCursors; 834 procedure TTrackerGrid.ClampCursors;