if GetItem(i).GetBoolValueEx(rvbpJump, RVStyle))
Code: Select all
procedure TCustomRVFormattedData.GetJumpPointLocation(id: Integer;
var RVData: TCustomRVFormattedData; var ItemNo: Integer);
var i: Integer;
LRVData: TCustomRVData;
RVStyle: TRVStyle;
StoreSub: TRVStoreSubRVData;
item: TCustomRVItemInfo;
begin
RVStyle := GetRVStyle;
RVData := nil;
ItemNo := -1;
for i := 0 to ItemCount-1 do begin
if GetItem(i).GetBoolValueEx(rvbpJump, RVStyle) and
(GetItem(i).JumpID+FirstJumpNo = id) then begin
RVData := Self;
ItemNo := i;
exit;
end;
item := GetItem(i);
LRVData := TCustomRVData(item.GetSubRVData(StoreSub, rvdFirst));
if (LRVData<>nil) then begin
repeat
if LRVData.GetRVData is TCustomRVFormattedData then
TCustomRVFormattedData(LRVData.GetRVData).GetJumpPointLocation(id, RVData, ItemNo);
if RVData<>nil then begin
StoreSub.Free;
exit;
end;
LRVData := TCustomRVData(item.GetSubRVData(StoreSub, rvdNext));
until LRVData=nil;
end;
StoreSub.Free;
end;
end;
Do you have any idea what's going wrong?