* changed tbookmark to tbytes, bookmarkstr to ansistring. Delphi 2009+ compat.

git-svn-id: trunk@21037 -
This commit is contained in:
marco 2012-04-25 16:51:05 +00:00
parent 5f93d9992a
commit 8f39076a69
3 changed files with 18 additions and 8 deletions

View File

@ -2713,13 +2713,13 @@ end;
function TCustomBufDataset.BookmarkValid(ABookmark: TBookmark): Boolean; function TCustomBufDataset.BookmarkValid(ABookmark: TBookmark): Boolean;
begin begin
Result:=assigned(FCurrentIndex) and FCurrentIndex.BookmarkValid(ABookmark); Result:=assigned(FCurrentIndex) and FCurrentIndex.BookmarkValid(pointer(ABookmark));
end; end;
function TCustomBufDataset.CompareBookmarks(Bookmark1, Bookmark2: TBookmark function TCustomBufDataset.CompareBookmarks(Bookmark1, Bookmark2: TBookmark
): Longint; ): Longint;
begin begin
if Assigned(FCurrentIndex) and FCurrentIndex.CompareBookmarks(Bookmark1,Bookmark2) then if Assigned(FCurrentIndex) and FCurrentIndex.CompareBookmarks(pointer(Bookmark1),pointer(Bookmark2)) then
Result := 0 Result := 0
else else
Result := -1; Result := -1;

View File

@ -1790,7 +1790,9 @@ Procedure TDataset.FreeBookmark(ABookmark: TBookmark);
begin begin
{$ifdef noautomatedbookmark}
FreeMem(ABookMark,FBookMarkSize); FreeMem(ABookMark,FBookMarkSize);
{$endif}
end; end;
Function TDataset.GetBookmark: TBookmark; Function TDataset.GetBookmark: TBookmark;
@ -1799,8 +1801,12 @@ Function TDataset.GetBookmark: TBookmark;
begin begin
if BookmarkAvailable then if BookmarkAvailable then
begin begin
{$ifdef noautomatedbookmark}
GetMem (Result,FBookMarkSize); GetMem (Result,FBookMarkSize);
GetBookMarkdata(ActiveBuffer,Result); {$else}
setlength(Result,FBookMarkSize);
{$endif}
GetBookMarkdata(ActiveBuffer,pointer(Result));
end end
else else
Result:=Nil; Result:=Nil;
@ -1859,7 +1865,7 @@ begin
begin begin
CheckBrowseMode; CheckBrowseMode;
DoBeforeScroll; DoBeforeScroll;
InternalGotoBookMark(ABookMark); InternalGotoBookMark(pointer(ABookMark));
Resync([rmExact,rmCenter]); Resync([rmExact,rmCenter]);
DoAfterScroll; DoAfterScroll;
end; end;

View File

@ -1244,8 +1244,12 @@ type
{ TDataSet } { TDataSet }
{$ifdef noautomatedbookmark}
TBookmark = Pointer; TBookmark = Pointer;
TBookmarkStr = string; {$else}
TBookMark = TBytes;
{$endif}
TBookmarkStr = ansistring;
PBookmarkFlag = ^TBookmarkFlag; PBookmarkFlag = ^TBookmarkFlag;
TBookmarkFlag = (bfCurrent, bfBOF, bfEOF, bfInserted); TBookmarkFlag = (bfCurrent, bfBOF, bfEOF, bfInserted);