LibreOffice Module sc (master) 1
|
Stores information about all sheets in a spreadsheet document. More...
#include <worksheetbuffer.hxx>
Classes | |
struct | SheetInfo |
Public Member Functions | |
WorksheetBuffer (const WorkbookHelper &rHelper) | |
void | importSheet (const AttributeList &rAttribs) |
Imports the attributes of a sheet element. More... | |
void | importSheet (SequenceInputStream &rStrm) |
Imports the SHEET record from the passed BIFF12 stream. More... | |
sal_Int16 | insertEmptySheet (const OUString &rPreferredName) |
Inserts a new empty sheet into the document. More... | |
sal_Int32 | getWorksheetCount () const |
Returns the number of original sheets contained in the workbook. More... | |
sal_Int32 | getAllSheetCount () const |
Returns the number of all sheets, workbook + dummy ones (pivot table cache records ) More... | |
OUString | getWorksheetRelId (sal_Int32 nWorksheet) const |
Returns the OOXML relation identifier of the specified worksheet. More... | |
sal_Int16 | getCalcSheetIndex (sal_Int32 nWorksheet) const |
Returns the Calc index of the specified worksheet. More... | |
OUString | getCalcSheetName (sal_Int32 nWorksheet) const |
Returns the finalized name of the specified worksheet. More... | |
sal_Int16 | getCalcSheetIndex (const OUString &rWorksheetName) const |
Returns the Calc index of the sheet with the passed original worksheet name. More... | |
OUString | getCalcSheetName (const OUString &rWorksheetName) const |
Returns the finalized name of the sheet with the passed worksheet name. More... | |
void | convertSheetNameRef (OUString &sSheetNameRef) const |
Converts sSheetNameRef (e.g. More... | |
void | finalizeImport (sal_Int16 nActiveSheet) |
Public Member Functions inherited from oox::xls::WorkbookHelper | |
WorkbookHelper (WorkbookGlobals &rBookGlob) | |
virtual | ~WorkbookHelper () |
WorkbookHelper (WorkbookHelper const &)=default | |
WorkbookHelper (WorkbookHelper &&)=default | |
WorkbookHelper & | operator= (WorkbookHelper const &)=delete |
WorkbookHelper & | operator= (WorkbookHelper &&)=delete |
::oox::core::FilterBase & | getBaseFilter () const |
Returns the base filter object (base class of all filters). More... | |
SegmentProgressBar & | getProgressBar () const |
Returns the filter progress bar. More... | |
sal_Int16 | getCurrentSheetIndex () const |
Returns the index of the current Calc sheet, if filter currently processes a sheet. More... | |
bool | isGeneratorKnownGood () const |
Returns true when reading a file generated by a known good generator. More... | |
bool | hasCalculatedFormulaCells () const |
Returns true if any formula cell is calculated. More... | |
void | setCalculatedFormulaCells () |
Set if any formula cell is calculated. More... | |
void | setVbaProjectStorage (const StorageRef &rxVbaPrjStrg) |
Sets the VBA project storage used to import VBA source code and forms. More... | |
void | setCurrentSheetIndex (SCTAB nSheet) |
Sets the index of the current Calc sheet, if filter currently processes a sheet. More... | |
void | finalizeWorkbookImport () |
Final conversion after importing the workbook. More... | |
void | useInternalChartDataTable (bool bInternal) |
ScDocument & | getScDocument () |
const ScDocument & | getScDocument () const |
ScDocumentImport & | getDocImport () |
const ScDocumentImport & | getDocImport () const |
ScEditEngineDefaulter & | getEditEngine () const |
const css::uno::Reference< css::sheet::XSpreadsheetDocument > & | getDocument () const |
Returns a reference to the source/target spreadsheet document model. More... | |
css::uno::Reference< css::sheet::XSpreadsheet > | getSheetFromDoc (sal_Int32 nSheet) const |
Returns a reference to the specified spreadsheet in the document model. More... | |
css::uno::Reference< css::sheet::XSpreadsheet > | getSheetFromDoc (const OUString &rSheet) const |
Returns a reference to the specified spreadsheet in the document model. More... | |
css::uno::Reference< css::table::XCellRange > | getCellRangeFromDoc (const ScRange &rRange) const |
Returns the XCellRange interface for the passed cell range address. More... | |
css::uno::Reference< css::container::XNameContainer > | getCellStyleFamily () const |
Returns the cell styles container from the Calc document. More... | |
css::uno::Reference< css::style::XStyle > | getStyleObject (const OUString &rStyleName, bool bPageStyle) const |
Returns the specified cell or page style from the Calc document. More... | |
RangeDataRet | createNamedRangeObject (OUString &orName, sal_Int32 nIndex, sal_Int32 nNameFlags, bool bHidden) const |
Creates and returns a defined name on-the-fly in the Calc document. More... | |
RangeDataRet | createLocalNamedRangeObject (OUString &orName, sal_Int32 nIndex, sal_Int32 nNameFlags, sal_Int32 nTab, bool bHidden) const |
Creates and returns a defined name on-the-fly in the sheet. More... | |
css::uno::Reference< css::sheet::XDatabaseRange > | createDatabaseRangeObject (OUString &orName, const ScRange &rRangeAddr) const |
Creates and returns a database range on-the-fly in the Calc document. More... | |
css::uno::Reference< css::sheet::XDatabaseRange > | createUnnamedDatabaseRangeObject (const ScRange &rRangeAddr) const |
Creates and returns an unnamed database range on-the-fly in the Calc document. More... | |
ScDBData * | findDatabaseRangeByIndex (sal_uInt16 nIndex) const |
Finds the (already existing) database range of the given formula token index. More... | |
css::uno::Reference< css::style::XStyle > | createStyleObject (OUString &orStyleName, bool bPageStyle) const |
Creates and returns a com.sun.star.style.Style object for cells or pages. More... | |
FormulaBuffer & | getFormulaBuffer () const |
WorkbookSettings & | getWorkbookSettings () const |
Returns the global workbook settings object. More... | |
ViewSettings & | getViewSettings () const |
Returns the workbook and sheet view settings object. More... | |
WorksheetBuffer & | getWorksheets () const |
Returns the worksheet buffer containing sheet names and properties. More... | |
ThemeBuffer & | getTheme () const |
Returns the office theme object read from the theme substorage. More... | |
StylesBuffer & | getStyles () const |
Returns all cell formatting objects read from the styles substream. More... | |
SharedStringsBuffer & | getSharedStrings () const |
Returns the shared strings read from the shared strings substream. More... | |
ExternalLinkBuffer & | getExternalLinks () const |
Returns the external links read from the external links substream. More... | |
DefinedNamesBuffer & | getDefinedNames () const |
Returns the defined names read from the workbook globals. More... | |
TableBuffer & | getTables () const |
Returns the tables collection (equivalent to Calc's database ranges). More... | |
ScenarioBuffer & | getScenarios () const |
Returns the scenarios collection. More... | |
ConnectionsBuffer & | getConnections () const |
Returns the collection of external data connections. More... | |
PivotCacheBuffer & | getPivotCaches () const |
Returns the collection of pivot caches. More... | |
PivotTableBuffer & | getPivotTables () const |
Returns the collection of pivot tables. More... | |
FormulaParser & | getFormulaParser () const |
Returns a shared import formula parser (import filter only!). More... | |
FormulaParser * | createFormulaParser () const |
Returns an unshared import formula parser (import filter only!). More... | |
UnitConverter & | getUnitConverter () const |
Returns the measurement unit converter. More... | |
AddressConverter & | getAddressConverter () const |
Returns the converter for string to cell address/range conversion. More... | |
oox::drawingml::chart::ChartConverter * | getChartConverter () const |
Returns the chart object converter. More... | |
PageSettingsConverter & | getPageSettingsConverter () const |
Returns the page and print settings converter. More... | |
::oox::core::XmlFilterBase & | getOoxFilter () const |
Returns the base OOXML/BIFF12 filter object. More... | |
bool | importOoxFragment (const rtl::Reference< oox::core::FragmentHandler > &rxHandler) |
Imports a fragment using the passed fragment handler, which contains the full path to the fragment stream. More... | |
bool | importOoxFragment (const rtl::Reference< oox::core::FragmentHandler > &rxHandler, oox::core::FastParser &rParser) |
rtl_TextEncoding | getTextEncoding () const |
Returns the text encoding used to import/export byte strings. More... | |
Private Types | |
typedef ::std::pair< sal_Int16, OUString > | IndexNamePair |
Private Member Functions | |
IndexNamePair | createSheet (const OUString &rPreferredName, sal_Int32 nSheetPos) |
Creates a new sheet in the Calc document. More... | |
void | insertSheet (const SheetInfoModel &rModel) |
Creates a new sheet in the Calc document and inserts the related SheetInfo. More... | |
Private Attributes | |
RefVector< SheetInfo > | maSheetInfos |
RefMap< OUString, SheetInfo, IgnoreCaseCompare > | maSheetInfosByName |
Additional Inherited Members | |
Public Types inherited from oox::xls::WorkbookHelper | |
typedef std::pair< ScRangeData *, bool > | RangeDataRet |
Static Public Member Functions inherited from oox::xls::WorkbookHelper | |
static WorkbookGlobalsRef | constructGlobals (ExcelFilter &rFilter) |
Stores information about all sheets in a spreadsheet document.
Information about sheets includes the sheet name, the visibility state, and for the OOXML filter, the relation identifier of the sheet used to obtain the related worksheet fragment.
Definition at line 49 of file worksheetbuffer.hxx.
|
private |
Definition at line 94 of file worksheetbuffer.hxx.
|
explicit |
Definition at line 54 of file worksheetbuffer.cxx.
void oox::xls::WorksheetBuffer::convertSheetNameRef | ( | OUString & | sSheetNameRef | ) | const |
Converts sSheetNameRef (e.g.
'#SheetName!A1' to '#SheetName.A1' ) if sSheetNameRef doesn't start with '#' it is ignored and not modified
Definition at line 119 of file worksheetbuffer.cxx.
References formula::FormulaGrammar::CONV_XL_R1C1, getCalcSheetName(), oox::xls::WorkbookHelper::getScDocument(), ScRange::ParseAny(), VALID, and ZERO.
|
private |
Creates a new sheet in the Calc document.
Does not insert anything in the own lists.
Definition at line 187 of file worksheetbuffer.cxx.
References Exception, oox::xls::WorkbookHelper::getDocument(), oox::ContainerHelper::getUnusedName(), and ScResId().
Referenced by insertEmptySheet(), and insertSheet().
void oox::xls::WorksheetBuffer::finalizeImport | ( | sal_Int16 | nActiveSheet | ) |
Definition at line 235 of file worksheetbuffer.cxx.
References oox::xls::WorkbookHelper::getScDocument(), maSheetInfos, and ScDocument::SetVisible().
Referenced by oox::xls::WorkbookFragment::finalizeImport().
sal_Int32 oox::xls::WorksheetBuffer::getAllSheetCount | ( | ) | const |
Returns the number of all sheets, workbook + dummy ones (pivot table cache records )
Definition at line 95 of file worksheetbuffer.cxx.
References oox::xls::WorkbookHelper::getDocImport(), and ScDocumentImport::getSheetCount().
Referenced by oox::xls::PivotCacheRecordsFragment::PivotCacheRecordsFragment().
sal_Int16 oox::xls::WorksheetBuffer::getCalcSheetIndex | ( | const OUString & | rWorksheetName | ) | const |
Returns the Calc index of the sheet with the passed original worksheet name.
Definition at line 146 of file worksheetbuffer.cxx.
References maSheetInfosByName, and oox::xls::WorksheetBuffer::SheetInfo::mnCalcSheet.
sal_Int16 oox::xls::WorksheetBuffer::getCalcSheetIndex | ( | sal_Int32 | nWorksheet | ) | const |
Returns the Calc index of the specified worksheet.
Definition at line 107 of file worksheetbuffer.cxx.
References maSheetInfos, and oox::xls::WorksheetBuffer::SheetInfo::mnCalcSheet.
Referenced by oox::xls::WorkbookFragment::finalizeImport(), oox::xls::PivotCache::finalizeInternalSheetSource(), and oox::xls::DefinedName::importDefinedName().
OUString oox::xls::WorksheetBuffer::getCalcSheetName | ( | const OUString & | rWorksheetName | ) | const |
Returns the finalized name of the sheet with the passed worksheet name.
Definition at line 152 of file worksheetbuffer.cxx.
References maSheetInfosByName.
OUString oox::xls::WorksheetBuffer::getCalcSheetName | ( | sal_Int32 | nWorksheet | ) | const |
Returns the finalized name of the specified worksheet.
Definition at line 113 of file worksheetbuffer.cxx.
References oox::xls::WorksheetBuffer::SheetInfo::maCalcName, and maSheetInfos.
Referenced by convertSheetNameRef(), oox::xls::ViewSettings::finalizeImport(), and oox::xls::WorksheetGlobals::getHyperlinkUrl().
sal_Int32 oox::xls::WorksheetBuffer::getWorksheetCount | ( | ) | const |
Returns the number of original sheets contained in the workbook.
Definition at line 90 of file worksheetbuffer.cxx.
References maSheetInfos.
Referenced by oox::xls::ViewSettings::finalizeImport(), and oox::xls::WorkbookFragment::finalizeImport().
OUString oox::xls::WorksheetBuffer::getWorksheetRelId | ( | sal_Int32 | nWorksheet | ) | const |
Returns the OOXML relation identifier of the specified worksheet.
Definition at line 101 of file worksheetbuffer.cxx.
References oox::xls::SheetInfoModel::maRelId, and maSheetInfos.
Referenced by oox::xls::WorkbookFragment::finalizeImport().
void oox::xls::WorksheetBuffer::importSheet | ( | const AttributeList & | rAttribs | ) |
Imports the attributes of a sheet element.
Definition at line 59 of file worksheetbuffer.cxx.
References oox::AttributeList::getInteger(), oox::AttributeList::getString(), oox::AttributeList::getToken(), oox::AttributeList::getXString(), insertSheet(), oox::xls::SheetInfoModel::maName, oox::xls::SheetInfoModel::maRelId, oox::xls::SheetInfoModel::mnSheetId, and oox::xls::SheetInfoModel::mnState.
Referenced by oox::xls::WorkbookFragment::onCreateContext(), and oox::xls::WorkbookFragment::onCreateRecordContext().
void oox::xls::WorksheetBuffer::importSheet | ( | SequenceInputStream & | rStrm | ) |
Imports the SHEET record from the passed BIFF12 stream.
Definition at line 69 of file worksheetbuffer.cxx.
References insertSheet(), oox::xls::SheetInfoModel::maName, oox::xls::SheetInfoModel::maRelId, oox::xls::SheetInfoModel::mnSheetId, oox::xls::SheetInfoModel::mnState, nState, rStrm, and STATIC_ARRAY_SELECT.
sal_Int16 oox::xls::WorksheetBuffer::insertEmptySheet | ( | const OUString & | rPreferredName | ) |
Inserts a new empty sheet into the document.
Looks for an unused name.
Definition at line 81 of file worksheetbuffer.cxx.
References createSheet(), oox::xls::WorkbookHelper::getScDocument(), SAL_MAX_INT32, and ScDocument::SetVisible().
|
private |
Creates a new sheet in the Calc document and inserts the related SheetInfo.
Definition at line 225 of file worksheetbuffer.cxx.
References createSheet(), oox::xls::SheetInfoModel::maName, maSheetInfos, and maSheetInfosByName.
Referenced by importSheet().
Definition at line 102 of file worksheetbuffer.hxx.
Referenced by finalizeImport(), getCalcSheetIndex(), getCalcSheetName(), getWorksheetCount(), getWorksheetRelId(), and insertSheet().
|
private |
Definition at line 103 of file worksheetbuffer.hxx.
Referenced by getCalcSheetIndex(), getCalcSheetName(), and insertSheet().