| /************************************************************** |
| * |
| * Licensed to the Apache Software Foundation (ASF) under one |
| * or more contributor license agreements. See the NOTICE file |
| * distributed with this work for additional information |
| * regarding copyright ownership. The ASF licenses this file |
| * to you under the Apache License, Version 2.0 (the |
| * "License"); you may not use this file except in compliance |
| * with the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, |
| * software distributed under the License is distributed on an |
| * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| * KIND, either express or implied. See the License for the |
| * specific language governing permissions and limitations |
| * under the License. |
| * |
| *************************************************************/ |
| |
| |
| |
| #ifndef SC_XMLIMPRT_HXX |
| #define SC_XMLIMPRT_HXX |
| |
| #include <rsc/rscsfx.hxx> |
| #include <xmloff/xmlictxt.hxx> |
| #include <xmloff/xmlimp.hxx> |
| #include <xmloff/xmltkmap.hxx> |
| #include <xmloff/xmlaustp.hxx> |
| #include <xmloff/xmlstyle.hxx> |
| #include <com/sun/star/frame/XModel.hpp> |
| #include <tools/time.hxx> |
| #include <com/sun/star/util/DateTime.hpp> |
| #include "xmlsubti.hxx" |
| #include "global.hxx" |
| #include "formula/grammar.hxx" |
| |
| #include "xmlstyle.hxx" |
| #include "XMLDetectiveContext.hxx" |
| #include <com/sun/star/sheet/ValidationAlertStyle.hpp> |
| #include <com/sun/star/sheet/ValidationType.hpp> |
| #include <com/sun/star/sheet/ConditionOperator.hpp> |
| #include <com/sun/star/table/CellAddress.hpp> |
| #include <com/sun/star/beans/XPropertySet.hpp> |
| #include <com/sun/star/util/XNumberFormatTypes.hpp> |
| #include <com/sun/star/sheet/XSheetCellRangeContainer.hpp> |
| |
| #include <vector> |
| #include <hash_map> |
| |
| class ScRangeList; |
| class ScMyStyleNumberFormats; |
| class XMLNumberFormatAttributesExportHelper; |
| |
| enum ScXMLDocTokens |
| { |
| XML_TOK_DOC_FONTDECLS, |
| XML_TOK_DOC_STYLES, |
| XML_TOK_DOC_AUTOSTYLES, |
| XML_TOK_DOC_MASTERSTYLES, |
| XML_TOK_DOC_META, |
| XML_TOK_DOC_SCRIPTS, |
| XML_TOK_DOC_BODY, |
| XML_TOK_DOC_SETTINGS, |
| XML_TOK_OFFICE_END=XML_TOK_UNKNOWN |
| }; |
| |
| enum ScXMLStylesTokens |
| { |
| XML_TOK_STYLES_STYLE |
| }; |
| |
| enum ScXMLStylesAttrTokens |
| { |
| XML_TOK_STYLES_STYLE_NAME, |
| XML_TOK_STYLES_STYLE_FAMILY, |
| XML_TOK_STYLES_STYLE_PARENT_STYLE_NAME |
| }; |
| |
| enum ScXMLStyleTokens |
| { |
| XML_TOK_STYLE_PROPERTIES |
| }; |
| |
| enum ScXMLBodyTokens |
| { |
| XML_TOK_BODY_TRACKED_CHANGES, |
| XML_TOK_BODY_CALCULATION_SETTINGS, |
| XML_TOK_BODY_CONTENT_VALIDATIONS, |
| XML_TOK_BODY_LABEL_RANGES, |
| XML_TOK_BODY_TABLE, |
| XML_TOK_BODY_NAMED_EXPRESSIONS, |
| XML_TOK_BODY_DATABASE_RANGES, |
| XML_TOK_BODY_DATABASE_RANGE, |
| XML_TOK_BODY_DATA_PILOT_TABLES, |
| XML_TOK_BODY_CONSOLIDATION, |
| XML_TOK_BODY_DDE_LINKS |
| }; |
| |
| enum ScXMLContentValidationsElemTokens |
| { |
| XML_TOK_CONTENT_VALIDATION |
| }; |
| |
| enum ScXMLContentValidationElemTokens |
| { |
| XML_TOK_CONTENT_VALIDATION_ELEM_HELP_MESSAGE, |
| XML_TOK_CONTENT_VALIDATION_ELEM_ERROR_MESSAGE, |
| XML_TOK_CONTENT_VALIDATION_ELEM_ERROR_MACRO, |
| XML_TOK_CONTENT_VALIDATION_ELEM_EVENT_LISTENERS |
| }; |
| |
| enum ScXMLContentValidationAttrTokens |
| { |
| XML_TOK_CONTENT_VALIDATION_NAME, |
| XML_TOK_CONTENT_VALIDATION_CONDITION, |
| XML_TOK_CONTENT_VALIDATION_BASE_CELL_ADDRESS, |
| XML_TOK_CONTENT_VALIDATION_ALLOW_EMPTY_CELL, |
| XML_TOK_CONTENT_VALIDATION_DISPLAY_LIST |
| }; |
| |
| enum ScXMLContentValidationMessageElemTokens |
| { |
| XML_TOK_P |
| }; |
| |
| enum ScXMLContentValidationHelpMessageAttrTokens |
| { |
| XML_TOK_HELP_MESSAGE_ATTR_TITLE, |
| XML_TOK_HELP_MESSAGE_ATTR_DISPLAY |
| }; |
| |
| enum ScXMLContentValidationErrorMessageAttrTokens |
| { |
| XML_TOK_ERROR_MESSAGE_ATTR_TITLE, |
| XML_TOK_ERROR_MESSAGE_ATTR_DISPLAY, |
| XML_TOK_ERROR_MESSAGE_ATTR_MESSAGE_TYPE |
| }; |
| |
| enum ScXMLContentValidationErrorMacroAttrTokens |
| { |
| XML_TOK_ERROR_MACRO_ATTR_NAME, |
| XML_TOK_ERROR_MACRO_ATTR_EXECUTE |
| }; |
| |
| enum ScXMLLabelRangesElemTokens |
| { |
| XML_TOK_LABEL_RANGE_ELEM |
| }; |
| |
| enum ScXMLLabelRangeAttrTokens |
| { |
| XML_TOK_LABEL_RANGE_ATTR_LABEL_RANGE, |
| XML_TOK_LABEL_RANGE_ATTR_DATA_RANGE, |
| XML_TOK_LABEL_RANGE_ATTR_ORIENTATION |
| }; |
| |
| enum ScXMLTableTokens |
| { |
| XML_TOK_TABLE_COL_GROUP, |
| XML_TOK_TABLE_HEADER_COLS, |
| XML_TOK_TABLE_COLS, |
| XML_TOK_TABLE_COL, |
| XML_TOK_TABLE_ROW_GROUP, |
| XML_TOK_TABLE_HEADER_ROWS, |
| XML_TOK_TABLE_ROWS, |
| XML_TOK_TABLE_ROW, |
| XML_TOK_TABLE_SOURCE, |
| XML_TOK_TABLE_SCENARIO, |
| XML_TOK_TABLE_SHAPES, |
| XML_TOK_TABLE_FORMS, |
| XML_TOK_TABLE_NAMED_EXPRESSIONS, |
| XML_TOK_TABLE_EVENT_LISTENERS, |
| XML_TOK_TABLE_EVENT_LISTENERS_EXT |
| }; |
| |
| enum ScXMLTableRowsTokens |
| { |
| XML_TOK_TABLE_ROWS_ROW_GROUP, |
| XML_TOK_TABLE_ROWS_HEADER_ROWS, |
| XML_TOK_TABLE_ROWS_ROWS, |
| XML_TOK_TABLE_ROWS_ROW |
| }; |
| |
| enum ScXMLTableColsTokens |
| { |
| XML_TOK_TABLE_COLS_COL_GROUP, |
| XML_TOK_TABLE_COLS_HEADER_COLS, |
| XML_TOK_TABLE_COLS_COLS, |
| XML_TOK_TABLE_COLS_COL |
| }; |
| |
| enum ScXMLTableAttrTokens |
| { |
| XML_TOK_TABLE_NAME, |
| XML_TOK_TABLE_STYLE_NAME, |
| XML_TOK_TABLE_PROTECTION, |
| XML_TOK_TABLE_PRINT_RANGES, |
| XML_TOK_TABLE_PASSWORD, |
| XML_TOK_TABLE_PRINT |
| }; |
| |
| enum ScXMLTableScenarioAttrTokens |
| { |
| XML_TOK_TABLE_SCENARIO_ATTR_DISPLAY_BORDER, |
| XML_TOK_TABLE_SCENARIO_ATTR_BORDER_COLOR, |
| XML_TOK_TABLE_SCENARIO_ATTR_COPY_BACK, |
| XML_TOK_TABLE_SCENARIO_ATTR_COPY_STYLES, |
| XML_TOK_TABLE_SCENARIO_ATTR_COPY_FORMULAS, |
| XML_TOK_TABLE_SCENARIO_ATTR_IS_ACTIVE, |
| XML_TOK_TABLE_SCENARIO_ATTR_SCENARIO_RANGES, |
| XML_TOK_TABLE_SCENARIO_ATTR_COMMENT, |
| XML_TOK_TABLE_SCENARIO_ATTR_PROTECTED |
| }; |
| |
| enum ScXMLTableColAttrTokens |
| { |
| XML_TOK_TABLE_COL_ATTR_STYLE_NAME, |
| XML_TOK_TABLE_COL_ATTR_REPEATED, |
| XML_TOK_TABLE_COL_ATTR_VISIBILITY, |
| XML_TOK_TABLE_COL_ATTR_DEFAULT_CELL_STYLE_NAME |
| }; |
| |
| enum ScXMLTableRowTokens |
| { |
| XML_TOK_TABLE_ROW_CELL, |
| XML_TOK_TABLE_ROW_COVERED_CELL |
| }; |
| |
| enum ScXMLTableRowAttrTokens |
| { |
| XML_TOK_TABLE_ROW_ATTR_STYLE_NAME, |
| XML_TOK_TABLE_ROW_ATTR_VISIBILITY, |
| XML_TOK_TABLE_ROW_ATTR_REPEATED, |
| XML_TOK_TABLE_ROW_ATTR_DEFAULT_CELL_STYLE_NAME |
| // XML_TOK_TABLE_ROW_ATTR_USE_OPTIMAL_HEIGHT |
| }; |
| |
| enum ScXMLTableRowCellTokens |
| { |
| XML_TOK_TABLE_ROW_CELL_P, |
| XML_TOK_TABLE_ROW_CELL_TABLE, |
| XML_TOK_TABLE_ROW_CELL_ANNOTATION, |
| XML_TOK_TABLE_ROW_CELL_DETECTIVE, |
| XML_TOK_TABLE_ROW_CELL_CELL_RANGE_SOURCE |
| }; |
| |
| enum ScXMLTableRowCellAttrTokens |
| { |
| XML_TOK_TABLE_ROW_CELL_ATTR_STYLE_NAME, |
| XML_TOK_TABLE_ROW_CELL_ATTR_CONTENT_VALIDATION_NAME, |
| XML_TOK_TABLE_ROW_CELL_ATTR_SPANNED_ROWS, |
| XML_TOK_TABLE_ROW_CELL_ATTR_SPANNED_COLS, |
| XML_TOK_TABLE_ROW_CELL_ATTR_SPANNED_MATRIX_COLS, |
| XML_TOK_TABLE_ROW_CELL_ATTR_SPANNED_MATRIX_ROWS, |
| XML_TOK_TABLE_ROW_CELL_ATTR_REPEATED, |
| XML_TOK_TABLE_ROW_CELL_ATTR_VALUE_TYPE, |
| XML_TOK_TABLE_ROW_CELL_ATTR_VALUE, |
| XML_TOK_TABLE_ROW_CELL_ATTR_DATE_VALUE, |
| XML_TOK_TABLE_ROW_CELL_ATTR_TIME_VALUE, |
| XML_TOK_TABLE_ROW_CELL_ATTR_STRING_VALUE, |
| XML_TOK_TABLE_ROW_CELL_ATTR_BOOLEAN_VALUE, |
| XML_TOK_TABLE_ROW_CELL_ATTR_FORMULA, |
| XML_TOK_TABLE_ROW_CELL_ATTR_CURRENCY |
| }; |
| |
| enum ScXMLAnnotationAttrTokens |
| { |
| XML_TOK_TABLE_ANNOTATION_ATTR_AUTHOR, |
| XML_TOK_TABLE_ANNOTATION_ATTR_CREATE_DATE, |
| XML_TOK_TABLE_ANNOTATION_ATTR_CREATE_DATE_STRING, |
| XML_TOK_TABLE_ANNOTATION_ATTR_DISPLAY, |
| XML_TOK_TABLE_ANNOTATION_ATTR_X, |
| XML_TOK_TABLE_ANNOTATION_ATTR_Y |
| }; |
| |
| enum ScXMLDetectiveElemTokens |
| { |
| XML_TOK_DETECTIVE_ELEM_HIGHLIGHTED, |
| XML_TOK_DETECTIVE_ELEM_OPERATION |
| }; |
| |
| enum ScXMLDetectiveHighlightedAttrTokens |
| { |
| XML_TOK_DETECTIVE_HIGHLIGHTED_ATTR_CELL_RANGE, |
| XML_TOK_DETECTIVE_HIGHLIGHTED_ATTR_DIRECTION, |
| XML_TOK_DETECTIVE_HIGHLIGHTED_ATTR_CONTAINS_ERROR, |
| XML_TOK_DETECTIVE_HIGHLIGHTED_ATTR_MARKED_INVALID |
| }; |
| |
| enum ScXMLDetectiveOperationAttrTokens |
| { |
| XML_TOK_DETECTIVE_OPERATION_ATTR_NAME, |
| XML_TOK_DETECTIVE_OPERATION_ATTR_INDEX |
| }; |
| |
| enum ScXMLCellRangeSourceAttrTokens |
| { |
| XML_TOK_TABLE_CELL_RANGE_SOURCE_ATTR_NAME, |
| XML_TOK_TABLE_CELL_RANGE_SOURCE_ATTR_HREF, |
| XML_TOK_TABLE_CELL_RANGE_SOURCE_ATTR_FILTER_NAME, |
| XML_TOK_TABLE_CELL_RANGE_SOURCE_ATTR_FILTER_OPTIONS, |
| XML_TOK_TABLE_CELL_RANGE_SOURCE_ATTR_LAST_COLUMN, |
| XML_TOK_TABLE_CELL_RANGE_SOURCE_ATTR_LAST_ROW, |
| XML_TOK_TABLE_CELL_RANGE_SOURCE_ATTR_REFRESH_DELAY |
| }; |
| |
| enum ScXMLNamedExpressionsTokens |
| { |
| XML_TOK_NAMED_EXPRESSIONS_NAMED_RANGE, |
| XML_TOK_NAMED_EXPRESSIONS_NAMED_EXPRESSION |
| }; |
| |
| enum ScXMLNamedRangeAttrTokens |
| { |
| XML_TOK_NAMED_RANGE_ATTR_NAME, |
| XML_TOK_NAMED_RANGE_ATTR_CELL_RANGE_ADDRESS, |
| XML_TOK_NAMED_RANGE_ATTR_BASE_CELL_ADDRESS, |
| XML_TOK_NAMED_RANGE_ATTR_RANGE_USABLE_AS |
| }; |
| |
| enum ScXMLNamedExpressionAttrTokens |
| { |
| XML_TOK_NAMED_EXPRESSION_ATTR_NAME, |
| XML_TOK_NAMED_EXPRESSION_ATTR_BASE_CELL_ADDRESS, |
| XML_TOK_NAMED_EXPRESSION_ATTR_EXPRESSION |
| }; |
| |
| enum ScXMLDatabaseRangesTokens |
| { |
| XML_TOK_DATABASE_RANGE |
| }; |
| |
| enum ScXMLDatabaseRangeTokens |
| { |
| XML_TOK_DATABASE_RANGE_SOURCE_SQL, |
| XML_TOK_DATABASE_RANGE_SOURCE_TABLE, |
| XML_TOK_DATABASE_RANGE_SOURCE_QUERY, |
| XML_TOK_FILTER, |
| XML_TOK_SORT, |
| XML_TOK_DATABASE_RANGE_SUBTOTAL_RULES |
| }; |
| |
| enum ScXMLDatabaseRangeAttrTokens |
| { |
| XML_TOK_DATABASE_RANGE_ATTR_NAME, |
| XML_TOK_DATABASE_RANGE_ATTR_IS_SELECTION, |
| XML_TOK_DATABASE_RANGE_ATTR_ON_UPDATE_KEEP_STYLES, |
| XML_TOK_DATABASE_RANGE_ATTR_ON_UPDATE_KEEP_SIZE, |
| XML_TOK_DATABASE_RANGE_ATTR_HAS_PERSISTENT_DATA, |
| XML_TOK_DATABASE_RANGE_ATTR_ORIENTATION, |
| XML_TOK_DATABASE_RANGE_ATTR_CONTAINS_HEADER, |
| XML_TOK_DATABASE_RANGE_ATTR_DISPLAY_FILTER_BUTTONS, |
| XML_TOK_DATABASE_RANGE_ATTR_TARGET_RANGE_ADDRESS, |
| XML_TOK_DATABASE_RANGE_ATTR_REFRESH_DELAY |
| }; |
| |
| enum ScXMLDatabaseRangeSourceSQLAttrTokens |
| { |
| XML_TOK_SOURCE_SQL_ATTR_DATABASE_NAME, |
| XML_TOK_SOURCE_SQL_ATTR_HREF, |
| XML_TOK_SOURCE_SQL_ATTR_CONNECTION_RESSOURCE, |
| XML_TOK_SOURCE_SQL_ATTR_SQL_STATEMENT, |
| XML_TOK_SOURCE_SQL_ATTR_PARSE_SQL_STATEMENT |
| }; |
| |
| enum ScXMLDatabaseRangeSourceTableAttrTokens |
| { |
| XML_TOK_SOURCE_TABLE_ATTR_DATABASE_NAME, |
| XML_TOK_SOURCE_TABLE_ATTR_HREF, |
| XML_TOK_SOURCE_TABLE_ATTR_CONNECTION_RESSOURCE, |
| XML_TOK_SOURCE_TABLE_ATTR_TABLE_NAME |
| }; |
| |
| enum ScXMLDatabaseRangeSourceQueryAttrTokens |
| { |
| XML_TOK_SOURCE_QUERY_ATTR_DATABASE_NAME, |
| XML_TOK_SOURCE_QUERY_ATTR_HREF, |
| XML_TOK_SOURCE_QUERY_ATTR_CONNECTION_RESSOURCE, |
| XML_TOK_SOURCE_QUERY_ATTR_QUERY_NAME |
| }; |
| |
| enum ScXMLFilterTokens |
| { |
| XML_TOK_FILTER_AND, |
| XML_TOK_FILTER_OR, |
| XML_TOK_FILTER_CONDITION |
| }; |
| |
| enum ScXMLFilterAttrTokens |
| { |
| XML_TOK_FILTER_ATTR_TARGET_RANGE_ADDRESS, |
| XML_TOK_FILTER_ATTR_CONDITION_SOURCE_RANGE_ADDRESS, |
| XML_TOK_FILTER_ATTR_CONDITION_SOURCE, |
| XML_TOK_FILTER_ATTR_DISPLAY_DUPLICATES |
| }; |
| |
| enum ScXMLFilterConditionAttrTokens |
| { |
| XML_TOK_CONDITION_ATTR_FIELD_NUMBER, |
| XML_TOK_CONDITION_ATTR_CASE_SENSITIVE, |
| XML_TOK_CONDITION_ATTR_DATA_TYPE, |
| XML_TOK_CONDITION_ATTR_VALUE, |
| XML_TOK_CONDITION_ATTR_OPERATOR |
| }; |
| |
| enum ScXMLSortTokens |
| { |
| XML_TOK_SORT_SORT_BY |
| }; |
| |
| enum ScXMLSortAttrTokens |
| { |
| XML_TOK_SORT_ATTR_BIND_STYLES_TO_CONTENT, |
| XML_TOK_SORT_ATTR_TARGET_RANGE_ADDRESS, |
| XML_TOK_SORT_ATTR_CASE_SENSITIVE, |
| XML_TOK_SORT_ATTR_LANGUAGE, |
| XML_TOK_SORT_ATTR_COUNTRY, |
| XML_TOK_SORT_ATTR_ALGORITHM |
| }; |
| |
| enum ScXMLSortSortByAttrTokens |
| { |
| XML_TOK_SORT_BY_ATTR_FIELD_NUMBER, |
| XML_TOK_SORT_BY_ATTR_DATA_TYPE, |
| XML_TOK_SORT_BY_ATTR_ORDER |
| }; |
| |
| enum ScXMLDatabaseRangeSubTotalRulesTokens |
| { |
| XML_TOK_SUBTOTAL_RULES_SORT_GROUPS, |
| XML_TOK_SUBTOTAL_RULES_SUBTOTAL_RULE |
| }; |
| |
| enum ScXMLDatabaseRangeSubTotalRulesAttrTokens |
| { |
| XML_TOK_SUBTOTAL_RULES_ATTR_BIND_STYLES_TO_CONTENT, |
| XML_TOK_SUBTOTAL_RULES_ATTR_CASE_SENSITIVE, |
| XML_TOK_SUBTOTAL_RULES_ATTR_PAGE_BREAKS_ON_GROUP_CHANGE |
| }; |
| |
| enum ScXMLSubTotalRulesSortGroupsAttrTokens |
| { |
| XML_TOK_SORT_GROUPS_ATTR_DATA_TYPE, |
| XML_TOK_SORT_GROUPS_ATTR_ORDER |
| }; |
| |
| enum ScXMLSubTotalRulesSubTotalRuleTokens |
| { |
| XML_TOK_SUBTOTAL_RULE_SUBTOTAL_FIELD |
| }; |
| |
| enum ScXMLSubTotalRulesSubTotalRuleAttrTokens |
| { |
| XML_TOK_SUBTOTAL_RULE_ATTR_GROUP_BY_FIELD_NUMBER |
| }; |
| |
| enum ScXMLSubTotalRuleSubTotalField |
| { |
| XML_TOK_SUBTOTAL_FIELD_ATTR_FIELD_NUMBER, |
| XML_TOK_SUBTOTAL_FIELD_ATTR_FUNCTION |
| }; |
| |
| enum ScXMLDataPilotTablesElemTokens |
| { |
| XML_TOK_DATA_PILOT_TABLE |
| }; |
| |
| enum ScXMLDataPilotTableAttrTokens |
| { |
| XML_TOK_DATA_PILOT_TABLE_ATTR_NAME, |
| XML_TOK_DATA_PILOT_TABLE_ATTR_APPLICATION_DATA, |
| XML_TOK_DATA_PILOT_TABLE_ATTR_GRAND_TOTAL, |
| XML_TOK_DATA_PILOT_TABLE_ATTR_IGNORE_EMPTY_ROWS, |
| XML_TOK_DATA_PILOT_TABLE_ATTR_IDENTIFY_CATEGORIES, |
| XML_TOK_DATA_PILOT_TABLE_ATTR_TARGET_RANGE_ADDRESS, |
| XML_TOK_DATA_PILOT_TABLE_ATTR_BUTTONS, |
| XML_TOK_DATA_PILOT_TABLE_ATTR_SHOW_FILTER_BUTTON, |
| XML_TOK_DATA_PILOT_TABLE_ATTR_DRILL_DOWN |
| }; |
| |
| enum ScXMLDataPilotTableElemTokens |
| { |
| XML_TOK_DATA_PILOT_TABLE_ELEM_SOURCE_SQL, |
| XML_TOK_DATA_PILOT_TABLE_ELEM_SOURCE_TABLE, |
| XML_TOK_DATA_PILOT_TABLE_ELEM_GRAND_TOTAL, |
| XML_TOK_DATA_PILOT_TABLE_ELEM_GRAND_TOTAL_EXT, |
| XML_TOK_DATA_PILOT_TABLE_ELEM_SOURCE_QUERY, |
| XML_TOK_DATA_PILOT_TABLE_ELEM_SOURCE_SERVICE, |
| XML_TOK_DATA_PILOT_TABLE_ELEM_SOURCE_CELL_RANGE, |
| XML_TOK_DATA_PILOT_TABLE_ELEM_DATA_PILOT_FIELD |
| }; |
| |
| enum ScXMLDataPilotTableSourceServiceAttrTokens |
| { |
| XML_TOK_SOURCE_SERVICE_ATTR_NAME, |
| XML_TOK_SOURCE_SERVICE_ATTR_SOURCE_NAME, |
| XML_TOK_SOURCE_SERVICE_ATTR_OBJECT_NAME, |
| XML_TOK_SOURCE_SERVICE_ATTR_USER_NAME, |
| XML_TOK_SOURCE_SERVICE_ATTR_PASSWORD |
| }; |
| |
| enum ScXMLDataPilotGrandTotalAttrTokens |
| { |
| XML_TOK_DATA_PILOT_GRAND_TOTAL_ATTR_DISPLAY, |
| XML_TOK_DATA_PILOT_GRAND_TOTAL_ATTR_ORIENTATION, |
| XML_TOK_DATA_PILOT_GRAND_TOTAL_ATTR_DISPLAY_NAME, |
| XML_TOK_DATA_PILOT_GRAND_TOTAL_ATTR_DISPLAY_NAME_EXT |
| }; |
| |
| enum ScXMLDataPilotTableSourceCellRangeElemTokens |
| { |
| XML_TOK_SOURCE_CELL_RANGE_ELEM_FILTER |
| }; |
| |
| enum ScXMLDataPilotTableSourceCellRangeAttrTokens |
| { |
| XML_TOK_SOURCE_CELL_RANGE_ATTR_CELL_RANGE_ADDRESS |
| }; |
| |
| enum ScXMLDataPilotFieldAttrTokens |
| { |
| XML_TOK_DATA_PILOT_FIELD_ATTR_SOURCE_FIELD_NAME, |
| XML_TOK_DATA_PILOT_FIELD_ATTR_DISPLAY_NAME, |
| XML_TOK_DATA_PILOT_FIELD_ATTR_DISPLAY_NAME_EXT, |
| XML_TOK_DATA_PILOT_FIELD_ATTR_IS_DATA_LAYOUT_FIELD, |
| XML_TOK_DATA_PILOT_FIELD_ATTR_FUNCTION, |
| XML_TOK_DATA_PILOT_FIELD_ATTR_ORIENTATION, |
| XML_TOK_DATA_PILOT_FIELD_ATTR_SELECTED_PAGE, |
| XML_TOK_DATA_PILOT_FIELD_ATTR_USED_HIERARCHY |
| }; |
| |
| enum ScXMLDataPilotFieldElemTokens |
| { |
| XML_TOK_DATA_PILOT_FIELD_ELEM_DATA_PILOT_LEVEL, |
| XML_TOK_DATA_PILOT_FIELD_ELEM_DATA_PILOT_REFERENCE, |
| XML_TOK_DATA_PILOT_FIELD_ELEM_DATA_PILOT_GROUPS |
| }; |
| |
| enum ScXMLDataPilotLevelAttrTokens |
| { |
| XML_TOK_DATA_PILOT_LEVEL_ATTR_SHOW_EMPTY |
| }; |
| |
| enum ScXMLDataPilotLevelElemTokens |
| { |
| XML_TOK_DATA_PILOT_LEVEL_ELEM_DATA_PILOT_SUBTOTALS, |
| XML_TOK_DATA_PILOT_LEVEL_ELEM_DATA_PILOT_MEMBERS, |
| XML_TOK_DATA_PILOT_FIELD_ELEM_DATA_PILOT_DISPLAY_INFO, |
| XML_TOK_DATA_PILOT_FIELD_ELEM_DATA_PILOT_SORT_INFO, |
| XML_TOK_DATA_PILOT_FIELD_ELEM_DATA_PILOT_LAYOUT_INFO |
| }; |
| |
| enum ScXMLDataPilotSubTotalsElemTokens |
| { |
| XML_TOK_DATA_PILOT_SUBTOTALS_ELEM_DATA_PILOT_SUBTOTAL |
| }; |
| |
| enum ScXMLDataPilotSubTotalAttrTokens |
| { |
| XML_TOK_DATA_PILOT_SUBTOTAL_ATTR_FUNCTION, |
| XML_TOK_DATA_PILOT_SUBTOTAL_ATTR_DISPLAY_NAME, |
| XML_TOK_DATA_PILOT_SUBTOTAL_ATTR_DISPLAY_NAME_EXT |
| }; |
| |
| enum ScXMLDataPilotMembersElemTokens |
| { |
| XML_TOK_DATA_PILOT_MEMBERS_ELEM_DATA_PILOT_MEMBER |
| }; |
| |
| enum ScXMLDataPilotMemberAttrTokens |
| { |
| XML_TOK_DATA_PILOT_MEMBER_ATTR_NAME, |
| XML_TOK_DATA_PILOT_MEMBER_ATTR_DISPLAY_NAME, |
| XML_TOK_DATA_PILOT_MEMBER_ATTR_DISPLAY_NAME_EXT, |
| XML_TOK_DATA_PILOT_MEMBER_ATTR_DISPLAY, |
| XML_TOK_DATA_PILOT_MEMBER_ATTR_SHOW_DETAILS |
| }; |
| |
| enum ScXMLConsolidationAttrTokens |
| { |
| XML_TOK_CONSOLIDATION_ATTR_FUNCTION, |
| XML_TOK_CONSOLIDATION_ATTR_SOURCE_RANGES, |
| XML_TOK_CONSOLIDATION_ATTR_TARGET_ADDRESS, |
| XML_TOK_CONSOLIDATION_ATTR_USE_LABEL, |
| XML_TOK_CONSOLIDATION_ATTR_LINK_TO_SOURCE |
| }; |
| |
| |
| class SvI18NMap; |
| class SvXMLTokenMap; |
| //class SvXMLImportItemMapper; |
| class SvXMLStyleContext; |
| class SfxItemSet; |
| class SvXMLNumFmtHelper; |
| class XMLShapeImportHelper; |
| class ScXMLChangeTrackingImportHelper; |
| class ScUnoGuard; |
| |
| struct tScMyCellRange |
| { |
| sal_Int16 Sheet; |
| sal_Int32 StartColumn, EndColumn; |
| sal_Int32 StartRow, EndRow; |
| }; |
| |
| struct ScMyNamedExpression |
| { |
| rtl::OUString sName; |
| rtl::OUString sContent; |
| rtl::OUString sContentNmsp; |
| rtl::OUString sBaseCellAddress; |
| rtl::OUString sRangeType; |
| formula::FormulaGrammar::Grammar eGrammar; |
| sal_Bool bIsExpression; |
| SCTAB nNameScope; |
| }; |
| |
| typedef std::list<const ScMyNamedExpression*> ScMyNamedExpressions; |
| |
| struct ScMyLabelRange |
| { |
| rtl::OUString sLabelRangeStr; |
| rtl::OUString sDataRangeStr; |
| sal_Bool bColumnOrientation; |
| }; |
| |
| typedef std::list<const ScMyLabelRange*> ScMyLabelRanges; |
| |
| struct ScMyImportValidation |
| { |
| rtl::OUString sName; |
| rtl::OUString sImputTitle; |
| rtl::OUString sImputMessage; |
| rtl::OUString sErrorTitle; |
| rtl::OUString sErrorMessage; |
| rtl::OUString sFormula1; |
| rtl::OUString sFormula2; |
| rtl::OUString sFormulaNmsp1; |
| rtl::OUString sFormulaNmsp2; |
| rtl::OUString sBaseCellAddress; // #b4974740# string is used directly |
| com::sun::star::sheet::ValidationAlertStyle aAlertStyle; |
| com::sun::star::sheet::ValidationType aValidationType; |
| com::sun::star::sheet::ConditionOperator aOperator; |
| formula::FormulaGrammar::Grammar eGrammar1; |
| formula::FormulaGrammar::Grammar eGrammar2; |
| sal_Int16 nShowList; |
| sal_Bool bShowErrorMessage; |
| sal_Bool bShowImputMessage; |
| sal_Bool bIgnoreBlanks; |
| }; |
| |
| typedef std::vector<ScMyImportValidation> ScMyImportValidations; |
| typedef std::list<SvXMLImportContext*> ScMyViewContextList; |
| class ScMyStylesImportHelper; |
| |
| class ScXMLImport: public SvXMLImport |
| { |
| typedef ::std::hash_map< ::rtl::OUString, sal_Int16, ::rtl::OUStringHash > CellTypeMap; |
| CellTypeMap aCellTypeMap; |
| |
| ScDocument* pDoc; |
| ScXMLChangeTrackingImportHelper* pChangeTrackingImportHelper; |
| ScMyViewContextList aViewContextList; |
| ScMyStylesImportHelper* pStylesImportHelper; |
| rtl::OUString sNumberFormat; |
| rtl::OUString sLocale; |
| rtl::OUString sCellStyle; |
| rtl::OUString sStandardFormat; |
| rtl::OUString sType; |
| |
| // SvXMLAutoStylePoolP *pScAutoStylePool; |
| UniReference < XMLPropertyHandlerFactory > xScPropHdlFactory; |
| UniReference < XMLPropertySetMapper > xCellStylesPropertySetMapper; |
| UniReference < XMLPropertySetMapper > xColumnStylesPropertySetMapper; |
| UniReference < XMLPropertySetMapper > xRowStylesPropertySetMapper; |
| UniReference < XMLPropertySetMapper > xTableStylesPropertySetMapper; |
| // SvXMLImportContextRef xStyles; |
| // SvXMLImportContextRef xAutoStyles; |
| |
| // SvXMLImportItemMapper *pParaItemMapper;// paragraph item import |
| // SvI18NMap *pI18NMap; // name mapping for I18N |
| SvXMLTokenMap *pDocElemTokenMap; |
| SvXMLTokenMap *pStylesElemTokenMap; |
| SvXMLTokenMap *pStylesAttrTokenMap; |
| SvXMLTokenMap *pStyleElemTokenMap; |
| SvXMLTokenMap *pBodyElemTokenMap; |
| SvXMLTokenMap *pContentValidationsElemTokenMap; |
| SvXMLTokenMap *pContentValidationElemTokenMap; |
| SvXMLTokenMap *pContentValidationAttrTokenMap; |
| SvXMLTokenMap *pContentValidationMessageElemTokenMap; |
| SvXMLTokenMap *pContentValidationHelpMessageAttrTokenMap; |
| SvXMLTokenMap *pContentValidationErrorMessageAttrTokenMap; |
| SvXMLTokenMap *pContentValidationErrorMacroAttrTokenMap; |
| SvXMLTokenMap *pLabelRangesElemTokenMap; |
| SvXMLTokenMap *pLabelRangeAttrTokenMap; |
| SvXMLTokenMap *pTableElemTokenMap; |
| SvXMLTokenMap *pTableRowsElemTokenMap; |
| SvXMLTokenMap *pTableColsElemTokenMap; |
| SvXMLTokenMap *pTableScenarioAttrTokenMap; |
| SvXMLTokenMap *pTableAttrTokenMap; |
| SvXMLTokenMap *pTableColAttrTokenMap; |
| SvXMLTokenMap *pTableRowElemTokenMap; |
| SvXMLTokenMap *pTableRowAttrTokenMap; |
| SvXMLTokenMap *pTableRowCellElemTokenMap; |
| SvXMLTokenMap *pTableRowCellAttrTokenMap; |
| SvXMLTokenMap *pTableAnnotationAttrTokenMap; |
| SvXMLTokenMap *pDetectiveElemTokenMap; |
| SvXMLTokenMap *pDetectiveHighlightedAttrTokenMap; |
| SvXMLTokenMap *pDetectiveOperationAttrTokenMap; |
| SvXMLTokenMap *pTableCellRangeSourceAttrTokenMap; |
| SvXMLTokenMap *pNamedExpressionsElemTokenMap; |
| SvXMLTokenMap *pNamedRangeAttrTokenMap; |
| SvXMLTokenMap *pNamedExpressionAttrTokenMap; |
| SvXMLTokenMap *pDatabaseRangesElemTokenMap; |
| SvXMLTokenMap *pDatabaseRangeElemTokenMap; |
| SvXMLTokenMap *pDatabaseRangeAttrTokenMap; |
| SvXMLTokenMap *pDatabaseRangeSourceSQLAttrTokenMap; |
| SvXMLTokenMap *pDatabaseRangeSourceTableAttrTokenMap; |
| SvXMLTokenMap *pDatabaseRangeSourceQueryAttrTokenMap; |
| SvXMLTokenMap *pFilterElemTokenMap; |
| SvXMLTokenMap *pFilterAttrTokenMap; |
| SvXMLTokenMap *pFilterConditionAttrTokenMap; |
| SvXMLTokenMap *pSortElemTokenMap; |
| SvXMLTokenMap *pSortAttrTokenMap; |
| SvXMLTokenMap *pSortSortByAttrTokenMap; |
| SvXMLTokenMap *pDatabaseRangeSubTotalRulesElemTokenMap; |
| SvXMLTokenMap *pDatabaseRangeSubTotalRulesAttrTokenMap; |
| SvXMLTokenMap *pSubTotalRulesSortGroupsAttrTokenMap; |
| SvXMLTokenMap *pSubTotalRulesSubTotalRuleElemTokenMap; |
| SvXMLTokenMap *pSubTotalRulesSubTotalRuleAttrTokenMap; |
| SvXMLTokenMap *pSubTotalRuleSubTotalFieldAttrTokenMap; |
| SvXMLTokenMap *pDataPilotTablesElemTokenMap; |
| SvXMLTokenMap *pDataPilotTableAttrTokenMap; |
| SvXMLTokenMap *pDataPilotTableElemTokenMap; |
| SvXMLTokenMap *pDataPilotTableSourceServiceAttrTokenMap; |
| SvXMLTokenMap *pDataPilotGrandTotalAttrTokenMap; |
| SvXMLTokenMap *pDataPilotTableSourceCellRangeElemTokenMap; |
| SvXMLTokenMap *pDataPilotTableSourceCellRangeAttrTokenMap; |
| SvXMLTokenMap *pDataPilotFieldAttrTokenMap; |
| SvXMLTokenMap *pDataPilotFieldElemTokenMap; |
| SvXMLTokenMap *pDataPilotLevelAttrTokenMap; |
| SvXMLTokenMap *pDataPilotLevelElemTokenMap; |
| SvXMLTokenMap *pDataPilotSubTotalsElemTokenMap; |
| SvXMLTokenMap *pDataPilotSubTotalAttrTokenMap; |
| SvXMLTokenMap *pDataPilotMembersElemTokenMap; |
| SvXMLTokenMap *pDataPilotMemberAttrTokenMap; |
| SvXMLTokenMap *pConsolidationAttrTokenMap; |
| |
| ScMyTables aTables; |
| |
| ScMyNamedExpressions* pMyNamedExpressions; |
| ScMyLabelRanges* pMyLabelRanges; |
| ScMyImportValidations* pValidations; |
| ScMyImpDetectiveOpArray* pDetectiveOpArray; |
| ScUnoGuard* pScUnoGuard; |
| |
| std::vector<rtl::OUString> aTableStyles; |
| XMLNumberFormatAttributesExportHelper* pNumberFormatAttributesExportHelper; |
| ScMyStyleNumberFormats* pStyleNumberFormats; |
| com::sun::star::uno::Reference <com::sun::star::util::XNumberFormats> xNumberFormats; |
| com::sun::star::uno::Reference <com::sun::star::util::XNumberFormatTypes> xNumberFormatTypes; |
| |
| com::sun::star::uno::Reference <com::sun::star::sheet::XSheetCellRangeContainer> xSheetCellRanges; |
| |
| rtl::OUString sEmpty; |
| rtl::OUString sPrevStyleName; |
| rtl::OUString sPrevCurrency; |
| sal_uInt32 nSolarMutexLocked; |
| sal_Int32 nProgressCount; |
| sal_uInt16 nStyleFamilyMask;// Mask of styles to load |
| sal_Int16 nPrevCellType; |
| sal_Bool bLoadDoc; // Load doc or styles only |
| sal_Bool bRemoveLastChar; |
| sal_Bool bNullDateSetted; |
| sal_Bool bSelfImportingXMLSet; |
| sal_Bool bLatinDefaultStyle; // latin-only number format in default style? |
| sal_Bool bFromWrapper; // called from ScDocShell / ScXMLImportWrapper? |
| |
| |
| protected: |
| |
| // This method is called after the namespace map has been updated, but |
| // before a context for the current element has been pushed. |
| virtual SvXMLImportContext *CreateContext(sal_uInt16 nPrefix, |
| const ::rtl::OUString& rLocalName, |
| const ::com::sun::star::uno::Reference< |
| ::com::sun::star::xml::sax::XAttributeList>& xAttrList ); |
| virtual XMLShapeImportHelper* CreateShapeImport(); |
| |
| public: |
| // #110680# |
| ScXMLImport( |
| const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > xServiceFactory, |
| const sal_uInt16 nImportFlag); |
| |
| ~ScXMLImport() throw(); |
| |
| // namespace office |
| // NB: in contrast to other CreateFooContexts, this particular one handles |
| // the root element (i.e. office:document-meta) |
| SvXMLImportContext *CreateMetaContext( |
| const ::rtl::OUString& rLocalName ); |
| SvXMLImportContext *CreateFontDeclsContext(const sal_uInt16 nPrefix, const ::rtl::OUString& rLocalName, |
| const com::sun::star::uno::Reference<com::sun::star::xml::sax::XAttributeList>& xAttrList); |
| SvXMLImportContext *CreateScriptContext( |
| const ::rtl::OUString& rLocalName ); |
| SvXMLImportContext *CreateStylesContext(const ::rtl::OUString& rLocalName, |
| const com::sun::star::uno::Reference<com::sun::star::xml::sax::XAttributeList>& xAttrList, sal_Bool bAutoStyles ); |
| // SvXMLImportContext *CreateUseStylesContext(const ::rtl::OUString& rLocalName , |
| // const ::com::sun::star::uno::Reference<com::sun::star::xml::sax::XAttributeList>& xAttrList); |
| SvXMLImportContext *CreateBodyContext( |
| const ::rtl::OUString& rLocalName, |
| const ::com::sun::star::uno::Reference<com::sun::star::xml::sax::XAttributeList>& xAttrList ); |
| |
| virtual void SetStatistics( |
| const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::NamedValue> & i_rStats); |
| |
| inline ScDocument* GetDocument() { return pDoc; } |
| inline const ScDocument* GetDocument() const { return pDoc; } |
| |
| ScMyTables& GetTables() { return aTables; } |
| |
| sal_uInt16 GetStyleFamilyMask() const { return nStyleFamilyMask; } |
| sal_Bool IsStylesOnlyMode() const { return !bLoadDoc; } |
| |
| sal_Bool IsLatinDefaultStyle() const { return bLatinDefaultStyle; } |
| |
| sal_Int16 GetCellType(const ::rtl::OUString& rStrValue) const; |
| |
| // SvI18NMap& GetI18NMap() { return *pI18NMap; } |
| |
| // inline const SvXMLImportItemMapper& GetParaItemMapper() const; |
| // SvXMLImportContext *CreateParaItemImportContext( sal_uInt16 nPrefix, |
| // const ::rtl::OUString& rLocalName, |
| // const ::com::sun::star::uno::Reference< |
| // ::com::sun::star::xml::sax::XAttributeList& xAttrList, |
| // SfxItemSet& rItemSet ); |
| |
| UniReference < XMLPropertySetMapper > GetCellStylesPropertySetMapper() const { return xCellStylesPropertySetMapper; } |
| UniReference < XMLPropertySetMapper > GetColumnStylesPropertySetMapper() const { return xColumnStylesPropertySetMapper; } |
| UniReference < XMLPropertySetMapper > GetRowStylesPropertySetMapper() const { return xRowStylesPropertySetMapper; } |
| UniReference < XMLPropertySetMapper > GetTableStylesPropertySetMapper() const { return xTableStylesPropertySetMapper; } |
| // SvXMLImportContextRef GetAutoStyles() const { return xAutoStyles; } |
| // SvXMLImportContextRef GetStyles() const { return xStyles; } |
| |
| const SvXMLTokenMap& GetDocElemTokenMap(); |
| //UNUSED2008-05 const SvXMLTokenMap& GetStylesElemTokenMap(); |
| //UNUSED2008-05 const SvXMLTokenMap& GetStylesAttrTokenMap(); |
| //UNUSED2008-05 const SvXMLTokenMap& GetStyleElemTokenMap(); |
| const SvXMLTokenMap& GetBodyElemTokenMap(); |
| const SvXMLTokenMap& GetContentValidationsElemTokenMap(); |
| const SvXMLTokenMap& GetContentValidationElemTokenMap(); |
| const SvXMLTokenMap& GetContentValidationAttrTokenMap(); |
| const SvXMLTokenMap& GetContentValidationMessageElemTokenMap(); |
| const SvXMLTokenMap& GetContentValidationHelpMessageAttrTokenMap(); |
| const SvXMLTokenMap& GetContentValidationErrorMessageAttrTokenMap(); |
| const SvXMLTokenMap& GetContentValidationErrorMacroAttrTokenMap(); |
| const SvXMLTokenMap& GetLabelRangesElemTokenMap(); |
| const SvXMLTokenMap& GetLabelRangeAttrTokenMap(); |
| const SvXMLTokenMap& GetTableElemTokenMap(); |
| const SvXMLTokenMap& GetTableRowsElemTokenMap(); |
| const SvXMLTokenMap& GetTableColsElemTokenMap(); |
| const SvXMLTokenMap& GetTableAttrTokenMap(); |
| const SvXMLTokenMap& GetTableScenarioAttrTokenMap(); |
| const SvXMLTokenMap& GetTableColAttrTokenMap(); |
| const SvXMLTokenMap& GetTableRowElemTokenMap(); |
| const SvXMLTokenMap& GetTableRowAttrTokenMap(); |
| const SvXMLTokenMap& GetTableRowCellElemTokenMap(); |
| const SvXMLTokenMap& GetTableRowCellAttrTokenMap(); |
| const SvXMLTokenMap& GetTableAnnotationAttrTokenMap(); |
| const SvXMLTokenMap& GetDetectiveElemTokenMap(); |
| const SvXMLTokenMap& GetDetectiveHighlightedAttrTokenMap(); |
| const SvXMLTokenMap& GetDetectiveOperationAttrTokenMap(); |
| const SvXMLTokenMap& GetTableCellRangeSourceAttrTokenMap(); |
| const SvXMLTokenMap& GetNamedExpressionsElemTokenMap(); |
| const SvXMLTokenMap& GetNamedRangeAttrTokenMap(); |
| const SvXMLTokenMap& GetNamedExpressionAttrTokenMap(); |
| const SvXMLTokenMap& GetDatabaseRangesElemTokenMap(); |
| const SvXMLTokenMap& GetDatabaseRangeElemTokenMap(); |
| const SvXMLTokenMap& GetDatabaseRangeAttrTokenMap(); |
| const SvXMLTokenMap& GetDatabaseRangeSourceSQLAttrTokenMap(); |
| const SvXMLTokenMap& GetDatabaseRangeSourceTableAttrTokenMap(); |
| const SvXMLTokenMap& GetDatabaseRangeSourceQueryAttrTokenMap(); |
| const SvXMLTokenMap& GetFilterElemTokenMap(); |
| const SvXMLTokenMap& GetFilterAttrTokenMap(); |
| const SvXMLTokenMap& GetFilterConditionAttrTokenMap(); |
| const SvXMLTokenMap& GetSortElemTokenMap(); |
| const SvXMLTokenMap& GetSortAttrTokenMap(); |
| const SvXMLTokenMap& GetSortSortByAttrTokenMap(); |
| const SvXMLTokenMap& GetDatabaseRangeSubTotalRulesElemTokenMap(); |
| const SvXMLTokenMap& GetDatabaseRangeSubTotalRulesAttrTokenMap(); |
| const SvXMLTokenMap& GetSubTotalRulesSortGroupsAttrTokenMap(); |
| const SvXMLTokenMap& GetSubTotalRulesSubTotalRuleElemTokenMap(); |
| const SvXMLTokenMap& GetSubTotalRulesSubTotalRuleAttrTokenMap(); |
| const SvXMLTokenMap& GetSubTotalRuleSubTotalFieldAttrTokenMap(); |
| const SvXMLTokenMap& GetDataPilotTablesElemTokenMap(); |
| const SvXMLTokenMap& GetDataPilotTableAttrTokenMap(); |
| const SvXMLTokenMap& GetDataPilotTableElemTokenMap(); |
| const SvXMLTokenMap& GetDataPilotTableSourceServiceAttrTokenMap(); |
| const SvXMLTokenMap& GetDataPilotGrandTotalAttrTokenMap(); |
| const SvXMLTokenMap& GetDataPilotTableSourceCellRangeElemTokenMap(); |
| const SvXMLTokenMap& GetDataPilotTableSourceCellRangeAttrTokenMap(); |
| const SvXMLTokenMap& GetDataPilotFieldAttrTokenMap(); |
| const SvXMLTokenMap& GetDataPilotFieldElemTokenMap(); |
| const SvXMLTokenMap& GetDataPilotLevelAttrTokenMap(); |
| const SvXMLTokenMap& GetDataPilotLevelElemTokenMap(); |
| const SvXMLTokenMap& GetDataPilotSubTotalsElemTokenMap(); |
| const SvXMLTokenMap& GetDataPilotSubTotalAttrTokenMap(); |
| const SvXMLTokenMap& GetDataPilotMembersElemTokenMap(); |
| const SvXMLTokenMap& GetDataPilotMemberAttrTokenMap(); |
| const SvXMLTokenMap& GetConsolidationAttrTokenMap(); |
| // const SvXMLTokenMap& GetTextPElemTokenMap(); |
| // const SvXMLTokenMap& GetTextPAttrTokenMap(); |
| // const SvXMLTokenMap& GetStyleStylesElemTokenMap(); |
| // const SvXMLTokenMap& GetTextListBlockAttrTokenMap(); |
| // const SvXMLTokenMap& GetTextListBlockElemTokenMap(); |
| |
| void AddNamedExpression(const ScMyNamedExpression* pMyNamedExpression) { |
| if (!pMyNamedExpressions) |
| pMyNamedExpressions = new ScMyNamedExpressions(); |
| pMyNamedExpressions->push_back(pMyNamedExpression); } |
| ScMyNamedExpressions* GetNamedExpressions() { return pMyNamedExpressions; } |
| |
| void AddLabelRange(const ScMyLabelRange* pMyLabelRange) { |
| if (!pMyLabelRanges) |
| pMyLabelRanges = new ScMyLabelRanges(); |
| pMyLabelRanges->push_back(pMyLabelRange); } |
| ScMyLabelRanges* GetLabelRanges() { return pMyLabelRanges; } |
| |
| void AddValidation(const ScMyImportValidation& rValidation) { |
| if (!pValidations) |
| pValidations = new ScMyImportValidations(); |
| pValidations->push_back(rValidation); } |
| sal_Bool GetValidation(const rtl::OUString& sName, ScMyImportValidation& aValidation); |
| |
| inline ScMyImpDetectiveOpArray* GetDetectiveOpArray() { |
| if (!pDetectiveOpArray) |
| pDetectiveOpArray = new ScMyImpDetectiveOpArray(); |
| return pDetectiveOpArray; } |
| |
| void SetRemoveLastChar(sal_Bool bValue) { bRemoveLastChar = bValue; } |
| sal_Bool GetRemoveLastChar() { return bRemoveLastChar; } |
| |
| ScXMLChangeTrackingImportHelper* GetChangeTrackingImportHelper(); |
| void AddViewContext(SvXMLImportContext* pContext) { aViewContextList.push_back(pContext); } |
| void InsertStyles(); |
| |
| void SetChangeTrackingViewSettings(const com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue>& rChangeProps); |
| virtual void SetViewSettings(const com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue>& aViewProps); |
| virtual void SetConfigurationSettings(const com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue>& aConfigProps); |
| |
| void SetTableStyle(const rtl::OUString& rValue) { aTableStyles.push_back(rValue); } |
| std::vector<rtl::OUString> GetTableStyle() { return aTableStyles; } |
| ScMyStylesImportHelper* GetStylesImportHelper() { return pStylesImportHelper; } |
| sal_Int32 SetCurrencySymbol(const sal_Int32 nKey, const rtl::OUString& rCurrency); |
| sal_Bool IsCurrencySymbol(const sal_Int32 nNumberFormat, const rtl::OUString& sCurrencySymbol, const rtl::OUString& sBankSymbol); |
| void SetType(com::sun::star::uno::Reference <com::sun::star::beans::XPropertySet>& rProperties, |
| sal_Int32& rNumberFormat, |
| const sal_Int16 nCellType, |
| const rtl::OUString& rCurrency); |
| |
| void ProgressBarIncrement(sal_Bool bEditCell, sal_Int32 nInc = 1); |
| |
| private: |
| void AddStyleRange(const com::sun::star::table::CellRangeAddress& rCellRange); |
| void SetStyleToRanges(); |
| |
| void ExamineDefaultStyle(); |
| public: |
| void SetStyleToRange(const ScRange& rRange, const rtl::OUString* pStyleName, |
| const sal_Int16 nCellType, const rtl::OUString* pCurrency); |
| sal_Bool SetNullDateOnUnitConverter(); |
| XMLNumberFormatAttributesExportHelper* GetNumberFormatAttributesExportHelper(); |
| ScMyStyleNumberFormats* GetStyleNumberFormats(); |
| |
| void SetStylesToRangesFinished(); |
| |
| // XImporter |
| virtual void SAL_CALL setTargetDocument( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XComponent >& xDoc ) throw(::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException); |
| |
| // XServiceInfo |
| virtual ::rtl::OUString SAL_CALL getImplementationName( ) throw(::com::sun::star::uno::RuntimeException); |
| |
| // ::com::sun::star::xml::sax::XDocumentHandler |
| virtual void SAL_CALL startDocument(void) |
| throw( ::com::sun::star::xml::sax::SAXException, ::com::sun::star::uno::RuntimeException ); |
| virtual void SAL_CALL endDocument(void) |
| throw( ::com::sun::star::xml::sax::SAXException, ::com::sun::star::uno::RuntimeException ); |
| |
| virtual void DisposingModel(); |
| |
| void LockSolarMutex(); |
| void UnlockSolarMutex(); |
| |
| sal_Int32 GetByteOffset(); |
| |
| void SetRangeOverflowType(sal_uInt32 nType); |
| |
| sal_Int32 GetRangeType(const rtl::OUString sRangeType) const; |
| void SetNamedRanges(); |
| void SetLabelRanges(); |
| void AddDefaultNote( const com::sun::star::table::CellAddress& aCell ); |
| |
| sal_Int32 GetVisibleSheet(); |
| /** Extracts the formula string, the formula grammar namespace URL, and a |
| grammar enum value from the passed formula attribute value. |
| |
| @param rFormula |
| (out-parameter) Returns the plain formula string with the leading |
| equality sign if existing. |
| |
| @param rFormulaNmsp |
| (out-parameter) Returns the URL of the formula grammar namespace if |
| the attribute value contains the prefix of an unknown namespace. |
| |
| @param reGrammar |
| (out-parameter) Returns the exact formula grammar if the formula |
| is in a supported ODF format (e.g. FormulaGrammar::GRAM_PODF for |
| ODF 1.0/1.1 formulas, or FormulaGrammar::GRAM_ODFF for ODF 1.2 |
| formulas a.k.a. OpenFormula). Returns the default storage grammar, |
| if the attribute value does not contain a namespace prefix. Returns |
| the special value FormulaGrammar::GRAM_EXTERNAL, if an unknown |
| namespace could be extracted from the formula which will be |
| contained in the parameter rFormulaNmsp then. |
| |
| @param rAttrValue |
| The value of the processed formula attribute. |
| |
| @param bRestrictToExternalNmsp |
| If set to sal_True, only namespaces of external formula grammars will |
| be recognized. Internal namespace prefixes (e.g. 'oooc:' or 'of:' |
| will be considered to be part of the formula, e.g. an expression |
| with range operator. |
| */ |
| void ExtractFormulaNamespaceGrammar( |
| ::rtl::OUString& rFormula, |
| ::rtl::OUString& rFormulaNmsp, |
| ::formula::FormulaGrammar::Grammar& reGrammar, |
| const ::rtl::OUString& rAttrValue, |
| bool bRestrictToExternalNmsp = false ) const; |
| }; |
| |
| #endif |
| |