You've already forked lazarus-ccr
fpspreadsheet: Add workbook methods to navigate to previous, next and last worksheet.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5543 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
@ -742,6 +742,9 @@ type
|
||||
function CopyWorksheetFrom(AWorksheet: TsWorksheet;
|
||||
ReplaceDuplicateName: Boolean = false): TsWorksheet;
|
||||
function GetFirstWorksheet: TsWorksheet;
|
||||
function GetLastWorksheet: TsWorksheet;
|
||||
function GetNextWorksheet(AWorksheet: TsWorksheet): TsWorksheet;
|
||||
function GetPreviousWorksheet(AWorksheet: TsWorksheet): TsWorksheet;
|
||||
function GetWorksheetByIndex(AIndex: Integer): TsWorksheet;
|
||||
function GetWorksheetByName(AName: String): TsWorksheet;
|
||||
function GetWorksheetCount: Integer;
|
||||
@ -8172,6 +8175,72 @@ begin
|
||||
Result := TsWorksheet(FWorksheets.First);
|
||||
end;
|
||||
|
||||
{@@ ----------------------------------------------------------------------------
|
||||
Quick helper routine which returns the last worksheet
|
||||
|
||||
@return A TsWorksheet instance if at least one is present.
|
||||
nil otherwise.
|
||||
|
||||
@see TsWorkbook.GetWorksheetByIndex
|
||||
@see TsWorkbook.GetWorksheetByName
|
||||
@see TsWorksheet
|
||||
-------------------------------------------------------------------------------}
|
||||
function TsWorkbook.GetLastWorksheet: TsWorksheet;
|
||||
begin
|
||||
Result := TsWorksheet(FWorksheets.Last);
|
||||
end;
|
||||
|
||||
|
||||
{@@ ----------------------------------------------------------------------------
|
||||
Returns the worksheet following the specified one.
|
||||
|
||||
@return A TsWorksheet instance if the specified worksheet is not the last one
|
||||
nil otherwise.
|
||||
|
||||
@see TsWorkbook.GetFirstWorksheet
|
||||
@see TsWorkbook.GetPreviousWorksheet
|
||||
@see TsWorkbook.GetLastWorksheet
|
||||
@see TsWorkbook.GetFirstWorksheet
|
||||
@see TsWorkbook.GetWorksheetByIndex
|
||||
@see TsWorkbook.GetWorksheetByName
|
||||
@see TsWorksheet
|
||||
-------------------------------------------------------------------------------}
|
||||
function TsWorkbook.GetNextWorksheet(AWorksheet: TsWorksheet): TsWorksheet;
|
||||
var
|
||||
idx: Integer;
|
||||
begin
|
||||
idx := FWorksheets.Indexof(AWorksheet);
|
||||
if idx < FWorksheets.Count-1 then
|
||||
Result := TsWorksheet(FWorksheets.Items[idx + 1])
|
||||
else
|
||||
Result := nil;
|
||||
end;
|
||||
|
||||
{@@ ----------------------------------------------------------------------------
|
||||
Returns the worksheet preceding the specified one.
|
||||
|
||||
@return A TsWorksheet instance if the specified worksheet is not
|
||||
the first one, nil otherwise.
|
||||
|
||||
@see TsWorkbook.GetFirstWorksheet
|
||||
@see TsWorkbook.GetNextWorksheet
|
||||
@see TsWorkbook.GetLastWorksheet
|
||||
@see TsWorkbook.GetFirstWorksheet
|
||||
@see TsWorkbook.GetWorksheetByIndex
|
||||
@see TsWorkbook.GetWorksheetByName
|
||||
@see TsWorksheet
|
||||
-------------------------------------------------------------------------------}
|
||||
function TsWorkbook.GetPreviousWorksheet(AWorksheet: TsWorksheet): TsWorksheet;
|
||||
var
|
||||
idx: Integer;
|
||||
begin
|
||||
idx := FWorksheets.IndexOf(AWorksheet);
|
||||
if idx > 0 then
|
||||
Result := TsWorksheet(FWorksheets.Items[idx - 1])
|
||||
else
|
||||
Result := nil;
|
||||
end;
|
||||
|
||||
{@@ ----------------------------------------------------------------------------
|
||||
Gets the worksheet with a given index
|
||||
|
||||
|
Reference in New Issue
Block a user