Changeset 18 for trunk/UBlockMap.pas


Ignore:
Timestamp:
Apr 2, 2016, 9:15:35 PM (8 years ago)
Author:
chronos
Message:
  • Added: Mark written sectors with write flag and blue color.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/UBlockMap.pas

    r10 r18  
    66
    77uses
    8   Classes, SysUtils, Graphics, Math, Contnrs, Dialogs, DOM, XMLRead, XMLWrite,
    9   UXMLUtils;
     8  Classes, SysUtils, Graphics, Math, Contnrs, Dialogs, DOM, UXMLUtils;
    109
    1110type
    12   TSectorState = (bsNone, bsOk, bsDamaged);
     11  TSectorState = (bsNone, bsRead, bsDamaged, bsWrite);
    1312
    1413  TChange = class
     
    270269    while (ChangeIndex < FChanges.Count) and
    271270     (TChange(FChanges[ChangeIndex]).Index <= EndIndex) do begin
    272       if (Result = bsNone) and (TChange(FChanges[ChangeIndex]).Value = bsOk) then Result := bsOk
     271      if (Result <> bsDamaged) and (TChange(FChanges[ChangeIndex]).Value = bsRead) then Result := bsRead
     272        else if (Result <> bsDamaged) and (TChange(FChanges[ChangeIndex]).Value = bsWrite) then Result := bsWrite
    273273        else if TChange(FChanges[ChangeIndex]).Value = bsDamaged then Result := bsDamaged;
    274274      Inc(ChangeIndex);
     
    296296        (I div ItemsCount.X) * BlockSize.Y, BlockSize.X - 1, BlockSize.Y - 1);
    297297      BlockState := GetCombinedSectors(I * SectorPerBlock, (I + 1) * SectorPerBlock);
    298       if BlockState = bsOk then Canvas.Brush.Color := clGreen
     298      if BlockState = bsRead then Canvas.Brush.Color := clGreen
    299299        else if BlockState = bsDamaged then Canvas.Brush.Color := clRed
     300        else if BlockState = bsWrite then Canvas.Brush.Color := clBlue
    300301        else Canvas.Brush.Color := clSilver;
    301302      Canvas.FillRect(Rect);
Note: See TracChangeset for help on using the changeset viewer.