summaryrefslogtreecommitdiff
path: root/offapi/com/sun/star/sheet
diff options
context:
space:
mode:
Diffstat (limited to 'offapi/com/sun/star/sheet')
-rw-r--r--offapi/com/sun/star/sheet/AccessibleCell.idl135
-rw-r--r--offapi/com/sun/star/sheet/AccessibleCsvCell.idl81
-rw-r--r--offapi/com/sun/star/sheet/AccessibleCsvRuler.idl80
-rw-r--r--offapi/com/sun/star/sheet/AccessibleCsvTable.idl91
-rw-r--r--offapi/com/sun/star/sheet/AccessiblePageHeaderFooterAreasView.idl148
-rw-r--r--offapi/com/sun/star/sheet/AccessibleSpreadsheet.idl157
-rw-r--r--offapi/com/sun/star/sheet/AccessibleSpreadsheetDocumentView.idl166
-rw-r--r--offapi/com/sun/star/sheet/AccessibleSpreadsheetPageView.idl183
-rw-r--r--offapi/com/sun/star/sheet/ActivationEvent.idl64
-rw-r--r--offapi/com/sun/star/sheet/AddIn.idl160
-rw-r--r--offapi/com/sun/star/sheet/AddressConvention.idl70
-rw-r--r--offapi/com/sun/star/sheet/Border.idl72
-rw-r--r--offapi/com/sun/star/sheet/CellAnnotation.idl91
-rw-r--r--offapi/com/sun/star/sheet/CellAnnotationShape.idl57
-rw-r--r--offapi/com/sun/star/sheet/CellAnnotations.idl75
-rw-r--r--offapi/com/sun/star/sheet/CellAnnotationsEnumeration.idl62
-rw-r--r--offapi/com/sun/star/sheet/CellAreaLink.idl121
-rw-r--r--offapi/com/sun/star/sheet/CellAreaLinks.idl83
-rw-r--r--offapi/com/sun/star/sheet/CellAreaLinksEnumeration.idl62
-rw-r--r--offapi/com/sun/star/sheet/CellDeleteMode.idl78
-rw-r--r--offapi/com/sun/star/sheet/CellFlags.idl114
-rw-r--r--offapi/com/sun/star/sheet/CellFormatRanges.idl79
-rw-r--r--offapi/com/sun/star/sheet/CellFormatRangesEnumeration.idl62
-rw-r--r--offapi/com/sun/star/sheet/CellInsertMode.idl78
-rw-r--r--offapi/com/sun/star/sheet/Cells.idl62
-rw-r--r--offapi/com/sun/star/sheet/CellsEnumeration.idl62
-rw-r--r--offapi/com/sun/star/sheet/ComplexReference.idl63
-rw-r--r--offapi/com/sun/star/sheet/ConditionOperator.idl108
-rw-r--r--offapi/com/sun/star/sheet/ConsolidationDescriptor.idl61
-rw-r--r--offapi/com/sun/star/sheet/DDEItemInfo.idl65
-rw-r--r--offapi/com/sun/star/sheet/DDELink.idl94
-rw-r--r--offapi/com/sun/star/sheet/DDELinkInfo.idl80
-rw-r--r--offapi/com/sun/star/sheet/DDELinkMode.idl70
-rw-r--r--offapi/com/sun/star/sheet/DDELinks.idl98
-rw-r--r--offapi/com/sun/star/sheet/DDELinksEnumeration.idl62
-rw-r--r--offapi/com/sun/star/sheet/DataImportMode.idl72
-rw-r--r--offapi/com/sun/star/sheet/DataPilotDescriptor.idl151
-rw-r--r--offapi/com/sun/star/sheet/DataPilotField.idl248
-rw-r--r--offapi/com/sun/star/sheet/DataPilotFieldAutoShowInfo.idl83
-rw-r--r--offapi/com/sun/star/sheet/DataPilotFieldFilter.idl51
-rw-r--r--offapi/com/sun/star/sheet/DataPilotFieldGroup.idl133
-rw-r--r--offapi/com/sun/star/sheet/DataPilotFieldGroupBy.idl138
-rw-r--r--offapi/com/sun/star/sheet/DataPilotFieldGroupEnumeration.idl64
-rw-r--r--offapi/com/sun/star/sheet/DataPilotFieldGroupInfo.idl164
-rw-r--r--offapi/com/sun/star/sheet/DataPilotFieldGroupItem.idl60
-rw-r--r--offapi/com/sun/star/sheet/DataPilotFieldGroups.idl127
-rw-r--r--offapi/com/sun/star/sheet/DataPilotFieldGroupsEnumeration.idl64
-rw-r--r--offapi/com/sun/star/sheet/DataPilotFieldLayoutInfo.idl66
-rw-r--r--offapi/com/sun/star/sheet/DataPilotFieldLayoutMode.idl86
-rw-r--r--offapi/com/sun/star/sheet/DataPilotFieldOrientation.idl78
-rw-r--r--offapi/com/sun/star/sheet/DataPilotFieldReference.idl91
-rw-r--r--offapi/com/sun/star/sheet/DataPilotFieldReferenceItemType.idl68
-rw-r--r--offapi/com/sun/star/sheet/DataPilotFieldReferenceType.idl175
-rw-r--r--offapi/com/sun/star/sheet/DataPilotFieldShowItemsMode.idl64
-rw-r--r--offapi/com/sun/star/sheet/DataPilotFieldSortInfo.idl74
-rw-r--r--offapi/com/sun/star/sheet/DataPilotFieldSortMode.idl81
-rw-r--r--offapi/com/sun/star/sheet/DataPilotFields.idl84
-rw-r--r--offapi/com/sun/star/sheet/DataPilotFieldsEnumeration.idl62
-rw-r--r--offapi/com/sun/star/sheet/DataPilotItem.idl90
-rw-r--r--offapi/com/sun/star/sheet/DataPilotItems.idl80
-rw-r--r--offapi/com/sun/star/sheet/DataPilotItemsEnumeration.idl62
-rw-r--r--offapi/com/sun/star/sheet/DataPilotOutputRangeType.idl72
-rw-r--r--offapi/com/sun/star/sheet/DataPilotSource.idl129
-rw-r--r--offapi/com/sun/star/sheet/DataPilotSourceDimension.idl174
-rw-r--r--offapi/com/sun/star/sheet/DataPilotSourceDimensions.idl62
-rw-r--r--offapi/com/sun/star/sheet/DataPilotSourceHierarchies.idl64
-rw-r--r--offapi/com/sun/star/sheet/DataPilotSourceHierarchy.idl72
-rw-r--r--offapi/com/sun/star/sheet/DataPilotSourceLevel.idl110
-rw-r--r--offapi/com/sun/star/sheet/DataPilotSourceLevels.idl63
-rw-r--r--offapi/com/sun/star/sheet/DataPilotSourceMember.idl99
-rw-r--r--offapi/com/sun/star/sheet/DataPilotSourceMembers.idl63
-rw-r--r--offapi/com/sun/star/sheet/DataPilotTable.idl80
-rw-r--r--offapi/com/sun/star/sheet/DataPilotTableHeaderData.idl79
-rw-r--r--offapi/com/sun/star/sheet/DataPilotTablePositionData.idl90
-rw-r--r--offapi/com/sun/star/sheet/DataPilotTablePositionType.idl78
-rw-r--r--offapi/com/sun/star/sheet/DataPilotTableResultData.idl86
-rw-r--r--offapi/com/sun/star/sheet/DataPilotTables.idl77
-rw-r--r--offapi/com/sun/star/sheet/DataPilotTablesEnumeration.idl62
-rw-r--r--offapi/com/sun/star/sheet/DataResult.idl62
-rw-r--r--offapi/com/sun/star/sheet/DataResultFlags.idl69
-rw-r--r--offapi/com/sun/star/sheet/DatabaseImportDescriptor.idl94
-rw-r--r--offapi/com/sun/star/sheet/DatabaseRange.idl172
-rw-r--r--offapi/com/sun/star/sheet/DatabaseRanges.idl83
-rw-r--r--offapi/com/sun/star/sheet/DatabaseRangesEnumeration.idl62
-rw-r--r--offapi/com/sun/star/sheet/DimensionFlags.idl74
-rw-r--r--offapi/com/sun/star/sheet/DocumentSettings.idl137
-rw-r--r--offapi/com/sun/star/sheet/ExternalDocLink.idl54
-rw-r--r--offapi/com/sun/star/sheet/ExternalDocLinks.idl52
-rw-r--r--offapi/com/sun/star/sheet/ExternalLinkInfo.idl77
-rw-r--r--offapi/com/sun/star/sheet/ExternalLinkType.idl64
-rw-r--r--offapi/com/sun/star/sheet/ExternalReference.idl96
-rw-r--r--offapi/com/sun/star/sheet/ExternalSheetCache.idl52
-rw-r--r--offapi/com/sun/star/sheet/FillDateMode.idl75
-rw-r--r--offapi/com/sun/star/sheet/FillDirection.idl73
-rw-r--r--offapi/com/sun/star/sheet/FillMode.idl93
-rw-r--r--offapi/com/sun/star/sheet/FilterConnection.idl61
-rw-r--r--offapi/com/sun/star/sheet/FilterFormulaParser.idl52
-rw-r--r--offapi/com/sun/star/sheet/FilterOperator.idl120
-rw-r--r--offapi/com/sun/star/sheet/FilterOperator2.idl161
-rw-r--r--offapi/com/sun/star/sheet/FormulaLanguage.idl75
-rw-r--r--offapi/com/sun/star/sheet/FormulaMapGroup.idl77
-rw-r--r--offapi/com/sun/star/sheet/FormulaMapGroupSpecialOffset.idl210
-rw-r--r--offapi/com/sun/star/sheet/FormulaOpCodeMapEntry.idl65
-rw-r--r--offapi/com/sun/star/sheet/FormulaParser.idl118
-rw-r--r--offapi/com/sun/star/sheet/FormulaResult.idl66
-rw-r--r--offapi/com/sun/star/sheet/FormulaToken.idl64
-rw-r--r--offapi/com/sun/star/sheet/FunctionAccess.idl95
-rw-r--r--offapi/com/sun/star/sheet/FunctionArgument.idl69
-rw-r--r--offapi/com/sun/star/sheet/FunctionCategory.idl116
-rw-r--r--offapi/com/sun/star/sheet/FunctionDescription.idl89
-rw-r--r--offapi/com/sun/star/sheet/FunctionDescriptionEnumeration.idl62
-rw-r--r--offapi/com/sun/star/sheet/FunctionDescriptions.idl91
-rw-r--r--offapi/com/sun/star/sheet/GeneralFunction.idl128
-rw-r--r--offapi/com/sun/star/sheet/GlobalSheetSettings.idl192
-rw-r--r--offapi/com/sun/star/sheet/GoalResult.idl58
-rw-r--r--offapi/com/sun/star/sheet/HeaderFooterContent.idl60
-rw-r--r--offapi/com/sun/star/sheet/LabelRange.idl61
-rw-r--r--offapi/com/sun/star/sheet/LabelRanges.idl87
-rw-r--r--offapi/com/sun/star/sheet/LabelRangesEnumeration.idl62
-rw-r--r--offapi/com/sun/star/sheet/LocalizedName.idl65
-rw-r--r--offapi/com/sun/star/sheet/MemberResult.idl68
-rw-r--r--offapi/com/sun/star/sheet/MemberResultFlags.idl77
-rw-r--r--offapi/com/sun/star/sheet/MoveDirection.idl73
-rw-r--r--offapi/com/sun/star/sheet/NamedRange.idl112
-rw-r--r--offapi/com/sun/star/sheet/NamedRangeFlag.idl72
-rw-r--r--offapi/com/sun/star/sheet/NamedRanges.idl102
-rw-r--r--offapi/com/sun/star/sheet/NamedRangesEnumeration.idl62
-rw-r--r--offapi/com/sun/star/sheet/NoConvergenceException.idl52
-rw-r--r--offapi/com/sun/star/sheet/PasteOperation.idl79
-rw-r--r--offapi/com/sun/star/sheet/RangeSelectionArguments.idl72
-rw-r--r--offapi/com/sun/star/sheet/RangeSelectionEvent.idl57
-rw-r--r--offapi/com/sun/star/sheet/RecentFunctions.idl58
-rw-r--r--offapi/com/sun/star/sheet/ReferenceFlags.idl97
-rw-r--r--offapi/com/sun/star/sheet/ResultEvent.idl63
-rw-r--r--offapi/com/sun/star/sheet/Scenario.idl122
-rw-r--r--offapi/com/sun/star/sheet/Scenarios.idl81
-rw-r--r--offapi/com/sun/star/sheet/ScenariosEnumeration.idl62
-rw-r--r--offapi/com/sun/star/sheet/Shape.idl82
-rw-r--r--offapi/com/sun/star/sheet/SheetCell.idl340
-rw-r--r--offapi/com/sun/star/sheet/SheetCellCursor.idl92
-rw-r--r--offapi/com/sun/star/sheet/SheetCellRange.idl434
-rw-r--r--offapi/com/sun/star/sheet/SheetCellRanges.idl257
-rw-r--r--offapi/com/sun/star/sheet/SheetCellRangesEnumeration.idl62
-rw-r--r--offapi/com/sun/star/sheet/SheetFilterDescriptor.idl148
-rw-r--r--offapi/com/sun/star/sheet/SheetLink.idl109
-rw-r--r--offapi/com/sun/star/sheet/SheetLinkMode.idl70
-rw-r--r--offapi/com/sun/star/sheet/SheetLinks.idl89
-rw-r--r--offapi/com/sun/star/sheet/SheetLinksEnumeration.idl62
-rw-r--r--offapi/com/sun/star/sheet/SheetRangesQuery.idl68
-rw-r--r--offapi/com/sun/star/sheet/SheetSortDescriptor.idl102
-rw-r--r--offapi/com/sun/star/sheet/SheetSortDescriptor2.idl116
-rw-r--r--offapi/com/sun/star/sheet/SingleReference.idl90
-rw-r--r--offapi/com/sun/star/sheet/Solver.idl50
-rw-r--r--offapi/com/sun/star/sheet/SolverConstraint.idl66
-rw-r--r--offapi/com/sun/star/sheet/SolverConstraintOperator.idl62
-rw-r--r--offapi/com/sun/star/sheet/Spreadsheet.idl279
-rw-r--r--offapi/com/sun/star/sheet/SpreadsheetDocument.idl288
-rw-r--r--offapi/com/sun/star/sheet/SpreadsheetDocumentSettings.idl250
-rw-r--r--offapi/com/sun/star/sheet/SpreadsheetDrawPage.idl97
-rw-r--r--offapi/com/sun/star/sheet/SpreadsheetView.idl148
-rw-r--r--offapi/com/sun/star/sheet/SpreadsheetViewPane.idl71
-rw-r--r--offapi/com/sun/star/sheet/SpreadsheetViewPanesEnumeration.idl62
-rw-r--r--offapi/com/sun/star/sheet/SpreadsheetViewSettings.idl193
-rw-r--r--offapi/com/sun/star/sheet/Spreadsheets.idl95
-rw-r--r--offapi/com/sun/star/sheet/SpreadsheetsEnumeration.idl62
-rw-r--r--offapi/com/sun/star/sheet/StatusBarFunction.idl91
-rw-r--r--offapi/com/sun/star/sheet/SubTotalColumn.idl66
-rw-r--r--offapi/com/sun/star/sheet/SubTotalDescriptor.idl150
-rw-r--r--offapi/com/sun/star/sheet/SubTotalField.idl63
-rw-r--r--offapi/com/sun/star/sheet/SubTotalFieldsEnumeration.idl62
-rw-r--r--offapi/com/sun/star/sheet/TableAutoFormat.idl141
-rw-r--r--offapi/com/sun/star/sheet/TableAutoFormatEnumeration.idl62
-rw-r--r--offapi/com/sun/star/sheet/TableAutoFormatField.idl329
-rw-r--r--offapi/com/sun/star/sheet/TableAutoFormats.idl85
-rw-r--r--offapi/com/sun/star/sheet/TableAutoFormatsEnumeration.idl62
-rw-r--r--offapi/com/sun/star/sheet/TableCellStyle.idl112
-rw-r--r--offapi/com/sun/star/sheet/TableConditionalEntry.idl70
-rw-r--r--offapi/com/sun/star/sheet/TableConditionalEntryEnumeration.idl62
-rw-r--r--offapi/com/sun/star/sheet/TableConditionalFormat.idl103
-rw-r--r--offapi/com/sun/star/sheet/TableFilterField.idl95
-rw-r--r--offapi/com/sun/star/sheet/TableFilterField2.idl103
-rw-r--r--offapi/com/sun/star/sheet/TableOperationMode.idl76
-rw-r--r--offapi/com/sun/star/sheet/TablePageBreakData.idl62
-rw-r--r--offapi/com/sun/star/sheet/TablePageStyle.idl221
-rw-r--r--offapi/com/sun/star/sheet/TableValidation.idl148
-rw-r--r--offapi/com/sun/star/sheet/TableValidationVisibility.idl67
-rw-r--r--offapi/com/sun/star/sheet/UniqueCellFormatRanges.idl80
-rw-r--r--offapi/com/sun/star/sheet/UniqueCellFormatRangesEnumeration.idl63
-rw-r--r--offapi/com/sun/star/sheet/ValidationAlertStyle.idl74
-rw-r--r--offapi/com/sun/star/sheet/ValidationType.idl96
-rw-r--r--offapi/com/sun/star/sheet/VolatileResult.idl64
-rw-r--r--offapi/com/sun/star/sheet/XActivationBroadcaster.idl85
-rw-r--r--offapi/com/sun/star/sheet/XActivationEventListener.idl74
-rw-r--r--offapi/com/sun/star/sheet/XAddIn.idl218
-rw-r--r--offapi/com/sun/star/sheet/XAreaLink.idl89
-rw-r--r--offapi/com/sun/star/sheet/XAreaLinks.idl95
-rw-r--r--offapi/com/sun/star/sheet/XArrayFormulaRange.idl69
-rw-r--r--offapi/com/sun/star/sheet/XArrayFormulaTokens.idl68
-rw-r--r--offapi/com/sun/star/sheet/XCalculatable.idl95
-rw-r--r--offapi/com/sun/star/sheet/XCellAddressable.idl66
-rw-r--r--offapi/com/sun/star/sheet/XCellFormatRangesSupplier.idl75
-rw-r--r--offapi/com/sun/star/sheet/XCellRangeAddressable.idl66
-rw-r--r--offapi/com/sun/star/sheet/XCellRangeData.idl69
-rw-r--r--offapi/com/sun/star/sheet/XCellRangeFormula.idl79
-rw-r--r--offapi/com/sun/star/sheet/XCellRangeMovement.idl131
-rw-r--r--offapi/com/sun/star/sheet/XCellRangeReferrer.idl68
-rw-r--r--offapi/com/sun/star/sheet/XCellRangesAccess.idl152
-rw-r--r--offapi/com/sun/star/sheet/XCellRangesQuery.idl172
-rw-r--r--offapi/com/sun/star/sheet/XCellSeries.idl110
-rw-r--r--offapi/com/sun/star/sheet/XCompatibilityNames.idl82
-rw-r--r--offapi/com/sun/star/sheet/XConsolidatable.idl87
-rw-r--r--offapi/com/sun/star/sheet/XConsolidationDescriptor.idl150
-rw-r--r--offapi/com/sun/star/sheet/XDDELink.idl75
-rw-r--r--offapi/com/sun/star/sheet/XDDELinkResults.idl77
-rw-r--r--offapi/com/sun/star/sheet/XDDELinks.idl92
-rw-r--r--offapi/com/sun/star/sheet/XDataPilotDataLayoutFieldSupplier.idl74
-rw-r--r--offapi/com/sun/star/sheet/XDataPilotDescriptor.idl150
-rw-r--r--offapi/com/sun/star/sheet/XDataPilotField.idl67
-rw-r--r--offapi/com/sun/star/sheet/XDataPilotFieldGrouping.idl174
-rw-r--r--offapi/com/sun/star/sheet/XDataPilotMemberResults.idl70
-rw-r--r--offapi/com/sun/star/sheet/XDataPilotResults.idl70
-rw-r--r--offapi/com/sun/star/sheet/XDataPilotTable.idl73
-rw-r--r--offapi/com/sun/star/sheet/XDataPilotTable2.idl131
-rw-r--r--offapi/com/sun/star/sheet/XDataPilotTables.idl106
-rw-r--r--offapi/com/sun/star/sheet/XDataPilotTablesSupplier.idl66
-rw-r--r--offapi/com/sun/star/sheet/XDatabaseRange.idl127
-rw-r--r--offapi/com/sun/star/sheet/XDatabaseRanges.idl72
-rw-r--r--offapi/com/sun/star/sheet/XDimensionsSupplier.idl66
-rw-r--r--offapi/com/sun/star/sheet/XDocumentAuditing.idl62
-rw-r--r--offapi/com/sun/star/sheet/XDrillDownDataSupplier.idl87
-rw-r--r--offapi/com/sun/star/sheet/XEnhancedMouseClickBroadcaster.idl91
-rw-r--r--offapi/com/sun/star/sheet/XExternalDocLink.idl98
-rw-r--r--offapi/com/sun/star/sheet/XExternalDocLinks.idl63
-rw-r--r--offapi/com/sun/star/sheet/XExternalSheetCache.idl99
-rw-r--r--offapi/com/sun/star/sheet/XExternalSheetName.idl82
-rw-r--r--offapi/com/sun/star/sheet/XFillAcrossSheet.idl60
-rw-r--r--offapi/com/sun/star/sheet/XFilterFormulaParser.idl59
-rw-r--r--offapi/com/sun/star/sheet/XFormulaOpCodeMapper.idl155
-rw-r--r--offapi/com/sun/star/sheet/XFormulaParser.idl68
-rw-r--r--offapi/com/sun/star/sheet/XFormulaQuery.idl100
-rw-r--r--offapi/com/sun/star/sheet/XFormulaTokens.idl68
-rw-r--r--offapi/com/sun/star/sheet/XFunctionAccess.idl125
-rw-r--r--offapi/com/sun/star/sheet/XFunctionDescriptions.idl83
-rw-r--r--offapi/com/sun/star/sheet/XGoalSeek.idl83
-rw-r--r--offapi/com/sun/star/sheet/XHeaderFooterContent.idl86
-rw-r--r--offapi/com/sun/star/sheet/XHierarchiesSupplier.idl68
-rw-r--r--offapi/com/sun/star/sheet/XLabelRange.idl87
-rw-r--r--offapi/com/sun/star/sheet/XLabelRanges.idl80
-rw-r--r--offapi/com/sun/star/sheet/XLevelsSupplier.idl68
-rw-r--r--offapi/com/sun/star/sheet/XMembersSupplier.idl68
-rw-r--r--offapi/com/sun/star/sheet/XMultiFormulaTokens.idl99
-rw-r--r--offapi/com/sun/star/sheet/XMultipleOperation.idl102
-rw-r--r--offapi/com/sun/star/sheet/XNamedRange.idl111
-rw-r--r--offapi/com/sun/star/sheet/XNamedRanges.idl142
-rw-r--r--offapi/com/sun/star/sheet/XPrintAreas.idl165
-rw-r--r--offapi/com/sun/star/sheet/XRangeSelection.idl94
-rw-r--r--offapi/com/sun/star/sheet/XRangeSelectionChangeListener.idl64
-rw-r--r--offapi/com/sun/star/sheet/XRangeSelectionListener.idl67
-rw-r--r--offapi/com/sun/star/sheet/XRecentFunctions.idl83
-rw-r--r--offapi/com/sun/star/sheet/XResultListener.idl64
-rw-r--r--offapi/com/sun/star/sheet/XScenario.idl93
-rw-r--r--offapi/com/sun/star/sheet/XScenarioEnhanced.idl72
-rw-r--r--offapi/com/sun/star/sheet/XScenarios.idl84
-rw-r--r--offapi/com/sun/star/sheet/XScenariosSupplier.idl64
-rw-r--r--offapi/com/sun/star/sheet/XSheetAnnotation.idl91
-rw-r--r--offapi/com/sun/star/sheet/XSheetAnnotationAnchor.idl65
-rw-r--r--offapi/com/sun/star/sheet/XSheetAnnotationShapeSupplier.idl66
-rw-r--r--offapi/com/sun/star/sheet/XSheetAnnotations.idl90
-rw-r--r--offapi/com/sun/star/sheet/XSheetAnnotationsSupplier.idl64
-rw-r--r--offapi/com/sun/star/sheet/XSheetAuditing.idl124
-rw-r--r--offapi/com/sun/star/sheet/XSheetCellCursor.idl113
-rw-r--r--offapi/com/sun/star/sheet/XSheetCellRange.idl70
-rw-r--r--offapi/com/sun/star/sheet/XSheetCellRangeContainer.idl127
-rw-r--r--offapi/com/sun/star/sheet/XSheetCellRanges.idl92
-rw-r--r--offapi/com/sun/star/sheet/XSheetCondition.idl132
-rw-r--r--offapi/com/sun/star/sheet/XSheetConditionalEntries.idl102
-rw-r--r--offapi/com/sun/star/sheet/XSheetConditionalEntry.idl69
-rw-r--r--offapi/com/sun/star/sheet/XSheetFilterDescriptor.idl71
-rw-r--r--offapi/com/sun/star/sheet/XSheetFilterDescriptor2.idl76
-rw-r--r--offapi/com/sun/star/sheet/XSheetFilterable.idl81
-rw-r--r--offapi/com/sun/star/sheet/XSheetFilterableEx.idl71
-rw-r--r--offapi/com/sun/star/sheet/XSheetLinkable.idl134
-rw-r--r--offapi/com/sun/star/sheet/XSheetOperation.idl87
-rw-r--r--offapi/com/sun/star/sheet/XSheetOutline.idl141
-rw-r--r--offapi/com/sun/star/sheet/XSheetPageBreak.idl94
-rw-r--r--offapi/com/sun/star/sheet/XSheetPastable.idl100
-rw-r--r--offapi/com/sun/star/sheet/XSolver.idl84
-rw-r--r--offapi/com/sun/star/sheet/XSolverDescription.idl65
-rw-r--r--offapi/com/sun/star/sheet/XSpreadsheet.idl76
-rw-r--r--offapi/com/sun/star/sheet/XSpreadsheetDocument.idl66
-rw-r--r--offapi/com/sun/star/sheet/XSpreadsheetView.idl69
-rw-r--r--offapi/com/sun/star/sheet/XSpreadsheets.idl93
-rw-r--r--offapi/com/sun/star/sheet/XSubTotalCalculatable.idl95
-rw-r--r--offapi/com/sun/star/sheet/XSubTotalDescriptor.idl80
-rw-r--r--offapi/com/sun/star/sheet/XSubTotalField.idl87
-rw-r--r--offapi/com/sun/star/sheet/XUniqueCellFormatRangesSupplier.idl77
-rw-r--r--offapi/com/sun/star/sheet/XUsedAreaCursor.idl78
-rw-r--r--offapi/com/sun/star/sheet/XViewFreezable.idl75
-rw-r--r--offapi/com/sun/star/sheet/XViewPane.idl89
-rw-r--r--offapi/com/sun/star/sheet/XViewPanesSupplier.idl64
-rw-r--r--offapi/com/sun/star/sheet/XViewSplitable.idl102
-rw-r--r--offapi/com/sun/star/sheet/XVolatileResult.idl73
-rw-r--r--offapi/com/sun/star/sheet/_NamedRange.idl73
-rw-r--r--offapi/com/sun/star/sheet/makefile.mk349
304 files changed, 29112 insertions, 0 deletions
diff --git a/offapi/com/sun/star/sheet/AccessibleCell.idl b/offapi/com/sun/star/sheet/AccessibleCell.idl
new file mode 100644
index 000000000000..014b5c84b82f
--- /dev/null
+++ b/offapi/com/sun/star/sheet/AccessibleCell.idl
@@ -0,0 +1,135 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_sheet_AccessibleCell_idl__
+#define __com_sun_star_sheet_AccessibleCell_idl__
+
+#ifndef __com_sun_star_accessibility_XAccessibleContext_idl__
+#include <com/sun/star/accessibility/XAccessibleContext.idl>
+#endif
+
+#ifndef __com_sun_star_accessibility_XAccessibleComponent_idl__
+#include <com/sun/star/accessibility/XAccessibleComponent.idl>
+#endif
+
+#ifndef __com_sun_star_accessibility_XAccessibleValue_idl__
+#include <com/sun/star/accessibility/XAccessibleValue.idl>
+#endif
+
+#ifndef __com_sun_star_accessibility_XAccessibleText_idl__
+#include <com/sun/star/accessibility/XAccessibleText.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** The accessible view of a spreadsheet document
+
+ @since OOo 1.1.2
+
+ */
+published service AccessibleCell
+{
+ /** This interface gives access to the whole content of the cell.
+
+ <ul>
+ <li>The parent returned by
+ <method scope="::com::sun::star::accessibility"
+ >XAccessibleContext::getAccessibleParent</method>
+ is the accessible spreadsheet.</li>
+ <li>This object has no children.</li>
+ <li>The description is ???.</li>
+ <li>The name is something like A10 or B23 or so on.</li>
+ <li>The role is <const scope="::com::sun::star::accessibility"
+ >AccessibleRole::TABLE_CELL</const></li>
+ <li>There are relations between the cell and the shapes with an anchor
+ on this cell.</li>
+ <li>The following states are supported:
+ <ul>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::DEFUNC</const> is always false if the
+ parent table is showed, otherwise it is true.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::EDITABLE</const> is false if the cell
+ or the table is protected, otherwise it is true.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::ENABLED</const> is always true.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::MULTILINE</const> is always true.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::MULTISELECTABLE</const> is always
+ true.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::OPAQUE</const> is false if the cell
+ has no background color or graphic, otherwise it is
+ true.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::RESIZEABLE</const> is false if the
+ table is protected, otherwise is it true.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::SELECTABLE</const> is always
+ true.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::SELECTED</const> is true, if the
+ cell is selected.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::TRANSIENT</const> is always true.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::SHOWING</const>Is true if the
+ Bounding Box lies in Bounding Box of the parent. Otherwise
+ it is false.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::VISIBLE</const>Is false if the
+ column/row with this cell is filtered or hidden.
+ Otherwise is true.</li>
+ </ul>
+ </li>
+ </ul>
+ */
+ interface ::com::sun::star::accessibility::XAccessibleContext;
+
+ /** This interface gives access to the visibility of the cell.
+ */
+ interface ::com::sun::star::accessibility::XAccessibleComponent;
+
+ /** This interface gives access to the value of the cell.
+ */
+ interface ::com::sun::star::accessibility::XAccessibleValue;
+
+ /** This interface gives access to the text representation of the cell content.
+ */
+ interface ::com::sun::star::accessibility::XAccessibleText;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/sheet/AccessibleCsvCell.idl b/offapi/com/sun/star/sheet/AccessibleCsvCell.idl
new file mode 100644
index 000000000000..10e77f7bcbc6
--- /dev/null
+++ b/offapi/com/sun/star/sheet/AccessibleCsvCell.idl
@@ -0,0 +1,81 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_AccessibleCsvCell_idl__
+#define __com_sun_star_sheet_AccessibleCsvCell_idl__
+
+#ifndef __com_sun_star_accessibility_XAccessibleContext_idl__
+#include <com/sun/star/accessibility/XAccessibleContext.idl>
+#endif
+
+#ifndef __com_sun_star_accessibility_XAccessibleComponent_idl__
+#include <com/sun/star/accessibility/XAccessibleComponent.idl>
+#endif
+
+#ifndef __com_sun_star_accessibility_XAccessibleText_idl__
+#include <com/sun/star/accessibility/XAccessibleText.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** The accessible object of a cell in the CSV import dialog.
+ @see ::com::sun::star::sheet::AccessibleCsvTable
+
+ @since OOo 1.1.2
+ */
+published service AccessibleCsvCell
+{
+ //-------------------------------------------------------------------------
+
+ /** This interface gives access to the whole content of the cell.
+ */
+ interface ::com::sun::star::accessibility::XAccessibleContext;
+
+ //-------------------------------------------------------------------------
+
+ /** This interface gives access to the visibility of the cell.
+ */
+ interface ::com::sun::star::accessibility::XAccessibleComponent;
+
+ //-------------------------------------------------------------------------
+
+ /** This interface gives access to the text representation of the cell
+ content.
+ */
+ interface ::com::sun::star::accessibility::XAccessibleText;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/sheet/AccessibleCsvRuler.idl b/offapi/com/sun/star/sheet/AccessibleCsvRuler.idl
new file mode 100644
index 000000000000..1ee7df9ddba1
--- /dev/null
+++ b/offapi/com/sun/star/sheet/AccessibleCsvRuler.idl
@@ -0,0 +1,80 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_AccessibleCsvRuler_idl__
+#define __com_sun_star_sheet_AccessibleCsvRuler_idl__
+
+#ifndef __com_sun_star_accessibility_XAccessibleContext_idl__
+#include <com/sun/star/accessibility/XAccessibleContext.idl>
+#endif
+
+#ifndef __com_sun_star_accessibility_XAccessibleComponent_idl__
+#include <com/sun/star/accessibility/XAccessibleComponent.idl>
+#endif
+
+#ifndef __com_sun_star_accessibility_XAccessibleText_idl__
+#include <com/sun/star/accessibility/XAccessibleText.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** The accessible object of the ruler in the CSV import dialog.
+ @see ::com::sun::star::sheet::AccessibleCsvTable
+
+ @since OOo 1.1.2
+ */
+published service AccessibleCsvRuler
+{
+ //-------------------------------------------------------------------------
+
+ /** This interface gives access to the whole content of the ruler.
+ */
+ interface ::com::sun::star::accessibility::XAccessibleContext;
+
+ //-------------------------------------------------------------------------
+
+ /** This interface gives access to the visibility of the ruler.
+ */
+ interface ::com::sun::star::accessibility::XAccessibleComponent;
+
+ //-------------------------------------------------------------------------
+
+ /** This interface gives access to the text representation of the ruler.
+ */
+ interface ::com::sun::star::accessibility::XAccessibleText;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/sheet/AccessibleCsvTable.idl b/offapi/com/sun/star/sheet/AccessibleCsvTable.idl
new file mode 100644
index 000000000000..95f4a91bdf6a
--- /dev/null
+++ b/offapi/com/sun/star/sheet/AccessibleCsvTable.idl
@@ -0,0 +1,91 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_AccessibleCsvTable_idl__
+#define __com_sun_star_sheet_AccessibleCsvTable_idl__
+
+#ifndef __com_sun_star_accessibility_XAccessibleContext_idl__
+#include <com/sun/star/accessibility/XAccessibleContext.idl>
+#endif
+
+#ifndef __com_sun_star_accessibility_XAccessibleComponent_idl__
+#include <com/sun/star/accessibility/XAccessibleComponent.idl>
+#endif
+
+#ifndef __com_sun_star_accessibility_XAccessibleTable_idl__
+#include <com/sun/star/accessibility/XAccessibleTable.idl>
+#endif
+
+#ifndef __com_sun_star_accessibility_XAccessibleSelection_idl__
+#include <com/sun/star/accessibility/XAccessibleSelection.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** The accessible object of the data table in the CSV import dialog.
+ @see ::com::sun::star::sheet::AccessibleCsvRuler
+ @see ::com::sun::star::sheet::AccessibleCsvCell
+
+ @since OOo 1.1.2
+ */
+published service AccessibleCsvTable
+{
+ //-------------------------------------------------------------------------
+
+ /** This interface gives access to the whole content of the table.
+ */
+ interface ::com::sun::star::accessibility::XAccessibleContext;
+
+ //-------------------------------------------------------------------------
+
+ /** This interface gives access to the visibility of the table.
+ */
+ interface ::com::sun::star::accessibility::XAccessibleComponent;
+
+ //-------------------------------------------------------------------------
+
+ /** This interface gives access to functionality specific for a table.
+ */
+ interface ::com::sun::star::accessibility::XAccessibleTable;
+
+ //-------------------------------------------------------------------------
+
+ /** This interface gives access to selection functionality.
+ */
+ interface ::com::sun::star::accessibility::XAccessibleSelection;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/sheet/AccessiblePageHeaderFooterAreasView.idl b/offapi/com/sun/star/sheet/AccessiblePageHeaderFooterAreasView.idl
new file mode 100644
index 000000000000..df8e41e875e1
--- /dev/null
+++ b/offapi/com/sun/star/sheet/AccessiblePageHeaderFooterAreasView.idl
@@ -0,0 +1,148 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_sheet_AccessiblePageHeaderFooterAreasView_idl__
+#define __com_sun_star_sheet_AccessiblePageHeaderFooterAreasView_idl__
+
+#ifndef __com_sun_star_accessibility_XAccessibleContext_idl__
+#include <com/sun/star/accessibility/XAccessibleContext.idl>
+#endif
+
+#ifndef __com_sun_star_accessibility_XAccessibleComponent_idl__
+#include <com/sun/star/accessibility/XAccessibleComponent.idl>
+#endif
+
+#ifndef __com_sun_star_accessibility_XAccessibleEventBroadcaster_idl__
+#include <com/sun/star/accessibility/XAccessibleEventBroadcaster.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** The accessible view of the Header/Footer in a spreadsheet page preview
+
+ @since OOo 1.1.2
+
+ */
+published service AccessiblePageHeaderFooterAreasView
+{
+ /** This interface gives access to the three Header/Footer areas in the
+ page preview.
+
+ <ul>
+ <li>The parent returned by <method scope="::com::sun::star::accessibility"
+ >XAccessibleContext::getAccessibleParent</method>
+ is the accessible spreadsheet page preview.</li>
+ <li>The children returned by
+ <method scope="::com::sun::star::accessibility"
+ >XAccessibleContext::getAccessibleChild</method> all
+ support the interface
+ <type scope="::com::sun::star::accessibility">XAccessible</type.
+ Calling
+ <method scope="::com::sun::star::accessibility"
+ >XAccessible::getAccessibleContext</method> for these children
+ returns an object that supports one of the following services.</li>
+ <ul>
+ <li><type scope="::com::sun::star::text">AccessibleHeaderFooterView</type>:
+ A child where calling <method scope="::com::sun::star::text"
+ >XAccessibleContext::getAccessibleChild</method>
+ an object that supports this service is returned for
+ every header and footer that is at least partially visible.</li>
+ </ul>
+ <p>The following rules apply to the children order.</p>
+ <ul>
+ <li>The first is the left area, than the centre area and the last
+ is the right area.</li>
+ </ul>
+ <li>The description is ???.</li>
+ <li>The name is Header or Footer respectively.</li>
+ <li>The role is <const scope="::com::sun::star::accessibility"
+ >AccessibleRole::HEADER</const> or
+ <const scope="::com::sun::star::accessibility"
+ >AccessibleRole::FOOTER</const>.</li>
+ <li>There are no relations.</li>
+ <li>The following states are supported:
+ <ul>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::DEFUNC</const> is always false until
+ the preview is closed.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::EDITABLE</const> is always false,
+ because the document is not editable in the page preview.
+ So it is left out of the list.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::ENABLED</const> is always true.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::MULTILINE</const> makes no sense on
+ a document and so it is left out of the list.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::MULTISELECTABLE</const> is always
+ false, because in a page preview a selection is not
+ possible. So it is left out of the list.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::OPAQUE</const> is always true.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::RESIZEABLE</const> is always false,
+ because you can resize the window of the page preview, but
+ not the page preview itself. So it is left out of the
+ list.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::SELECTABLE</const> is always false,
+ because in the page preview is no selection possible. So it
+ is left out of the list.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::SELECTED</const> is always false,
+ because in the page preview is no selection possible. So it
+ is left out of the list.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::SHOWING</const>Is true if the
+ Bounding Box lies in the Bounding Box of the parent.
+ Otherwise it is false.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::VISIBLE</const>Is always true.</li>
+ </ul>
+ </li>
+ </ul>
+
+ */
+ interface ::com::sun::star::accessibility::XAccessibleContext;
+
+ /** This interface gives access to the visibility of the document.
+ */
+ interface ::com::sun::star::accessibility::XAccessibleComponent;
+
+ /** This is the interface for listeners */
+ interface ::com::sun::star::accessibility::XAccessibleEventBroadcaster;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/sheet/AccessibleSpreadsheet.idl b/offapi/com/sun/star/sheet/AccessibleSpreadsheet.idl
new file mode 100644
index 000000000000..5d703ebe0a0d
--- /dev/null
+++ b/offapi/com/sun/star/sheet/AccessibleSpreadsheet.idl
@@ -0,0 +1,157 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_sheet_AccessibleSpreadsheet_idl__
+#define __com_sun_star_sheet_AccessibleSpreadsheet_idl__
+
+#ifndef __com_sun_star_accessibility_XAccessibleContext_idl__
+#include <com/sun/star/accessibility/XAccessibleContext.idl>
+#endif
+
+#ifndef __com_sun_star_accessibility_XAccessibleComponent_idl__
+#include <com/sun/star/accessibility/XAccessibleComponent.idl>
+#endif
+
+#ifndef __com_sun_star_accessibility_XAccessibleTable_idl__
+#include <com/sun/star/accessibility/XAccessibleTable.idl>
+#endif
+
+#ifndef __com_sun_star_accessibility_XAccessibleSelection_idl__
+#include <com/sun/star/accessibility/XAccessibleSelection.idl>
+#endif
+
+#ifndef __com_sun_star_accessibility_XAccessibleEventBroadcaster_idl__
+#include <com/sun/star/accessibility/XAccessibleEventBroadcaster.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** The accessible view of a spreadsheet document
+
+ @since OOo 1.1.2
+*/
+published service AccessibleSpreadsheet
+{
+ /** This interface gives access to any object in the currently visible table
+ on the desktop.
+
+ <ul>
+ <li>The parent returned by <method scope="::com::sun::star::accessibility"
+ >XAccessibleContext::getAccessibleParent</method>
+ is the accessible spreadsheet document view.</li>
+ <li>The children returned by <method scope="::com::sun::star::accessibility"
+ >XAccessibleContext::getAccessibleChild</method> all
+ support the interface XAccessible. Calling
+ <method scope="::com::sun::star::accessibility"
+ >XAccessible::getAccessibleContext</method> for these children
+ returns an object that supports the following service.</li>
+ <ul>
+ <li><type scope="::com::sun::star::sheet">AccessibleCell</type>:
+ A child where calling
+ <method scope="::com::sun::star::accessibility"
+ >XAccessibleContext::getAccessibleChild</method>
+ an object that supports this service is returned for
+ every cell in this table.</li>
+ </ul>
+ <p>The following rules apply to the children order.</p>
+ <ul>
+ <li>All the children are cells. The order of this cells is to
+ the order on the screen. This means that the first cell is the
+ cell in the left top edge of the table and the last one is the
+ cell in the right bottom edge of the table. The second is the
+ cell in the first row and second xolumn and so on.</li>
+ </ul>
+ <li>The description is ???.</li>
+ <li>The name is the given table name.</li>
+ <li>The role is <const scope="::com::sun::star::accessibility"
+ >AccessibleRole::TABLE</const></li>
+ <li>There are relations between the table and the shapes with an anchor
+ on this table (not with an anchor on a cell in this table).</li>
+ <li>The following states are supported:
+ <ul>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::DEFUNC</const> is always false if the
+ table is not deleted and the document is open, otherwise it
+ is true.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::EDITABLE</const> is false if the
+ table is protected, otherwise it is true.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::ENABLED</const> is always true.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::MULTI_SELECTABLE</const> is always
+ true.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::OPAQUE</const> is always true.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::RESIZEABLE</const>is always
+ false.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::SELECTABLE</const> is always
+ true.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::SELECTED</const> is true if the
+ complete table (all cells) is selected.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::SHOWING</const>Is true if the
+ Bounding Box lies in the Bounding Box of the parent.
+ Otherwise it is false.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::VISIBLE</const>Is always true.</li>
+ </ul>
+ </li>
+ </ul>
+ */
+ interface ::com::sun::star::accessibility::XAccessibleContext;
+
+ /** This interface gives access to the visibility of the table.
+ */
+ interface ::com::sun::star::accessibility::XAccessibleComponent;
+
+ /** This interface gives access to any cell that is at least partially
+ visible on the screen. So this interface gives access to the same
+ things like the XAccessibleContext interface. Therefor it use more
+ usable methods. Also it gives access to some table specific data.
+ */
+ interface ::com::sun::star::accessibility::XAccessibleTable;
+
+ /** This interface is for selecting the cells.
+ */
+ interface ::com::sun::star::accessibility::XAccessibleSelection;
+
+ /** This is the interface for listeners */
+ interface ::com::sun::star::accessibility::XAccessibleEventBroadcaster;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/sheet/AccessibleSpreadsheetDocumentView.idl b/offapi/com/sun/star/sheet/AccessibleSpreadsheetDocumentView.idl
new file mode 100644
index 000000000000..3070a71d6443
--- /dev/null
+++ b/offapi/com/sun/star/sheet/AccessibleSpreadsheetDocumentView.idl
@@ -0,0 +1,166 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_sheet_AccessibleSpreadsheetDocumentView_idl__
+#define __com_sun_star_sheet_AccessibleSpreadsheetDocumentView_idl__
+
+#ifndef __com_sun_star_accessibility_XAccessibleContext_idl__
+#include <com/sun/star/accessibility/XAccessibleContext.idl>
+#endif
+
+#ifndef __com_sun_star_accessibility_XAccessibleComponent_idl__
+#include <com/sun/star/accessibility/XAccessibleComponent.idl>
+#endif
+
+#ifndef __com_sun_star_accessibility_XAccessibleSelection_idl__
+#include <com/sun/star/accessibility/XAccessibleSelection.idl>
+#endif
+
+#ifndef __com_sun_star_accessibility_XAccessibleEventBroadcaster_idl__
+#include <com/sun/star/accessibility/XAccessibleEventBroadcaster.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** The accessible view of a spreadsheet document
+
+ @since OOo 1.1.2
+
+ */
+published service AccessibleSpreadsheetDocumentView
+{
+ /** This interface gives access to any object that is contained in this
+ document.
+
+ <ul>
+ <li>The parent returned by <method>getAccessibleParent</method>
+ is the window wich contains the view of these document.</li>
+ <li>The children returned by <method>getAccessibleChild</method> all
+ support the interface XAccessible. Calling
+ <method>getAccessibleContext</method> for these children returns
+ an object that supports one of the following services.</li>
+ <ul>
+ <li><type scope="::com::sun::star::sheet">AccessibleSpreadsheet</type>:
+ A child where calling <method>getAccessibleChild</method>
+ an object that supports this service is returned for
+ the current spreadsheet which is showing in this document
+ window. There is everytime one child which supports this
+ service, because it is only possible to have one spreadsheet
+ in the current document window.</li>
+ <li><type scope="::com::sun::star::drawing">AccessibleShape</type>:
+ A child where calling <method>getAccessibleChild</method>
+ an object that supports this service is returned
+ for every shape that is at the current table. These
+ objects are children of the
+ <type>AccessibleSpreadsheetDocumentView</type> regardless
+ whether they are bound to a table or a cell.</li>
+ <li><type scope="::com::sun::star::text">AccessibleParagraphView</type>:
+ A child where calling <method>getAccessibleChild</method>
+ an object that supports this service is returned for
+ the current cell in edit mode. This is necessary to
+ have an object which allows event listeners. It exists
+ only if a cell is in edit mode.</li>
+ <li><type scope="::com::sun::star::accessibility">AccessibleContext</type>:
+ A child where calling <method>getAccessibleChild</method>
+ an object that supports this service is returned for
+ the current OLE object in edit mode. It exists
+ only if a OLE object is in edit mode.</li>
+ </ul>
+ <p>The following rules apply to the children order. General it
+ represents the paint order. The object in the background came
+ first and than all over lying objects. The last painted object
+ is also the last child.</p>
+ <ul>
+ <li>Graphics, embedded objects and shapes appear
+ before the other childs if they are painted in the
+ background. Their order reflects the z order.</li>
+ <li>The current table is painted after the background and so it
+ comes after all background objects.</li>
+ <li>Graphics, embedded objects and shapes appear
+ behind any other children except controls if they are
+ painted in the foreground. Their order reflects the z order.</li>
+ <li>Controls appear behind the other graphic objects. Their order
+ reflects the z order.</li>
+ <li>The temporary object for the cell or OLE in edit mode (only
+ one can exist in the same time) is the last object.</li>
+ </ul>
+ <li>The description is ???.</li>
+ <li>The name is Spreadsheet Document View with a unique number.</li>
+ <li>The role is <const scope="::com::sun::star::accessibility">AccessibleRole::DOCUMENT</const></li>
+ <li>There are no relations.</li>
+ <li>The following states are supported:
+ <ul>
+ <li><const scope="::com::sun::star::accessibility">AccessibleStateType::DEFUNC</const> is always false until the document is
+ closed.</li>
+ <li><const scope="::com::sun::star::accessibility">AccessibleStateType::EDITABLE</const> is always true.</li>
+ <li><const scope="::com::sun::star::accessibility">AccessibleStateType::ENABLED</const> is always true.</li>
+ <li><const scope="::com::sun::star::accessibility">AccessibleStateType::MULTI_LINE</const> makes no sense in on a document and
+ so it is left out of the list.</li>
+ <li><const scope="::com::sun::star::accessibility">AccessibleStateType::MULTI_SELECTABLE</const> is always false, because a
+ document is not selectable. Only the children are
+ selectable. So it is left out of the list.</li>
+ <li><const scope="::com::sun::star::accessibility">AccessibleStateType::OPAQUE</const> is always true.</li>
+ <li><const scope="::com::sun::star::accessibility">AccessibleStateType::RESIZEABLE</const> is always false, because you can
+ resize the window, but not the document. So it is left out
+ of the list.</li>
+ <li><const scope="::com::sun::star::accessibility">AccessibleStateType::SELECTABLE</const> is always false, because a
+ document is not selectable. Only the children are
+ selectable. So it is left out of the list.</li>
+ <li><const scope="::com::sun::star::accessibility">AccessibleStateType::SELECTED</const> is always false, because a
+ document is not selectable. Only the children are
+ selectable. So it is left out of the list.</li>
+ <li><const scope="::com::sun::star::accessibility">AccessibleStateType::SHOWING</const>Is true if the Bounding Box lies in
+ the Bounding Box of the parent. Otherwise it is false.</li>
+ <li><const scope="::com::sun::star::accessibility">AccessibleStateType::VISIBLE</const>Is always true.</li>
+ </ul>
+ </li>
+ </ul>
+
+ */
+ interface ::com::sun::star::accessibility::XAccessibleContext;
+
+ /** This interface gives access to the visibility of the document.
+ */
+ interface ::com::sun::star::accessibility::XAccessibleComponent;
+
+ /** This interface is for selecting the document's children like
+ shapes or the whole table.
+ */
+ interface ::com::sun::star::accessibility::XAccessibleSelection;
+
+ /** This is the interface for listeners */
+ interface ::com::sun::star::accessibility::XAccessibleEventBroadcaster;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/sheet/AccessibleSpreadsheetPageView.idl b/offapi/com/sun/star/sheet/AccessibleSpreadsheetPageView.idl
new file mode 100644
index 000000000000..bc676463c47b
--- /dev/null
+++ b/offapi/com/sun/star/sheet/AccessibleSpreadsheetPageView.idl
@@ -0,0 +1,183 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_sheet_AccessibleSpreadsheetPageView_idl__
+#define __com_sun_star_sheet_AccessibleSpreadsheetPageView_idl__
+
+#ifndef __com_sun_star_accessibility_XAccessibleContext_idl__
+#include <com/sun/star/accessibility/XAccessibleContext.idl>
+#endif
+
+#ifndef __com_sun_star_accessibility_XAccessibleComponent_idl__
+#include <com/sun/star/accessibility/XAccessibleComponent.idl>
+#endif
+
+#ifndef __com_sun_star_accessibility_XAccessibleEventBroadcaster_idl__
+#include <com/sun/star/accessibility/XAccessibleEventBroadcaster.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** The accessible view of a spreadsheet page preview
+
+ @since OOo 1.1.2
+
+ */
+published service AccessibleSpreadsheetPageView
+{
+ /** This interface gives access to any object that is at least partially
+ visible on the screen in the page preview.
+
+ <ul>
+ <li>The parent returned by
+ <method scope="::com::sun::star::accessibility"
+ >XAccessibleContext::getAccessibleParent</method>
+ is the window wich contains the view of these page preview.</li>
+ <li>The children returned by
+ <method scope="::com::sun::star::accessibility"
+ >XAccessibleContext::getAccessibleChild</method> all
+ support the interface XAccessible. Calling
+ <method scope="::com::sun::star::accessibility"
+ >XAccessibleContext::getAccessibleContext</method> for these children returns
+ an object that supports one of the following services.</li>
+ <ul>
+ <li><type scope="::com::sun::star::sheet"
+ >AccessiblePageHeaderFooterAreasView</type>: A child where calling
+ <method scope="::com::sun::star::accessibility"
+ >XAccessibleContext::getAccessibleChild</method>
+ an object that supports this service is returned for
+ every header and footer that is at least partially visible.</li>
+ <li><type scope="::com::sun::star::table">AccessibleTableView</type>:
+ A child where calling
+ <method scope="::com::sun::star::accessibility"
+ >XAccessibleChild::getAccessibleChild</method>
+ an object that supports this service is returned for
+ every table fragment that is contained in the document body
+ and is at least partially visible. A table fragment is the
+ part of a table that is displayed on a certain page.</li>
+ <li><type scope="::com::sun::star::drawing">AccessibleShape</type>:
+ A child where calling
+ <method scope="::com::sun::star::accessibility"
+ >XAccessibleContext::getAccessibleChild</method>
+ an object that supports this service is returned
+ for every shape that is at least partially visible. These
+ objects are children of the
+ <type>AccessibleSpreadsheetPageView</type> regardless
+ whether they are bound to a table or a cell.</li>
+ <li><type scope="::com::sun::star::text">AccessibleParagraphView</type>:
+ A child where calling
+ <method scope="::com::sun::star::accessibility"
+ >XAccessibleContext::getAccessibleChild</method>
+ an object that supports this service is returned for
+ every note (its paragraphs) and its location (which is
+ represented as a paragraph with the cell name as content).</li>
+ </ul>
+ <p>The following rules apply to the children order. General it
+ represents the paint order. The object in the background came
+ first and than all over lying objects. The last painted object
+ is also the last child.</p>
+ <ul>
+ <li>The logical order of paragraph and table fragments is never
+ changed.</li>
+ <li>Headers appear immediately before the first table fragment
+ of the header's page.</li>
+ <li>Footers appear immediately after the last table fragment.</li>
+ <li>Shapes appear before any other children if they are painted
+ in the background. Their order reflects the z order.</li>
+ <li>Shapes appear behind any other children except controls if
+ they are painted in the foreground. Their order reflects the
+ z order.</li>
+ <li>Controls appear behind any other objects. Their order
+ reflects the z order.</li>
+ </ul>
+ <li>The description is ???.</li>
+ <li>The name is Spreadsheet Document Page Preview.</li>
+ <li>The role is <const scope="::com::sun::star::accessibility"
+ >AccessibleRole::DOCUMENT</const></li>
+ <li>There are no relations.</li>
+ <li>The following states are supported:
+ <ul>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::DEFUNC</const> is always false until
+ the preview is closed.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::EDITABLE</const> is always false,
+ because the document is not editable in the page preview.
+ So it is left out of the list.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::ENABLED</const> is always true.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::MULTILINE</const> makes no sense on a
+ document and so it is left out of the list.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::MULTI_SELECTABLE</const> is always
+ false, because in a page preview a selection is not
+ possible. So it is left out of the list.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::OPAQUE</const> is always true.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::RESIZEABLE</const> is always false,
+ because you can resize the window of the page preview, but
+ not the page preview itself. So it is left out of the
+ list.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::SELECTABLE</const> is always false,
+ because in the page preview is no selection possible. So
+ it is left out of the list.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::SELECTED</const> is always false,
+ because in the page preview is no selection possible. So
+ it is left out of the list.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::SHOWING</const>Is true if the
+ Bounding Box lies in the Bounding Box of the parent.
+ Otherwise it is false.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::VISIBLE</const>Is always true.</li>
+ </ul>
+ </li>
+ </ul>
+
+ */
+ interface ::com::sun::star::accessibility::XAccessibleContext;
+
+ /** This interface gives access to the visibility of the document.
+ */
+ interface ::com::sun::star::accessibility::XAccessibleComponent;
+
+ /** This is the interface for listeners */
+ interface ::com::sun::star::accessibility::XAccessibleEventBroadcaster;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/sheet/ActivationEvent.idl b/offapi/com/sun/star/sheet/ActivationEvent.idl
new file mode 100644
index 000000000000..481b4cca723a
--- /dev/null
+++ b/offapi/com/sun/star/sheet/ActivationEvent.idl
@@ -0,0 +1,64 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_sheet_ActivationEvent_idl__
+#define __com_sun_star_sheet_ActivationEvent_idl__
+
+#ifndef __com_sun_star_lang_EventObject_idl__
+#include <com/sun/star/lang/EventObject.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XSpreadsheet_idl__
+#include <com/sun/star/sheet/XSpreadsheet.idl>
+#endif
+
+//=============================================================================
+
+ module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** describes a change of the active sheet. The new active sheet is given
+ with this event.
+
+ @since OOo 2.0.0
+
+ */
+published struct ActivationEvent: com::sun::star::lang::EventObject
+{
+ //-------------------------------------------------------------------------
+
+ /** specifies the new active Spreadsheet.
+ */
+ com::sun::star::sheet::XSpreadsheet ActiveSheet;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/sheet/AddIn.idl b/offapi/com/sun/star/sheet/AddIn.idl
new file mode 100644
index 000000000000..8f76f268416e
--- /dev/null
+++ b/offapi/com/sun/star/sheet/AddIn.idl
@@ -0,0 +1,160 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_AddIn_idl__
+#define __com_sun_star_sheet_AddIn_idl__
+
+#ifndef __com_sun_star_lang_XServiceName_idl__
+#include <com/sun/star/lang/XServiceName.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XAddIn_idl__
+#include <com/sun/star/sheet/XAddIn.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XCompatibilityNames_idl__
+#include <com/sun/star/sheet/XCompatibilityNames.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** is the base for AddIn services that supply functions which can be called
+ by other components.
+
+ <p>Any AddIn implementation must implement a service describing its
+ specific set of functions.
+ That service must contain the <type>AddIn</type> service, and the
+ functions that are implemented, in one or more interfaces.
+ The <type scope="com::sun::star::lang">XServiceName</type> interface
+ must describe that service, and the <type>XAddIn</type> interface
+ must describe the individual functions.</p>
+
+ <p>Each AddIn function can take parameters of the following types:</p>
+
+ <dl>
+ <dt><atom>long</atom></dt>
+ <dd>for integer values.</dd>
+
+ <dt><atom>double</atom></dt>
+ <dd>for floating point values.</dd>
+
+ <dt><atom>string</atom></dt>
+ <dd>for text strings.</dd>
+
+ <dt><atom>long[][]</atom></dt>
+ <dd>for (two-dimensional) arrays of integer values.</dd>
+
+ <dt><atom>double[][]</atom></dt>
+ <dd>for (two-dimensional) arrays of floating point values.</dd>
+
+ <dt><atom>string[][]</atom></dt>
+ <dd>for (two-dimensional) arrays of text strings.</dd>
+
+ <dt><atom>any[][]</atom></dt>
+ <dd>for (two-dimensional) arrays of mixed contents. Each <atom>any</atom>
+ will contain a <atom>double</atom> or a <atom>string</atom>, depending on
+ the data.</dd>
+
+ <dt><atom>any</atom></dt>
+ <dd>Depending on the data, a <atom>double</atom>, a <atom>string</atom>,
+ or an <atom>any[][]</atom> will be passed. If no argument is specified in
+ the function call, <void/> will be passed. This allows for optional
+ parameters.</dd>
+
+ <dt><type scope="com::sun::star::table">XCellRange</type></dt>
+ <dd>for a <type scope="com::sun::star::table">XCellRange</type> interface
+ to the source data.</dd>
+
+ <dt><type scope="com::sun::star::beans">XPropertySet</type></dt>
+ <dd>for a <type scope="com::sun::star::beans">XPropertySet</type>
+ interface to the <type>SpreadsheetDocument</type> making the function
+ call. Only one parameter of this type is allowed in each function. It
+ can be used to query document settings like
+ <member>SpreadsheetDocumentSettings::NullDate</member>.</dd>
+
+ <dt><atom>any[]</atom></dt>
+ <dd>for varying parameters. Only the last parameter of a function may
+ have this type. It will be filled with the remaining arguments of the
+ function call that were not used for the previous parameters. Each
+ element of the sequence will be filled as in the case of <atom>any</atom>
+ above.</dd>
+ </dl>
+
+ <p>Each AddIn function must have one of the following return types:</p>
+
+ <ul>
+ <li><atom>long</atom></li>
+ <li><atom>double</atom></li>
+ <li><atom>string</atom></li>
+ <li><atom>long[][]</atom></li>
+ <li><atom>double[][]</atom></li>
+ <li><atom>string[][]</atom></li>
+ <li><atom>any[][]</atom></li>
+ <li><type>XVolatileResult</type></li>
+ <li><atom>any</atom></li>
+ </ul>
+
+ <p>The sequences must contain arrays as described above for the
+ parameter types.
+ An <type>XVolatileResult</type> return value must contain an object
+ implementing the <type>VolatileResult</type> service, that contains
+ a volatile result. Subsequent calls with the same parameters must
+ return the same object.
+ An <atom>any</atom> return value can contain any of the other types.</p>
+ */
+published service AddIn
+{
+ // ------------------------------------------------------------------------
+
+ /** contains a method that returns the service name of the add-in.
+ */
+ interface com::sun::star::lang::XServiceName;
+
+ // ------------------------------------------------------------------------
+
+ /** provides access to function descriptions and localized names
+ and descriptions.
+ */
+ interface com::sun::star::sheet::XAddIn;
+
+ // ------------------------------------------------------------------------
+
+ /** provides access to compatibility names for the functions.
+ */
+ [optional] interface com::sun::star::sheet::XCompatibilityNames;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/AddressConvention.idl b/offapi/com/sun/star/sheet/AddressConvention.idl
new file mode 100644
index 000000000000..6eae6190477d
--- /dev/null
+++ b/offapi/com/sun/star/sheet/AddressConvention.idl
@@ -0,0 +1,70 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_AddressConvention_idl__
+#define __com_sun_star_sheet_AddressConvention_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** These constants specify which address convention to use in the formula
+ parser. Each variation specifies a different cell and cell range address
+ syntax.
+
+ @see com::sun::star::sheet::FormulaParser
+ */
+constants AddressConvention
+{
+
+ const short UNSPECIFIED = -1;
+
+
+ const short OOO = 0;
+
+
+ const short XL_A1 = 1;
+
+
+ const short XL_R1C1 = 2;
+
+
+ const short XL_OOX = 3;
+
+
+ const short LOTUS_A1 = 4;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+
+
+#endif
diff --git a/offapi/com/sun/star/sheet/Border.idl b/offapi/com/sun/star/sheet/Border.idl
new file mode 100644
index 000000000000..b93549545f80
--- /dev/null
+++ b/offapi/com/sun/star/sheet/Border.idl
@@ -0,0 +1,72 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_Border_idl__
+#define __com_sun_star_sheet_Border_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** is used to select one of the four borders of a cell range.
+ */
+published enum Border
+{
+ //-------------------------------------------------------------------------
+
+ /** selects the top border.
+ */
+ TOP,
+
+ //-------------------------------------------------------------------------
+
+ /** selects the bottom border.
+ */
+ BOTTOM,
+
+ //-------------------------------------------------------------------------
+
+ /** selects the right border.
+ */
+ RIGHT,
+
+ //-------------------------------------------------------------------------
+
+ /** selects the left border.
+ */
+ LEFT
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/CellAnnotation.idl b/offapi/com/sun/star/sheet/CellAnnotation.idl
new file mode 100644
index 000000000000..16c2f3620639
--- /dev/null
+++ b/offapi/com/sun/star/sheet/CellAnnotation.idl
@@ -0,0 +1,91 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_CellAnnotation_idl__
+#define __com_sun_star_sheet_CellAnnotation_idl__
+
+#ifndef __com_sun_star_sheet_XSheetAnnotation_idl__
+#include <com/sun/star/sheet/XSheetAnnotation.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XSheetAnnotationShapeSupplier_idl__
+#include <com/sun/star/sheet/XSheetAnnotationShapeSupplier.idl>
+#endif
+
+#ifndef __com_sun_star_container_XChild_idl__
+#include <com/sun/star/container/XChild.idl>
+#endif
+
+#ifndef __com_sun_star_text_XSimpleText_idl__
+#include <com/sun/star/text/XSimpleText.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a cell annotation object attached to a spreadsheet cell.
+
+ @see com::sun::star::sheet::SheetCell
+ */
+published service CellAnnotation
+{
+ //-------------------------------------------------------------------------
+
+ /** provides methods to query data of the annotation
+ and to show and hide it.
+ */
+ interface com::sun::star::sheet::XSheetAnnotation;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to the parent of this object.
+
+ <p>The parent of a cell annotation is the cell that contains it.</p>
+ */
+ interface com::sun::star::container::XChild;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to the text contents of the annotation.
+ */
+ interface com::sun::star::text::XSimpleText;
+
+ //-------------------------------------------------------------------------
+
+ [optional] interface com::sun::star::sheet::XSheetAnnotationShapeSupplier;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/CellAnnotationShape.idl b/offapi/com/sun/star/sheet/CellAnnotationShape.idl
new file mode 100644
index 000000000000..1d5cc467f299
--- /dev/null
+++ b/offapi/com/sun/star/sheet/CellAnnotationShape.idl
@@ -0,0 +1,57 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_CellAnnotationShape_idl__
+#define __com_sun_star_sheet_CellAnnotationShape_idl__
+
+#ifndef __com_sun_star_drawing_CaptionShape_idl__
+#include <com/sun/star/drawing/CaptionShape.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents the shape of a cell annotation object attached to a spreadsheet cell.
+
+ @see com::sun::star::sheet::CellAnnotation
+ */
+published service CellAnnotationShape
+{
+ /** provides all functionality of a CaptionShape.
+ */
+ service com::sun::star::drawing::CaptionShape;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/CellAnnotations.idl b/offapi/com/sun/star/sheet/CellAnnotations.idl
new file mode 100644
index 000000000000..5831655d4634
--- /dev/null
+++ b/offapi/com/sun/star/sheet/CellAnnotations.idl
@@ -0,0 +1,75 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_CellAnnotations_idl__
+#define __com_sun_star_sheet_CellAnnotations_idl__
+
+#ifndef __com_sun_star_sheet_XSheetAnnotations_idl__
+#include <com/sun/star/sheet/XSheetAnnotations.idl>
+#endif
+
+#ifndef __com_sun_star_container_XEnumerationAccess_idl__
+#include <com/sun/star/container/XEnumerationAccess.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a collection of cell annotations.
+
+ @see com::sun::star::sheet::Spreadsheet
+ */
+published service CellAnnotations
+{
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access cell annotations via index and to
+ insert and remove annotations.
+
+ @see com::sun::star::sheet::CellAnnotation
+ */
+ interface com::sun::star::sheet::XSheetAnnotations;
+
+ //-------------------------------------------------------------------------
+
+ /** creates an enumeration of all cell annotations.
+
+ @see com::sun::star::sheet::CellAnnotationsEnumeration
+ */
+ interface com::sun::star::container::XEnumerationAccess;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/CellAnnotationsEnumeration.idl b/offapi/com/sun/star/sheet/CellAnnotationsEnumeration.idl
new file mode 100644
index 000000000000..1e70eb30c5c3
--- /dev/null
+++ b/offapi/com/sun/star/sheet/CellAnnotationsEnumeration.idl
@@ -0,0 +1,62 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_CellAnnotationsEnumeration_idl__
+#define __com_sun_star_sheet_CellAnnotationsEnumeration_idl__
+
+#ifndef __com_sun_star_container_XEnumeration_idl__
+#include <com/sun/star/container/XEnumeration.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents an enumeration of cell annotations in a spreadsheet document.
+
+ @see com::sun::star::sheet::CellAnnotations
+ */
+published service CellAnnotationsEnumeration
+{
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access the cell annotations in the enumeration.
+
+ @see com::sun::star::sheet::CellAnnotation
+ */
+ interface com::sun::star::container::XEnumeration;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/CellAreaLink.idl b/offapi/com/sun/star/sheet/CellAreaLink.idl
new file mode 100644
index 000000000000..75c0a4d810b1
--- /dev/null
+++ b/offapi/com/sun/star/sheet/CellAreaLink.idl
@@ -0,0 +1,121 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_CellAreaLink_idl__
+#define __com_sun_star_sheet_CellAreaLink_idl__
+
+#ifndef __com_sun_star_sheet_XAreaLink_idl__
+#include <com/sun/star/sheet/XAreaLink.idl>
+#endif
+
+#ifndef __com_sun_star_util_XRefreshable_idl__
+#include <com/sun/star/util/XRefreshable.idl>
+#endif
+
+#ifndef __com_sun_star_beans_XPropertySet_idl__
+#include <com/sun/star/beans/XPropertySet.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a linked cell range.
+
+ <p>A linked cell range is a range which is linked to an equal-sized
+ range in an external document. The contents of the external range is
+ copied into the range of this document.</p>
+
+ @see com::sun::star::sheet::CellAreaLinks
+ */
+published service CellAreaLink
+{
+ //-------------------------------------------------------------------------
+
+ /** provides methods to change the settings of the linked cell range.
+ */
+ interface com::sun::star::sheet::XAreaLink;
+
+ //-------------------------------------------------------------------------
+
+ /** provides methods to reload the external data.
+ */
+ interface com::sun::star::util::XRefreshable;
+
+ //-------------------------------------------------------------------------
+
+//!published service PropertySet
+ /** provides access to the properties.
+ */
+ interface com::sun::star::beans::XPropertySet;
+
+ //========================================================================
+
+ /** specifies the URL of the source document.
+ */
+ [property] string Url;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the name of the filter used to load the source document.
+ */
+ [property] string Filter;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the filter options needed to load the source document.
+ */
+ [property] string FilterOptions;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the delay time between two refresh actions in seconds.
+
+ @deprecated
+
+ */
+ [property] long RefreshDelay;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the time between two refresh actions in seconds.
+
+ @since OOo 2.0.0
+ */
+ [optional, property] long RefreshPeriod;
+
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/CellAreaLinks.idl b/offapi/com/sun/star/sheet/CellAreaLinks.idl
new file mode 100644
index 000000000000..62b601752c10
--- /dev/null
+++ b/offapi/com/sun/star/sheet/CellAreaLinks.idl
@@ -0,0 +1,83 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_CellAreaLinks_idl__
+#define __com_sun_star_sheet_CellAreaLinks_idl__
+
+#ifndef __com_sun_star_sheet_XAreaLinks_idl__
+#include <com/sun/star/sheet/XAreaLinks.idl>
+#endif
+#ifndef __com_sun_star_container_XEnumerationAccess_idl__
+#include <com/sun/star/container/XEnumerationAccess.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a collection of area links.
+
+ @see com::sun::star::sheet::CellAreaLink
+ @see com::sun::star::sheet::SpreadsheetDocument
+ */
+published service CellAreaLinks
+{
+ //-------------------------------------------------------------------------
+
+ /** provides access via index to a collection of area links and inserting
+ and removing area links.
+ */
+ interface com::sun::star::sheet::XAreaLinks;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to the area links via index.
+
+ @see com::sun::star::sheet::CellAreaLink
+
+ */
+ interface com::sun::star::container::XIndexAccess;
+
+ //-------------------------------------------------------------------------
+
+ /** creates an enumeration of all area links.
+
+ @see com::sun::star::sheet::CellAreaLinksEnumeration
+
+ */
+ interface com::sun::star::container::XEnumerationAccess;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/CellAreaLinksEnumeration.idl b/offapi/com/sun/star/sheet/CellAreaLinksEnumeration.idl
new file mode 100644
index 000000000000..6fda9e4f824d
--- /dev/null
+++ b/offapi/com/sun/star/sheet/CellAreaLinksEnumeration.idl
@@ -0,0 +1,62 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_CellAreaLinksEnumeration_idl__
+#define __com_sun_star_sheet_CellAreaLinksEnumeration_idl__
+
+#ifndef __com_sun_star_container_XEnumeration_idl__
+#include <com/sun/star/container/XEnumeration.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents an enumeration of cell area links.
+
+ @see com::sun::star::sheet::CellAreaLink
+ */
+published service CellAreaLinksEnumeration
+{
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access the cell area links in the enumeration.
+
+ @see com::sun::star::sheet::CellAreaLink
+ */
+ interface com::sun::star::container::XEnumeration;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/CellDeleteMode.idl b/offapi/com/sun/star/sheet/CellDeleteMode.idl
new file mode 100644
index 000000000000..1570cb547762
--- /dev/null
+++ b/offapi/com/sun/star/sheet/CellDeleteMode.idl
@@ -0,0 +1,78 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_CellDeleteMode_idl__
+#define __com_sun_star_sheet_CellDeleteMode_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** is used to specify how remaining cells are moved when cells are deleted.
+ */
+published enum CellDeleteMode
+{
+ //-------------------------------------------------------------------------
+
+ /** no cells are moved.
+ */
+ NONE,
+
+ //-------------------------------------------------------------------------
+
+ /** the cells below the deleted cells are moved up.
+ */
+ UP,
+
+ //-------------------------------------------------------------------------
+
+ /** the cells to the right of the deleted cells are moved left.
+ */
+ LEFT,
+
+ //-------------------------------------------------------------------------
+
+ /** entire rows below the deleted cells are moved up.
+ */
+ ROWS,
+
+ //-------------------------------------------------------------------------
+
+ /** entire columns to the right of the deleted cells are moved left.
+ */
+ COLUMNS
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/CellFlags.idl b/offapi/com/sun/star/sheet/CellFlags.idl
new file mode 100644
index 000000000000..1c579412797f
--- /dev/null
+++ b/offapi/com/sun/star/sheet/CellFlags.idl
@@ -0,0 +1,114 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_CellFlags_idl__
+#define __com_sun_star_sheet_CellFlags_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** These constants select different types of cell contents.
+
+ <P>The values can be combined. They are used to insert, copy, or
+ delete contents.</P>
+ */
+published constants CellFlags
+{
+ //-------------------------------------------------------------------------
+
+ /** selects constant numeric values that are not formatted
+ as dates or times.
+ */
+ const long VALUE = 1;
+
+ //-------------------------------------------------------------------------
+
+ /** selects constant numeric values that have a date or time
+ number format.
+ */
+ const long DATETIME = 2;
+
+ //-------------------------------------------------------------------------
+
+ /** selects constant strings.
+ */
+ const long STRING = 4;
+
+ //-------------------------------------------------------------------------
+
+ /** selects cell annotations.
+ */
+ const long ANNOTATION = 8;
+
+ //-------------------------------------------------------------------------
+
+ /** selects formulas.
+ */
+ const long FORMULA = 16;
+
+ //-------------------------------------------------------------------------
+
+ /** selects all explicit formatting, but not the formatting which is
+ applied implicitly through style sheets.
+ */
+ const long HARDATTR = 32;
+
+ //-------------------------------------------------------------------------
+
+ /** selects cell styles.
+ */
+ const long STYLES = 64;
+
+ //-------------------------------------------------------------------------
+
+ /** selects drawing objects.
+ */
+ const long OBJECTS = 128;
+
+ //-------------------------------------------------------------------------
+
+ /** selects formatting within parts of the cell contents.
+ */
+ const long EDITATTR = 256;
+
+ //-------------------------------------------------------------------------
+
+ /** selects cells with formatting within the cells or cells with more than
+ one paragraph within the cells.
+ */
+ const long FORMATTED = 512;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/CellFormatRanges.idl b/offapi/com/sun/star/sheet/CellFormatRanges.idl
new file mode 100644
index 000000000000..c3002e1c80f6
--- /dev/null
+++ b/offapi/com/sun/star/sheet/CellFormatRanges.idl
@@ -0,0 +1,79 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_CellFormatRanges_idl__
+#define __com_sun_star_sheet_CellFormatRanges_idl__
+
+#ifndef __com_sun_star_container_XIndexAccess_idl__
+#include <com/sun/star/container/XIndexAccess.idl>
+#endif
+
+#ifndef __com_sun_star_container_XEnumerationAccess_idl__
+#include <com/sun/star/container/XEnumerationAccess.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a collection of equal-formatted cell ranges.
+
+ <p>All cells inside a cell range of this collection have the same
+ formatting attributes.</p>
+
+ @see com::sun::star::sheet::SheetCellRange
+ @see com::sun::star::sheet::SheetCellRanges
+ @see com::sun::star::sheet::UniqueCellFormatRanges
+ */
+published service CellFormatRanges
+{
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access the contained cell ranges by index.
+
+ @see com::sun::star::sheet::SheetCellRange
+ */
+ interface com::sun::star::container::XIndexAccess;
+
+ //-------------------------------------------------------------------------
+
+ /** creates an enumeration of all cell ranges.
+
+ @see com::sun::star::sheet::CellFormatRangesEnumeration
+ */
+ interface com::sun::star::container::XEnumerationAccess;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/CellFormatRangesEnumeration.idl b/offapi/com/sun/star/sheet/CellFormatRangesEnumeration.idl
new file mode 100644
index 000000000000..ef945a036225
--- /dev/null
+++ b/offapi/com/sun/star/sheet/CellFormatRangesEnumeration.idl
@@ -0,0 +1,62 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_CellFormatRangesEnumeration_idl__
+#define __com_sun_star_sheet_CellFormatRangesEnumeration_idl__
+
+#ifndef __com_sun_star_container_XEnumeration_idl__
+#include <com/sun/star/container/XEnumeration.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents an enumeration of equal-formatted cell ranges.
+
+ @see com::sun::star::sheet::CellFormatRanges
+ */
+published service CellFormatRangesEnumeration
+{
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access the cell ranges in the enumeration.
+
+ @see com::sun::star::sheet::SheetCellRange
+ */
+ interface com::sun::star::container::XEnumeration;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/CellInsertMode.idl b/offapi/com/sun/star/sheet/CellInsertMode.idl
new file mode 100644
index 000000000000..48e81a78d7f2
--- /dev/null
+++ b/offapi/com/sun/star/sheet/CellInsertMode.idl
@@ -0,0 +1,78 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_CellInsertMode_idl__
+#define __com_sun_star_sheet_CellInsertMode_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** is used to specify how cells are moved when new cells are inserted.
+ */
+published enum CellInsertMode
+{
+ //-------------------------------------------------------------------------
+
+ /** no cells are moved.
+ */
+ NONE,
+
+ //-------------------------------------------------------------------------
+
+ /** the cells below the inserted cells are moved down.
+ */
+ DOWN,
+
+ //-------------------------------------------------------------------------
+
+ /** the cells to the right of the inserted cells are moved right.
+ */
+ RIGHT,
+
+ //-------------------------------------------------------------------------
+
+ /** entire rows below the inserted cells are moved down.
+ */
+ ROWS,
+
+ //-------------------------------------------------------------------------
+
+ /** entire columns to the right of the inserted cells are moved right.
+ */
+ COLUMNS
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/Cells.idl b/offapi/com/sun/star/sheet/Cells.idl
new file mode 100644
index 000000000000..125c42f516c2
--- /dev/null
+++ b/offapi/com/sun/star/sheet/Cells.idl
@@ -0,0 +1,62 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_Cells_idl__
+#define __com_sun_star_sheet_Cells_idl__
+
+#ifndef __com_sun_star_container_XEnumerationAccess_idl__
+#include <com/sun/star/container/XEnumerationAccess.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a collection of used cells in a spreadsheet document.
+
+ @see com::sun::star::sheet::SheetCell
+ */
+published service Cells
+{
+ //-------------------------------------------------------------------------
+
+ /** creates an enumeration of all used cells.
+
+ @see com::sun::star::sheet::CellsEnumeration
+ */
+ interface com::sun::star::container::XEnumerationAccess;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/CellsEnumeration.idl b/offapi/com/sun/star/sheet/CellsEnumeration.idl
new file mode 100644
index 000000000000..53e7a59a86e1
--- /dev/null
+++ b/offapi/com/sun/star/sheet/CellsEnumeration.idl
@@ -0,0 +1,62 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_CellsEnumeration_idl__
+#define __com_sun_star_sheet_CellsEnumeration_idl__
+
+#ifndef __com_sun_star_container_XEnumeration_idl__
+#include <com/sun/star/container/XEnumeration.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents an enumeration of spreadsheet cells.
+
+ @see com::sun::star::sheet::Cells
+ */
+published service CellsEnumeration
+{
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access the cells in the enumeration.
+
+ @see com::sun::star::sheet::SheetCell
+ */
+ interface com::sun::star::container::XEnumeration;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/ComplexReference.idl b/offapi/com/sun/star/sheet/ComplexReference.idl
new file mode 100644
index 000000000000..12a8fd5db8e1
--- /dev/null
+++ b/offapi/com/sun/star/sheet/ComplexReference.idl
@@ -0,0 +1,63 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_ComplexReference_idl__
+#define __com_sun_star_sheet_ComplexReference_idl__
+
+#ifndef __com_sun_star_sheet_SingleReference_idl__
+#include <com/sun/star/sheet/SingleReference.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** contains a reference to a cell range.
+ */
+struct ComplexReference
+{
+ //-------------------------------------------------------------------------
+
+ /** is the first reference.
+ */
+ SingleReference Reference1;
+
+ //-------------------------------------------------------------------------
+
+ /** is the second reference.
+ */
+ SingleReference Reference2;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/ConditionOperator.idl b/offapi/com/sun/star/sheet/ConditionOperator.idl
new file mode 100644
index 000000000000..5db568c7f660
--- /dev/null
+++ b/offapi/com/sun/star/sheet/ConditionOperator.idl
@@ -0,0 +1,108 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_ConditionOperator_idl__
+#define __com_sun_star_sheet_ConditionOperator_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** is used to specify the type of <type>XSheetCondition</type>.
+ */
+published enum ConditionOperator
+{
+ //-------------------------------------------------------------------------
+
+ /** no condition is specified.
+ */
+ NONE,
+
+ //-------------------------------------------------------------------------
+
+ /** value has to be equal to the specified value.
+ */
+ EQUAL,
+
+ //-------------------------------------------------------------------------
+
+ /** the value must not be equal to the specified value.
+ */
+ NOT_EQUAL,
+
+ //-------------------------------------------------------------------------
+
+ /** the value has to be greater than the specified value.
+ */
+ GREATER,
+
+ //-------------------------------------------------------------------------
+
+ /** the value has to be greater than or equal to the specified value.
+ */
+ GREATER_EQUAL,
+
+ //-------------------------------------------------------------------------
+
+ /** the value has to be less than the specified value.
+ */
+ LESS,
+
+ //-------------------------------------------------------------------------
+
+ /** the value has to be less than or equal to the specified value.
+ */
+ LESS_EQUAL,
+
+ //-------------------------------------------------------------------------
+
+ /** the value has to be between the two specified values.
+ */
+ BETWEEN,
+
+ //-------------------------------------------------------------------------
+
+ /** the value has to be outside of the two specified values.
+ */
+ NOT_BETWEEN,
+
+ //-------------------------------------------------------------------------
+
+ /** the specified formula has to give a non-zero result.
+ */
+ FORMULA
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/ConsolidationDescriptor.idl b/offapi/com/sun/star/sheet/ConsolidationDescriptor.idl
new file mode 100644
index 000000000000..7c070b721ee4
--- /dev/null
+++ b/offapi/com/sun/star/sheet/ConsolidationDescriptor.idl
@@ -0,0 +1,61 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_ConsolidationDescriptor_idl__
+#define __com_sun_star_sheet_ConsolidationDescriptor_idl__
+
+#ifndef __com_sun_star_sheet_XConsolidationDescriptor_idl__
+#include <com/sun/star/sheet/XConsolidationDescriptor.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** contains all settings of a data consolidation in a spreadsheet
+ document.
+
+ @see com::sun::star::sheet::XConsolidatable
+ */
+published service ConsolidationDescriptor
+{
+ //-------------------------------------------------------------------------
+
+/** provides methods to access the settings of the descriptor.
+ */
+ interface com::sun::star::sheet::XConsolidationDescriptor;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DDEItemInfo.idl b/offapi/com/sun/star/sheet/DDEItemInfo.idl
new file mode 100644
index 000000000000..bf884ea7cbfb
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DDEItemInfo.idl
@@ -0,0 +1,65 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_sheet_DDEItemInfo_idl__
+#define __com_sun_star_sheet_DDEItemInfo_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+/** describes an item of a DDE connection.
+
+ A DDE connection consists of the DDE service name, the DDE topic and a
+ list of DDE items which may contain cached result sets.
+
+ @since OOo3.1
+ */
+struct DDEItemInfo
+{
+ //-------------------------------------------------------------------------
+
+ /** The name of the DDE item.
+ */
+
+ string Item;
+
+ //-------------------------------------------------------------------------
+
+ /** The results of the item cached from the last update of the DDE link if
+ available. This sequence may be empty.
+ */
+
+ sequence< sequence< any > > Results;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/sheet/DDELink.idl b/offapi/com/sun/star/sheet/DDELink.idl
new file mode 100644
index 000000000000..0ef60285ed3c
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DDELink.idl
@@ -0,0 +1,94 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DDELink_idl__
+#define __com_sun_star_sheet_DDELink_idl__
+
+#ifndef __com_sun_star_container_XNamed_idl__
+#include <com/sun/star/container/XNamed.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XDDELink_idl__
+#include <com/sun/star/sheet/XDDELink.idl>
+#endif
+
+#ifndef __com_sun_star_util_XRefreshable_idl__
+#include <com/sun/star/util/XRefreshable.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XDDELinkResults_idl__
+#include <com/sun/star/sheet/XDDELinkResults.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a DDE link.
+
+ <p>A DDE link controls the results of a DDE spreadsheet formula.</p>
+ */
+published service DDELink
+{
+ //-------------------------------------------------------------------------
+
+ /** provides access to the name of the DDE link.
+
+ <p>A DDE link has the form <const>Application|Topic!Item</const>.</p>
+ */
+ interface com::sun::star::container::XNamed;
+
+ //-------------------------------------------------------------------------
+
+ /** provides methods to change the settings of the DDE link.
+ */
+ interface com::sun::star::sheet::XDDELink;
+
+ //-------------------------------------------------------------------------
+
+ /** provides methods to reload the external linked data.
+ */
+ interface com::sun::star::util::XRefreshable;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to the DDE link results.
+
+ @since OOo 3.0
+ */
+ [optional] interface com::sun::star::sheet::XDDELinkResults;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DDELinkInfo.idl b/offapi/com/sun/star/sheet/DDELinkInfo.idl
new file mode 100644
index 000000000000..b9df62f3cd70
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DDELinkInfo.idl
@@ -0,0 +1,80 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_sheet_DDELinkInfo_idl__
+#define __com_sun_star_sheet_DDELinkInfo_idl__
+
+#ifndef __com_sun_star_sheet_DDEItemInfo_idl__
+#include <com/sun/star/sheet/DDEItemInfo.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+/** describes all items of a DDE connection used in formulas.
+
+ <p>A DDE connection consists of the DDE service name, the DDE topic and a
+ list of DDE items which may contain results cached from the last update.</p>
+
+ <p>The formula that would need this information for example would contain
+ <code>=[1]!'R1C1'</code> or <code>=[2]!'Sheet1.A1'</code> where
+ <em>[1]</em> is an external link with DDE service name "excel" and the
+ topic "X:\PATH\[FILE.XLSX]Sheet1", and <em>[2]</em> contains service
+ "soffice" and topic "file:///X:/PATH/FILE.ODS". The service name is stored
+ in <member>DDELinkInfo::Service</member>, the topic is stored in
+ <member>DDELinkInfo::Topic</member>. Note that if the DDE item contains
+ single quotes they are escaped by doubling them, as usual, for example
+ <code>=[2]!'''Sheet name''.A1'</code> in a "soffice" service.</p>
+
+ @since OOo3.1
+ */
+struct DDELinkInfo
+{
+ //-------------------------------------------------------------------------
+ /** The DDE service name.
+ */
+ string Service;
+
+ //-------------------------------------------------------------------------
+ /** The DDE topic.
+ */
+ string Topic;
+
+ //-------------------------------------------------------------------------
+ /** A list of DDE items. Each item may contain its results from the last
+ update.
+ */
+ sequence< DDEItemInfo > Items;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/sheet/DDELinkMode.idl b/offapi/com/sun/star/sheet/DDELinkMode.idl
new file mode 100644
index 000000000000..472b9626a64e
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DDELinkMode.idl
@@ -0,0 +1,70 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DDELinkMode_idl__
+#define __com_sun_star_sheet_DDELinkMode_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** used to specify how the DDE server application converts its data into
+ numbers.
+
+ @see com::sun::star::sheet::XDDELinks
+
+ @since OOo 3.0
+ */
+published enum DDELinkMode
+{
+ //-------------------------------------------------------------------------
+
+ /** numbers are converted into the default format.
+ */
+ DEFAULT,
+
+ //-------------------------------------------------------------------------
+
+ /** numbers are converted into the English default format.
+ */
+ ENGLISH,
+
+ //-------------------------------------------------------------------------
+
+ /** numbers are not converted, but treated as text.
+ */
+ TEXT
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/sheet/DDELinks.idl b/offapi/com/sun/star/sheet/DDELinks.idl
new file mode 100644
index 000000000000..8a8d8b093756
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DDELinks.idl
@@ -0,0 +1,98 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DDELinks_idl__
+#define __com_sun_star_sheet_DDELinks_idl__
+
+#ifndef __com_sun_star_container_XNameAccess_idl__
+#include <com/sun/star/container/XNameAccess.idl>
+#endif
+#ifndef __com_sun_star_container_XEnumerationAccess_idl__
+#include <com/sun/star/container/XEnumerationAccess.idl>
+#endif
+#ifndef __com_sun_star_container_XIndexAccess_idl__
+#include <com/sun/star/container/XIndexAccess.idl>
+#endif
+#ifndef __com_sun_star_sheet_XDDELinks_idl__
+#include <com/sun/star/sheet/XDDELinks.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a collection of DDE links.
+
+ @see com::sun::star::sheet::DDELink
+ @see com::sun::star::sheet::SpreadsheetDocument
+ */
+published service DDELinks
+{
+ //-------------------------------------------------------------------------
+
+ /** provides access to the DDE links via the DDE link string.
+
+ <p>A DDE link has the form <const>Application|Topic!Item</const>.</p>
+ */
+ interface com::sun::star::container::XNameAccess;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to the DDE links via index.
+
+ @see com::sun::star::sheet::DDELink
+
+ */
+ interface com::sun::star::container::XIndexAccess;
+
+ //-------------------------------------------------------------------------
+
+ /** creates an enumeration of all DDE links.
+
+ @see com::sun::star::sheet::DDELinksEnumeration
+
+ */
+ interface com::sun::star::container::XEnumerationAccess;
+
+ //-------------------------------------------------------------------------
+
+ /** provides a method to add a DDE link to a spreadsheet.
+
+ @since OOo 3.0
+ */
+ [optional] interface com::sun::star::sheet::XDDELinks;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DDELinksEnumeration.idl b/offapi/com/sun/star/sheet/DDELinksEnumeration.idl
new file mode 100644
index 000000000000..93a19a052c88
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DDELinksEnumeration.idl
@@ -0,0 +1,62 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DDELinksEnumeration_idl__
+#define __com_sun_star_sheet_DDELinksEnumeration_idl__
+
+#ifndef __com_sun_star_container_XEnumeration_idl__
+#include <com/sun/star/container/XEnumeration.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents an enumeration of DDE links.
+
+ @see com::sun::star::sheet::DDELink
+ */
+published service DDELinksEnumeration
+{
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access the DDE links in the enumeration.
+
+ @see com::sun::star::sheet::DDELink
+ */
+ interface com::sun::star::container::XEnumeration;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DataImportMode.idl b/offapi/com/sun/star/sheet/DataImportMode.idl
new file mode 100644
index 000000000000..a969960824a6
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataImportMode.idl
@@ -0,0 +1,72 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DataImportMode_idl__
+#define __com_sun_star_sheet_DataImportMode_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** used to specify which database contents are imported.
+ */
+published enum DataImportMode
+{
+ //-------------------------------------------------------------------------
+
+ /** nothing is imported.
+ */
+ NONE,
+
+ //-------------------------------------------------------------------------
+
+ /** a SQL query string is supplied.
+ */
+ SQL,
+
+ //-------------------------------------------------------------------------
+
+ /** the name of a database table is supplied.
+ */
+ TABLE,
+
+ //-------------------------------------------------------------------------
+
+ /** the name of a database query is supplied.
+ */
+ QUERY
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DataPilotDescriptor.idl b/offapi/com/sun/star/sheet/DataPilotDescriptor.idl
new file mode 100644
index 000000000000..992afdef5ed9
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataPilotDescriptor.idl
@@ -0,0 +1,151 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DataPilotTableDescriptor_idl__
+#define __com_sun_star_sheet_DataPilotTableDescriptor_idl__
+
+#ifndef __com_sun_star_sheet_XDataPilotDescriptor_idl__
+#include <com/sun/star/sheet/XDataPilotDescriptor.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XDataPilotDataLayoutFieldSupplier_idl__
+#include <com/sun/star/sheet/XDataPilotDataLayoutFieldSupplier.idl>
+#endif
+
+#ifndef __com_sun_star_beans_XPropertySet_idl__
+#include <com/sun/star/beans/XPropertySet.idl>
+#endif
+
+#ifndef __com_sun_star_beans_PropertyValue_idl__
+#include <com/sun/star/beans/PropertyValue.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents the description of the layout of a data pilot table.
+
+ @see com::sun::star::sheet::DataPilotTable
+*/
+published service DataPilotDescriptor
+{
+ //-------------------------------------------------------------------------
+
+ /** provides access to the layout settings of the data pilot table.
+ */
+ interface XDataPilotDescriptor;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to the layout settings of the data pilot table.
+ */
+ [optional] interface com::sun::star::beans::XPropertySet;
+
+ //-------------------------------------------------------------------------
+
+ /** Provides access to the <type>DataPilotField</type> used to layout
+ multiple data fields.
+ */
+ [optional] interface XDataPilotDataLayoutFieldSupplier;
+
+ //=========================================================================
+
+ /** specifies parameters to create the data pilot table from a database.
+
+ @see DatabaseImportDescriptor
+ @since OOo 3.3.0
+
+ */
+ [optional, property] sequence< com::sun::star::beans::PropertyValue > ImportDescriptor;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the name of a <type>DataPilotSource</type> implementation
+ for the data pilot table.
+
+ @since OOo 3.3.0
+
+ */
+ [optional, property] string SourceServiceName;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies arguments that are passed to the implementation named by
+ <member>SourceServiceName</member>.
+
+ @since OOo 3.3.0
+
+ */
+ [optional, property] sequence< com::sun::star::beans::PropertyValue > ServiceArguments;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the orientation of the field.
+ */
+ [optional, property] boolean IgnoreEmptyRows;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the orientation of the field.
+ */
+ [optional, property] boolean RepeatIfEmpty;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the orientation of the field.
+ */
+ [optional, property] boolean ColumnGrand;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the orientation of the field.
+ */
+ [optional, property] boolean RowGrand;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether the filter button is shown.
+ */
+ [optional, property] boolean ShowFilterButton;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether to drill down to details or go into edit mode.
+ */
+ [optional, property] boolean DrillDownOnDoubleClick;
+
+ //-------------------------------------------------------------------------
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/sheet/DataPilotField.idl b/offapi/com/sun/star/sheet/DataPilotField.idl
new file mode 100644
index 000000000000..d558f0a86f50
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataPilotField.idl
@@ -0,0 +1,248 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DataPilotField_idl__
+#define __com_sun_star_sheet_DataPilotField_idl__
+
+#ifndef __com_sun_star_container_XNamed_idl__
+#include <com/sun/star/container/XNamed.idl>
+#endif
+
+#ifndef __com_sun_star_beans_XPropertySet_idl__
+#include <com/sun/star/beans/XPropertySet.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XDataPilotField_idl__
+#include <com/sun/star/sheet/XDataPilotField.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XDataPilotFieldGrouping_idl__
+#include <com/sun/star/sheet/XDataPilotFieldGrouping.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_DataPilotFieldOrientation_idl__
+#include <com/sun/star/sheet/DataPilotFieldOrientation.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_GeneralFunction_idl__
+#include <com/sun/star/sheet/GeneralFunction.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_DataPilotFieldReference_idl__
+#include <com/sun/star/sheet/DataPilotFieldReference.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_DataPilotFieldLayoutInfo_idl__
+#include <com/sun/star/sheet/DataPilotFieldLayoutInfo.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_DataPilotFieldAutoShowInfo_idl__
+#include <com/sun/star/sheet/DataPilotFieldAutoShowInfo.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_DataPilotFieldSortInfo_idl__
+#include <com/sun/star/sheet/DataPilotFieldSortInfo.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_DataPilotFieldGroupInfo_idl__
+#include <com/sun/star/sheet/DataPilotFieldGroupInfo.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a single field in a data pilot table.
+
+ <p>If the data pilot table is based on a spreadsheet cell range, a field
+ is representred by a column of the range and is named using the topmost
+ cell of the column.</p>
+ */
+published service DataPilotField
+{
+ //-------------------------------------------------------------------------
+
+ /** provides access to the name of the data pilot field.
+ */
+ interface com::sun::star::container::XNamed;
+
+ //-------------------------------------------------------------------------
+
+//!published service PropertySet
+ /** provides access to the properties.
+ */
+ interface com::sun::star::beans::XPropertySet;
+
+ //-------------------------------------------------------------------------
+
+ [optional] interface XDataPilotField;
+
+ //-------------------------------------------------------------------------
+
+ [optional] interface XDataPilotFieldGrouping;
+
+ //=========================================================================
+
+ /** specifies the orientation of the field.
+
+ <p>If the orientation of a field has been changed using this property,
+ the field will be moved to the last position in the collection of all
+ fields with the specified orientation.</p>
+ */
+ [property] DataPilotFieldOrientation Orientation;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the function used to calculate results for this field.
+
+ <p>For column and row fields, this is the function for subtotals
+ (<const>GeneralFunction::NONE</const> means no subtotals).
+ For data fields, this is the function shown in the data pilot
+ table.</p>
+ */
+ [property] GeneralFunction Function;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the functions used to calculate subtotals for this field.
+
+ <p>This property is supported by column and row fields only.</p>
+
+ <p>An empty sequence means no subtotals. The same effect can be
+ achieved by setting the property <member>Function</member> to the
+ value <const>GeneralFunction::NONE</const>. If the length of the
+ sequence is greater then 1, then the sequence MUST NOT contain one of
+ the values <const>GeneralFunction::NONE</const> or
+ <const>GeneralFunction::AUTO</const>.</p>
+
+ <p>The order of the functions in this sequence is reflected in the
+ DataPilot table. Multiple entries of the same function are ignored
+ when setting the property.</p>
+ */
+ [property, optional] sequence<GeneralFunction> Subtotals;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the selected page which is used to filter the data pilot.
+ */
+ [property, optional] string SelectedPage;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether to use the selected page to filter the data pilot or
+ show all.
+ */
+ [property, optional] boolean UseSelectedPage;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies which hierarchy of the dimension is used.
+
+ @see com::sun::star::sheet::DataPilotSourceHierarchies
+ */
+ [property, optional] string UsedHierarchy;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether this field has sorting information.
+ */
+ [property, optional] boolean HasSortInfo;
+
+ //-------------------------------------------------------------------------
+
+ /** controls how the field's items are sorted.
+ */
+ [property, optional] DataPilotFieldSortInfo SortInfo;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether this field has layout information.
+ */
+ [property, optional] boolean HasLayoutInfo;
+
+ //-------------------------------------------------------------------------
+
+ /** controls how the field's items are laid out in the result table.
+ */
+ [property, optional] DataPilotFieldLayoutInfo LayoutInfo;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether this field has auto show information.
+ */
+ [property, optional] boolean HasAutoShowInfo;
+
+ //-------------------------------------------------------------------------
+
+ /** enables the automatic inclusion of only a number of items with
+ the highest or lowest result values.
+ */
+ [property, optional] DataPilotFieldAutoShowInfo AutoShowInfo;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether this field has a reference.
+ */
+ [property, optional] boolean HasReference;
+
+ //-------------------------------------------------------------------------
+
+ /** controls how the results are shown in relation to a selected
+ reference result.
+ */
+ [property, optional] DataPilotFieldReference Reference;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether this field is a group field.
+ */
+ [property, optional] boolean IsGroupField;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the grouping information of the DataPilot field.
+
+ <p>By changing the value of this property it is possible to modify the
+ grouping settings of this field.</p>
+ */
+ [property, optional] DataPilotFieldGroupInfo GroupInfo;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether to show this field also if it is empty or not.
+ */
+ [property, optional] boolean ShowEmpty;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DataPilotFieldAutoShowInfo.idl b/offapi/com/sun/star/sheet/DataPilotFieldAutoShowInfo.idl
new file mode 100644
index 000000000000..194287272546
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataPilotFieldAutoShowInfo.idl
@@ -0,0 +1,83 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DataPilotFieldAutoShowInfo_idl__
+#define __com_sun_star_sheet_DataPilotFieldAutoShowInfo_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** contains the auto show information of a DataPilotField.
+
+ <p>If enabled, only a number of items with the highest or lowest result
+ values are shown. The other items are hidden automatically.</p>
+
+ @see com::sun::star::sheet::DataPilotField
+ */
+published struct DataPilotFieldAutoShowInfo
+{
+ //-------------------------------------------------------------------------
+
+ /** specifies whether the AutoShow feature is enabled or not.
+ */
+
+ boolean IsEnabled;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the mode which items have to be shown.
+
+ @see com::sun::star::sheet::DataPilotFieldShowItemsMode
+
+ */
+
+ long ShowItemsMode;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the number of the items to show.
+ */
+
+ long ItemCount;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the field where the values to show and select are taken from.
+ */
+
+ string DataField;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DataPilotFieldFilter.idl b/offapi/com/sun/star/sheet/DataPilotFieldFilter.idl
new file mode 100644
index 000000000000..e678b3a18a0b
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataPilotFieldFilter.idl
@@ -0,0 +1,51 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DataPilotFieldFilter_idl__
+#define __com_sun_star_sheet_DataPilotFieldFilter_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+struct DataPilotFieldFilter
+{
+ /** Field name. */
+ string FieldName;
+
+ /** String value that needs to match against. */
+ string MatchValue;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DataPilotFieldGroup.idl b/offapi/com/sun/star/sheet/DataPilotFieldGroup.idl
new file mode 100644
index 000000000000..da07a768a57d
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataPilotFieldGroup.idl
@@ -0,0 +1,133 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DataPilotFieldGroup_idl__
+#define __com_sun_star_sheet_DataPilotFieldGroup_idl__
+
+#ifndef __com_sun_star_container_XNamed_idl__
+#include <com/sun/star/container/XNamed.idl>
+#endif
+#ifndef __com_sun_star_container_XNameContainer_idl__
+#include <com/sun/star/container/XNameContainer.idl>
+#endif
+#ifndef __com_sun_star_container_XEnumerationAccess_idl__
+#include <com/sun/star/container/XEnumerationAccess.idl>
+#endif
+#ifndef __com_sun_star_container_XIndexAccess_idl__
+#include <com/sun/star/container/XIndexAccess.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a collection of members in a data pilot field group.
+
+ <p>The members (also called items) of this collection are instances of
+ <type>DataPilotFieldGroupItem</type>.</p>
+
+ @see DataPilotField
+ @see DataPilotFieldGroups
+ @see DataPilotFieldGroupItem
+ */
+published service DataPilotFieldGroup
+{
+ //-------------------------------------------------------------------------
+
+ /** provides access to the name of the data pilot field group.
+
+ <p>It is possible to change the name of this field group as long as
+ the new name is not used in the collection of groups in the field.</p>
+ */
+ interface com::sun::star::container::XNamed;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to the data pilot field group members in the
+ collection via index.
+ */
+ interface com::sun::star::container::XIndexAccess;
+
+ //-------------------------------------------------------------------------
+
+ /** creates an enumeration of all data pilot field group members.
+
+ @see DataPilotFieldGroupEnumeration
+ */
+ interface com::sun::star::container::XEnumerationAccess;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to the data pilot field group members in the
+ collection via name.
+ */
+ interface com::sun::star::container::XNameAccess;
+
+ //-------------------------------------------------------------------------
+
+ /** provides read/write access to the data pilot field group members in
+ the collection via name.
+
+ <p>The <type scope="com::sun::star::container">XNameContainer</type>
+ and <type scope="com::sun::star::container">XNameReplace</type>
+ interfaces can be used to manage the members that this group contains.
+ It is possible to insert, remove, and replace members.</p>
+
+ <p>The method <member scope="com::sun::star::container">
+ XNameReplace::replaceByName</member> can be used to rename the
+ specified member. To do so, the new name has to be passed as second
+ argument. An implementation should support the following data types:
+
+ <ul>
+ <li>a non-empty <atom>string</atom> specifying the new name of the
+ group member.</li>
+ <li>an object supporting the <type scope="com::sun::star::container">
+ XNamed</type> interface, for example an instance of
+ <type>DataPilotFieldGroupItem</type> received from another group.</li>
+ </ul></p>
+
+ <p>The method <member scope="com::sun::star::container">
+ XNameContainer::insertByName</member> can be used to insert a new
+ member into this field group. An implementation should ignore the
+ second argument and insert the specified member name.</p>
+
+ <p>The method <member scope="com::sun::star::container">
+ XNameContainer::removeByName</member> can be used to remove an
+ existing member name.</p>
+ */
+ [optional] interface com::sun::star::container::XNameContainer;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DataPilotFieldGroupBy.idl b/offapi/com/sun/star/sheet/DataPilotFieldGroupBy.idl
new file mode 100644
index 000000000000..a08826022609
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataPilotFieldGroupBy.idl
@@ -0,0 +1,138 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DataPilotFieldGroupBy_idl__
+#define __com_sun_star_sheet_DataPilotFieldGroupBy_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** These constants select different types for grouping members of a DataPilot
+ field by date or time.
+
+ @see DataPilotFieldGroupInfo
+ */
+published constants DataPilotFieldGroupBy
+{
+ // -----------------------------------------------------------------------
+ /** Groups all members of a DataPilot field containing a date/time value
+ by their current value for seconds.
+
+ <p>Example: The group <em>:02</em> will contain all members that
+ contain a time with a seconds value of 2, regardless of the date,
+ hours and minutes of the member, e.g. <em>2002-Jan-03 00:00:02</em> or
+ <em>1999-May-02 12:45:02</em>.</p>
+ */
+ const long SECONDS = 1;
+
+ // -----------------------------------------------------------------------
+ /** Groups all members of a DataPilot field containing a date/time value
+ by their current value for minutes.
+
+ <p>Example: The group <em>:02</em> will contain all members that
+ contain a time with a minutes value of 2, regardless of the date,
+ hours and seconds of the member, e.g. <em>2002-Jan-03 00:02:00</em> or
+ <em>1999-May-02 12:02:45</em>.</p>
+ */
+ const long MINUTES = 2;
+
+ // -----------------------------------------------------------------------
+ /** Groups all members of a DataPilot field containing a date/time value
+ by their current value for hours.
+
+ <p>Example: The group <em>02</em> will contain all members that
+ contain a time with a hour value of 2, regardless of the date, minutes
+ and seconds of the member, e.g. <em>2002-Jan-03 02:00:00</em> or
+ <em>1999-May-02 02:12:45</em>.</p>
+ */
+ const long HOURS = 4;
+
+ // -----------------------------------------------------------------------
+ /** Groups all members of a DataPilot field containing a date/time value
+ by their calendar day, or by ranges of days.
+
+ <p>Examples:
+ <ul>
+ <li>Calendar day grouping: The group <em>Jan 03</em> will contain all
+ members that contain the january 3rd, regardless of the year or time
+ of the member, e.g. <em>2002-Jan-03 00:00:00</em> or
+ <em>1999-Jan-03 02:12:45</em>.</li>
+
+ <li>Day range grouping: The group <em>2002-Jan-03 - 2002-Jan-09</em>
+ will contain all members with a date/time in the range from
+ 2002-Jan-03 00:00:00 through 2002-Jan-09 23:59:59.</li>
+ </ul></p>
+
+ <p>See descriptions for <member>XDataPilotFieldGrouping::createDateGroup
+ </member> for more details about day grouping.</p>
+ */
+ const long DAYS = 8;
+
+ // -----------------------------------------------------------------------
+ /** Groups all members of a DataPilot field containing a date/time value
+ by their month.
+
+ <p>Example: The group <em>Jan</em> will contain all members with a
+ date in the month january, regardless of the year, day, or time of the
+ member, e.g. <em>2002-Jan-03 00:00:00</em> or
+ <em>1999-Jan-02 02:12:45</em>.</p>
+ */
+ const long MONTHS = 16;
+
+ // -----------------------------------------------------------------------
+ /** Groups all members of a DataPilot field containing a date/time value
+ by their quarter.
+
+ <p>Example: The group <em>Q1</em> will contain all members with a
+ date in the first quarter of a year (i.e. the months january,
+ february, and march), regardless of the year, day, or time of the
+ member, e.g. <em>2002-Jan-03 00:00:00</em> or
+ <em>1999-Mar-02 02:12:45</em>.</p>
+ */
+ const long QUARTERS = 32;
+
+ // -----------------------------------------------------------------------
+ /** Groups all members of a DataPilot field containing a date/time value
+ by their year.
+
+ <p>Example: The group <em>1999</em> will contain all members with a
+ date in the year 1999, regardless of the month, day, or time of the
+ member, e.g. <em>1999-Jan-03 00:00:00</em> or
+ <em>1999-May-02 02:12:45</em>.</p>
+ */
+ const long YEARS = 64;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DataPilotFieldGroupEnumeration.idl b/offapi/com/sun/star/sheet/DataPilotFieldGroupEnumeration.idl
new file mode 100644
index 000000000000..f486cb0d689a
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataPilotFieldGroupEnumeration.idl
@@ -0,0 +1,64 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DataPilotFieldGroupEnumeration_idl__
+#define __com_sun_star_sheet_DataPilotFieldGroupEnumeration_idl__
+
+#ifndef __com_sun_star_container_XEnumeration_idl__
+#include <com/sun/star/container/XEnumeration.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents an enumeration of members in a DataPilot field group.
+
+ @see DataPilotFieldGroupItem
+ @see DataPilotFieldGroup
+ */
+service DataPilotFieldGroupEnumeration
+{
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access the group members in the enumeration.
+
+ <p>The elements of the enumeration are instances of
+ <type>DataPilotFieldGroupItem</type>.</p>
+ */
+ interface com::sun::star::container::XEnumeration;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DataPilotFieldGroupInfo.idl b/offapi/com/sun/star/sheet/DataPilotFieldGroupInfo.idl
new file mode 100644
index 000000000000..380dab374dc5
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataPilotFieldGroupInfo.idl
@@ -0,0 +1,164 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DataPilotFieldGroupInfo_idl__
+#define __com_sun_star_sheet_DataPilotFieldGroupInfo_idl__
+
+#ifndef __com_sun_star_sheet_XDataPilotField_idl__
+#include <com/sun/star/sheet/XDataPilotField.idl>
+#endif
+#ifndef __com_sun_star_container_XNameAccess_idl__
+#include <com/sun/star/container/XNameAccess.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** contains the grouping information of a <type>DataPilotField</type>.
+ */
+published struct DataPilotFieldGroupInfo
+{
+ //-------------------------------------------------------------------------
+
+ /** specifies whether the start value for the grouping is taken
+ automatically from the minimum of the item values.
+
+ <p><ul>
+ <li>If <FALSE/> is set, the value from <member>Start</member> will be
+ used as start value for the grouping.</li>
+ <li>If <TRUE/> is set, the start value for the grouping will be
+ calculated automatically from the minimum of all member values of the
+ DataPilot field.</li>
+ </ul></p>
+ */
+ boolean HasAutoStart;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether the end value for the grouping is taken
+ automatically from the maximum of the item values.
+
+ <p><ul>
+ <li>If <FALSE/> is set, the value from <member>End</member> will be
+ used as end value for the grouping.</li>
+ <li>If <TRUE/> is set, the end value for the grouping will be
+ calculated automatically from the maximum of all member values of the
+ DataPilot field.</li>
+ </ul></p>
+ */
+ boolean HasAutoEnd;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether date values are grouped by ranges of days.
+
+ <p><ul>
+ <li>If <FALSE/> is set, and <member>GroupBy</member> contains zero,
+ grouping is performed inplace on the item values.</li>
+ <li>If <FALSE/> is set, and <member>GroupBy</member> contains one or
+ more flags from <type>DataPilotFieldGroupBy</type>, grouping is
+ performed on date or time.</li>
+ <li>If <TRUE/> is set, <member>Step</member> contains a value greater
+ than or equal to 1, and <member>GroupBy</member> set to <const>
+ DataPilotFieldGroupBy::DAYS</const>, grouping is performed on ranges
+ of days (see descriptions for <member>
+ XDataPilotFieldGrouping::createDateGroup</member> for more details
+ about day grouping).</li>
+ </ul></p>
+ */
+ boolean HasDateValues;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the start value for the grouping if <member>HasAutoStart
+ </member> is set to <FALSE/>.
+ */
+ double Start;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the end value for the grouping if <member>HasAutoEnd
+ </member> is set to <FALSE/>.
+ */
+ double End;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the size of the ranges for numeric or day grouping.
+
+ <p>Example: With <member>HasAutoStart</member> set to <FALSE/>,
+ <member>Start</member> set to 2, and <member>Step</member> set to 3,
+ the first group will contain all values greater than or equal to 2 and
+ less than 5. The second group will contain all values greater than or
+ equal to 5 and less then 8, and so on.</p>
+ */
+ double Step;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the grouping of the date values.
+
+ @see DataPilotFieldGroupBy
+ */
+ long GroupBy;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the source DataPilot field grouping is based on. Will be
+ <NULL/> if this field is not grouped or contains numeric grouping.
+
+ @see DataPilotField
+ */
+ XDataPilotField SourceField;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the named groups in this field if there are some.
+
+ <p>The returned object is an instance of <type>DataPilotFieldGroups
+ </type>. The collection of groups can be modified by inserting,
+ removing, replacing, or renaming single groups or item names in the
+ groups. When writing back this struct containing such a changed
+ collection of groups to the <member>DataPilotField::GroupInfo</member>
+ property, the modified grouping settings are applied at the DataPilot
+ field.</p>
+
+ @see DataPilotField
+ @see DataPilotFieldGroups
+ */
+ com::sun::star::container::XNameAccess Groups;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DataPilotFieldGroupItem.idl b/offapi/com/sun/star/sheet/DataPilotFieldGroupItem.idl
new file mode 100644
index 000000000000..40a65552aa99
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataPilotFieldGroupItem.idl
@@ -0,0 +1,60 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DataPilotFieldGroupItem_idl__
+#define __com_sun_star_sheet_DataPilotFieldGroupItem_idl__
+
+#ifndef __com_sun_star_container_XNamed_idl__
+#include <com/sun/star/container/XNamed.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents the member in a data pilot field group.
+
+ @see com::sun::star::sheet::DataPilotFieldGroup
+ */
+published service DataPilotFieldGroupItem
+{
+ //-------------------------------------------------------------------------
+
+ /** provides access to the name of the data pilot field group member.
+ */
+ interface com::sun::star::container::XNamed;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DataPilotFieldGroups.idl b/offapi/com/sun/star/sheet/DataPilotFieldGroups.idl
new file mode 100644
index 000000000000..544863db4d4b
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataPilotFieldGroups.idl
@@ -0,0 +1,127 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DataPilotFieldGroups_idl__
+#define __com_sun_star_sheet_DataPilotFieldGroups_idl__
+
+#ifndef __com_sun_star_container_XNameContainer_idl__
+#include <com/sun/star/container/XNameContainer.idl>
+#endif
+#ifndef __com_sun_star_container_XEnumerationAccess_idl__
+#include <com/sun/star/container/XEnumerationAccess.idl>
+#endif
+#ifndef __com_sun_star_container_XIndexAccess_idl__
+#include <com/sun/star/container/XIndexAccess.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a collection of groups in a data pilot field.
+
+ <p>The members of this collection are instances of <type>DataPilotFieldGroup</type>
+ containing the names of all items in the group.</p>
+
+ @see DataPilotField
+ @see DataPilotFieldGroup
+ @see DataPilotFieldGroupInfo
+ */
+published service DataPilotFieldGroups
+{
+ //-------------------------------------------------------------------------
+
+ /** provides access to the data pilot field groups in the collection via
+ index.
+ */
+ interface com::sun::star::container::XIndexAccess;
+
+ //-------------------------------------------------------------------------
+
+ /** creates an enumeration of all data pilot field groups.
+
+ @see DataPilotFieldGroupsEnumeration
+ */
+ interface com::sun::star::container::XEnumerationAccess;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to the data pilot field groups in the collection via
+ name.
+ */
+ interface com::sun::star::container::XNameAccess;
+
+ //-------------------------------------------------------------------------
+
+ /** provides read/write access to the data pilot field groups in the
+ collection via name.
+
+ <p>The <type scope="com::sun::star::container">XNameContainer</type>
+ and <type scope="com::sun::star::container">XNameReplace</type>
+ interfaces can be used to manage the item groups. It is possible to
+ insert, remove, and replace item groups.</p>
+
+ <p>The method <member scope="com::sun::star::container">
+ XNameReplace::replaceByName</member> can be used to replace the item
+ names in an existing group with a new collection of item names. An
+ implementation should support the following data types:
+
+ <ul>
+ <li>an empty <atom>any</atom> to remove all items and leave the
+ group empty. The group can be filled later with new item names.</li>
+ <li>a <atom dim="[]">string</atom> containing all item names that will
+ be part of the group.</li>
+ <li>an object supporting <type scope="com::sun::star::container">
+ XIndexAccess</type> containing elements that provide an item name per
+ element via the interface <type scope="com::sun::star::container">
+ XNamed</type>, for example an instance of <type>DataPilotFieldGroup
+ </type>.</li>
+ </ul></p>
+
+ <p>The method <member scope="com::sun::star::container">
+ XNameContainer::insertByName</member> can be used to insert a new
+ field group with the passed collection of item names. An
+ implementation should support the same data types as described above
+ for the method <member scope="com::sun::star::container">
+ XNameReplace::replaceByName</member>.</p>
+
+ <p>The method <member scope="com::sun::star::container">
+ XNameContainer::removeByName</member> can be used to remove an
+ existing field group.</p>
+ */
+ [optional] interface com::sun::star::container::XNameContainer;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DataPilotFieldGroupsEnumeration.idl b/offapi/com/sun/star/sheet/DataPilotFieldGroupsEnumeration.idl
new file mode 100644
index 000000000000..6b94a42df494
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataPilotFieldGroupsEnumeration.idl
@@ -0,0 +1,64 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DataPilotFieldGroupsEnumeration_idl__
+#define __com_sun_star_sheet_DataPilotFieldGroupsEnumeration_idl__
+
+#ifndef __com_sun_star_container_XEnumeration_idl__
+#include <com/sun/star/container/XEnumeration.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents an enumeration of member groups in a DataPilot field.
+
+ @see DataPilotFieldGroup
+ @see DataPilotFieldGroups
+ */
+service DataPilotFieldGroupsEnumeration
+{
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access the field groups in the enumeration.
+
+ <p>The elements of the enumeration are instances of
+ <type>DataPilotFieldGroup</type>.</p>
+ */
+ interface com::sun::star::container::XEnumeration;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DataPilotFieldLayoutInfo.idl b/offapi/com/sun/star/sheet/DataPilotFieldLayoutInfo.idl
new file mode 100644
index 000000000000..fb3fff39a687
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataPilotFieldLayoutInfo.idl
@@ -0,0 +1,66 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DataPilotFieldLayoutInfo_idl__
+#define __com_sun_star_sheet_DataPilotFieldLayoutInfo_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** contains the layout information of a <type>DataPilotField</type>.
+ */
+published struct DataPilotFieldLayoutInfo
+{
+ //-------------------------------------------------------------------------
+
+ /** specifies the layout mode.
+
+ @see com::sun::star::sheet::DataPilotFieldLayoutMode
+
+ */
+
+ long LayoutMode;
+
+ //-------------------------------------------------------------------------
+
+ /** If <TRUE/>, an empty row is inserted in the <type>DataPilotTable</type>
+ result table after the data
+ (including the subtotals) for each item of the field.
+ */
+
+ boolean AddEmptyLines;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DataPilotFieldLayoutMode.idl b/offapi/com/sun/star/sheet/DataPilotFieldLayoutMode.idl
new file mode 100644
index 000000000000..6f2025739803
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataPilotFieldLayoutMode.idl
@@ -0,0 +1,86 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DataPilotFieldLayoutMode_idl__
+#define __com_sun_star_sheet_DataPilotFieldLayoutMode_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** describes the layout mode of the data field
+
+@see com::sun::star::sheet::DataPilotFieldLayoutInfo
+
+ */
+constants DataPilotFieldLayoutMode
+{
+ //-------------------------------------------------------------------------
+
+ /** Tabular layout mode is the layout, where each item's name is on the same
+ row as the first item from the following field. Subtotals are always shown below
+ an item's data in this mode.
+ */
+
+ const long TABULAR_LAYOUT = 0;
+
+ //-------------------------------------------------------------------------
+
+ /** In outline layout mode, the items from the following field start in the row
+ below an item's name, like in traditional database reports.
+
+ <P>Subtotals are shown at the top (on the same row as the item's name). When
+ the subtotals take up more than one row (manually selected, or because there
+ are several data fields), they are always shown below the item's data,
+ regardless of the setting.</p>
+ */
+
+ const long OUTLINE_SUBTOTALS_TOP = 1;
+
+ //-------------------------------------------------------------------------
+
+ /** In outline layout mode, the items from the following field start in the row
+ below an item's name, like in traditional database reports.
+
+ <P>Subtotals are shown at the bottom (below the item's data, as in tabular
+ layout mode). When the subtotals take up more than one row (manually
+ selected, or because there are several data fields), they are always shown
+ below the item's data, regardless of the setting.</p>
+ */
+
+ const long OUTLINE_SUBTOTALS_BOTTOM = 2;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DataPilotFieldOrientation.idl b/offapi/com/sun/star/sheet/DataPilotFieldOrientation.idl
new file mode 100644
index 000000000000..03c74115540d
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataPilotFieldOrientation.idl
@@ -0,0 +1,78 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DataPilotFieldOrientation_idl__
+#define __com_sun_star_sheet_DataPilotFieldOrientation_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** used to specify where a field in a data pilot table is laid out.
+ */
+published enum DataPilotFieldOrientation
+{
+ //-------------------------------------------------------------------------
+
+ /** the field is not used in the table.
+ */
+ HIDDEN,
+
+ //-------------------------------------------------------------------------
+
+ /** the field is used as a column field.
+ */
+ COLUMN,
+
+ //-------------------------------------------------------------------------
+
+ /** the field is used as a row field.
+ */
+ ROW,
+
+ //-------------------------------------------------------------------------
+
+ /** the field is used as a page field.
+ */
+ PAGE,
+
+ //-------------------------------------------------------------------------
+
+ /** the field is used as a data field.
+ */
+ DATA
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DataPilotFieldReference.idl b/offapi/com/sun/star/sheet/DataPilotFieldReference.idl
new file mode 100644
index 000000000000..163917c79b78
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataPilotFieldReference.idl
@@ -0,0 +1,91 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DataPilotFieldReference_idl__
+#define __com_sun_star_sheet_DataPilotFieldReference_idl__
+
+#ifndef __com_sun_star_sheet_DataPilotFieldReferenceItemType_idl__
+#include <com/sun/star/sheet/DataPilotFieldReferenceItemType.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** controls how a data pilot field's results are shown in relation to
+ a selected reference result.
+
+ @see com::sun::star::sheet::DataPilotField
+ */
+published struct DataPilotFieldReference
+{
+ //-------------------------------------------------------------------------
+
+ /** contains the type of the reference.
+
+ @see com::sun::star::sheet::DataPilotFieldReferenceType
+
+ */
+
+ long ReferenceType;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the reference field
+ */
+
+ string ReferenceField;
+
+ //-------------------------------------------------------------------------
+
+ /** selects between a named reference item and using the previous or next
+ item for each item from the reference field.
+
+ @see com::sun::star::sheet::DataPilotFieldReferenceItemType
+
+ */
+
+ long ReferenceItemType;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the name of the reference item, when the
+ <member>DataPilotFieldReference::ReferenceItemType</member> is NAMED
+ otherwise is empty
+ */
+
+ string ReferenceItemName;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DataPilotFieldReferenceItemType.idl b/offapi/com/sun/star/sheet/DataPilotFieldReferenceItemType.idl
new file mode 100644
index 000000000000..b3e4d86a6998
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataPilotFieldReferenceItemType.idl
@@ -0,0 +1,68 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DataPilotFieldReferenceItemType_idl__
+#define __com_sun_star_sheet_DataPilotFieldReferenceItemType_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** is used to select the reference item
+ */
+constants DataPilotFieldReferenceItemType
+{
+ //-------------------------------------------------------------------------
+
+ /** the reference item is given by a name.
+ */
+
+ const long NAMED = 0;
+
+ //-------------------------------------------------------------------------
+
+ /** the reference item is the previous one.
+ */
+
+ const long PREVIOUS = 1;
+
+ //-------------------------------------------------------------------------
+
+ /** the reference item is the next one.
+ */
+
+ const long NEXT = 2;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DataPilotFieldReferenceType.idl b/offapi/com/sun/star/sheet/DataPilotFieldReferenceType.idl
new file mode 100644
index 000000000000..d6b677997c70
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataPilotFieldReferenceType.idl
@@ -0,0 +1,175 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DataPilotFieldReferenceType_idl__
+#define __com_sun_star_sheet_DataPilotFieldReferenceType_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** These constants select different types of References to calculate
+ the data fields.
+ */
+constants DataPilotFieldReferenceType
+{
+ //-------------------------------------------------------------------------
+
+ /** This type means, that the results in the data fields are displayed like they are.
+ */
+ const long NONE = 0;
+
+ //-------------------------------------------------------------------------
+
+ /** From each result, its reference value (see below) is subtracted, and the difference is shown.
+ Totals outside of the base field are shown as empty results.
+
+ <p><b>Named Item</b></p>
+
+ <p>If a base item name is specified, the reference value for a combination of field items is the
+ result where the item in the base field is replaced by the specified base item.</p>
+
+ <p>If the reference value isn't shown in the DataPilot table because of hidden details for a
+ parent field, the difference isn't calculated and an error value is shown.</p>
+
+ <p>If the result for an item combination is empty, the value 0 is used for the difference, even
+ if the summary function is undefined without values, like average or variance. The difference
+ is shown in the result table even if the original result was empty.</p>
+
+ <p>The difference for item combinations containing the base item is shown as empty result.</p>
+
+ <p><b>Previous or Next</b></p>
+
+ <p>If "previous" or "next" is specified as the base item, the reference value is the result for
+ the next visible member of the base field, in the base field's sort order. If details for one
+ item in the base field are hidden, that item is skipped. The difference for the item with
+ hidden details isn't calculated, not even for the item's summary, to have a consistent order
+ of previous and next items.</p>
+
+ <p>Empty results are handled as for named items (see above).<p>
+
+ <p>The difference for the first (for <TYPE>com::sun::star::sheet::DataPilotFieldReferenceItemType::PREVIOUS</TYPE>)
+ or last (for <TYPE>com::sun::star::sheet::DataPilotFieldReferenceItemType::NEXT</TYPE>) item of the base field is
+ shown as empty result.</p>
+ */
+
+ const long ITEM_DIFFERENCE = 1;
+
+ //-------------------------------------------------------------------------
+
+ /** Each result is divided by its reference value. The reference value is determined in the
+ same way as for <const scope="::com::sun::star::sheet">DataPilotFieldReferenceType::ITEM_DIFFERENCE</const>.
+ Totals outside of the base field are shown as empty results.
+
+ <p>Division by zero results in an error. Otherwise, empty results are shown as 0. Results for
+ the base item, first (for <TYPE>com::sun::star::sheet::DataPilotFieldReferenceItemType::PREVIOUS</TYPE>)
+ or last (for <TYPE>com::sun::star::sheet::DataPilotFieldReferenceItemType::NEXT</TYPE>) item of the base field are shown
+ as 1 if not empty.</p>
+ */
+
+ const long ITEM_PERCENTAGE = 2;
+
+ //-------------------------------------------------------------------------
+
+ /** From each result, its reference value is subtracted, and the difference divided by the
+ reference value. The reference value is determined in the same way as for
+ <const scope="::com::sun::star::sheet">DataPilotFieldReferenceType::ITEM_DIFFERENCE</const>.
+ Totals outside of the base field are shown as empty results.
+
+ <p>Division by zero results in an error. Otherwise, the rules for <const scope="::com::sun::star::sheet">DataPilotFieldReferenceType::ITEM_DIFFERENCE</const> apply.</p>
+ */
+
+ const long ITEM_PERCENTAGE_DIFFERENCE = 3;
+
+ //-------------------------------------------------------------------------
+
+ /** Each result is added to the sum of the results for preceding items in the base field,
+ in the base field's sort order, and the total sum is shown.
+
+ <p>If details for one item in the base field are hidden, that item isn't included in
+ calculating the sum, and results for that item are shown as error, to ensure consistency
+ between details and subtotals for the following items.</p>
+
+ <p>Results are always summed, even if a different summary function was used to get each result.</p>
+
+ <p>Totals outside of the base field are shown as empty results.</p>
+ */
+
+ const long RUNNING_TOTAL = 4;
+
+ //-------------------------------------------------------------------------
+
+ /** Each result is divided by the total result for its row in the DataPilot table.
+
+ <p>If there are several data fields, the total for the result's data field is used.</p>
+
+ <p>If there are subtotals with manually selected summary functions, still the total with
+ the data field's summary function is used.</p>
+
+ <p>Division by zero results in an error.</p>
+
+ <p>Otherwise, empty results remain empty.</p>
+ */
+
+ const long ROW_PERCENTAGE = 5;
+
+ //-------------------------------------------------------------------------
+
+ /** Same as <const scope="::com::sun::star::sheet">DataPilotFieldReferenceType::ROW_PERCENTAGE</const>, but the total for the result's column is used.
+ */
+
+ const long COLUMN_PERCENTAGE = 6;
+
+ //-------------------------------------------------------------------------
+
+ /** Same as <const scope="::com::sun::star::sheet">DataPilotFieldReferenceType::ROW_PERCENTAGE</const>, but the grand total for the result's data field is used.
+ */
+
+ const long TOTAL_PERCENTAGE = 7;
+
+ //-------------------------------------------------------------------------
+
+ /** The row and column totals and the grand total, following the same rules as above, are used to calculate the following expression.
+
+ <p>( original result * grand total ) / ( row total * column total )</p>
+
+ <p>Division by zero results in an error. Otherwise, empty results remain empty.</p>
+ */
+
+ const long INDEX = 8;
+
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DataPilotFieldShowItemsMode.idl b/offapi/com/sun/star/sheet/DataPilotFieldShowItemsMode.idl
new file mode 100644
index 000000000000..b0574945ef0c
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataPilotFieldShowItemsMode.idl
@@ -0,0 +1,64 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DataPilotFieldShowItemsMode_idl__
+#define __com_sun_star_sheet_DataPilotFieldShowItemsMode_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** These constants select different types of showing a selection of items.
+
+@see com::sun::star::sheet::DataPilotFieldAutoShowInfo
+
+ */
+constants DataPilotFieldShowItemsMode
+{
+ //-------------------------------------------------------------------------
+
+ /** The first items are shown.
+ */
+ const long FROM_TOP = 0;
+
+ //-------------------------------------------------------------------------
+
+ /** The last items are shown.
+ */
+
+ const long FROM_BOTTOM = 1;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DataPilotFieldSortInfo.idl b/offapi/com/sun/star/sheet/DataPilotFieldSortInfo.idl
new file mode 100644
index 000000000000..b024613d6e51
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataPilotFieldSortInfo.idl
@@ -0,0 +1,74 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_sheet_DataPilotFieldSortInfo_idl__
+#define __com_sun_star_sheet_DataPilotFieldSortInfo_idl__
+
+#ifndef __com_sun_star_sheet_DataPilotFieldSortMode_idl__
+#include <com/sun/star/sheet/DataPilotFieldSortMode.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+/** describes how to sort a single DataPilotField
+ */
+published struct DataPilotFieldSortInfo
+{
+ //-------------------------------------------------------------------------
+
+ /** contains the data field to sort by if the Mode is DATA
+ */
+
+ string Field;
+
+ //-------------------------------------------------------------------------
+
+ /** <TRUE/> if data are sorted in ascending order,
+ <FALSE/> if in descending order.
+ */
+
+ boolean IsAscending;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the sort mode
+
+ @see com::sun::star::sheet::DataPilotFieldSortMode
+
+ */
+
+ long Mode;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/sheet/DataPilotFieldSortMode.idl b/offapi/com/sun/star/sheet/DataPilotFieldSortMode.idl
new file mode 100644
index 000000000000..a167ab14244f
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataPilotFieldSortMode.idl
@@ -0,0 +1,81 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DataPilotFieldSortMode_idl__
+#define __com_sun_star_sheet_DataPilotFieldSortMode_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** describes the sort mode of the data field
+
+@see com::sun::star::sheet::DataPilotFieldSortInfo
+
+ */
+constants DataPilotFieldSortMode
+{
+ //-------------------------------------------------------------------------
+
+ /** the data are taken as they come from the DataPilotSource.
+ */
+
+ const long NONE = 0;
+
+ //-------------------------------------------------------------------------
+
+ /** the user can sort the fields
+ */
+
+ const long MANUAL = 1;
+
+ //-------------------------------------------------------------------------
+
+ /** the field is sorted by its names
+ */
+
+ const long NAME = 2;
+
+ //-------------------------------------------------------------------------
+
+ /** the field ist sorted by the data in the given field
+
+ @see com::sun::star::sheet::DataPilotFieldSortInfo
+
+ */
+
+ const long DATA = 3;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DataPilotFields.idl b/offapi/com/sun/star/sheet/DataPilotFields.idl
new file mode 100644
index 000000000000..aba253280da7
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataPilotFields.idl
@@ -0,0 +1,84 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DataPilotFields_idl__
+#define __com_sun_star_sheet_DataPilotFields_idl__
+
+#ifndef __com_sun_star_container_XNameAccess_idl__
+#include <com/sun/star/container/XNameAccess.idl>
+#endif
+#ifndef __com_sun_star_container_XEnumerationAccess_idl__
+#include <com/sun/star/container/XEnumerationAccess.idl>
+#endif
+#ifndef __com_sun_star_container_XIndexAccess_idl__
+#include <com/sun/star/container/XIndexAccess.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a collection of fields in a data pilot table.
+
+ <p>If the data pilot table is based on a spreadsheet cell range, the
+ fields are representred by the columns of the range and are named using
+ the first row of the range.</p>
+
+ @see com::sun::star::sheet::DataPilotField
+ */
+published service DataPilotFields
+{
+ //-------------------------------------------------------------------------
+
+ /** provides access to the data pilot fields in the collection via index.
+ */
+ interface com::sun::star::container::XIndexAccess;
+
+ //-------------------------------------------------------------------------
+
+ /** creates an enumeration of all data pilot fields.
+
+ @see com::sun::star::sheet::DataPilotItemsEnumeration
+ */
+ interface com::sun::star::container::XEnumerationAccess;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to the data pilot fields in the collection via name.
+ */
+ interface com::sun::star::container::XNameAccess;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DataPilotFieldsEnumeration.idl b/offapi/com/sun/star/sheet/DataPilotFieldsEnumeration.idl
new file mode 100644
index 000000000000..e96099eae8f7
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataPilotFieldsEnumeration.idl
@@ -0,0 +1,62 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DataPilotFieldsEnumeration_idl__
+#define __com_sun_star_sheet_DataPilotFieldsEnumeration_idl__
+
+#ifndef __com_sun_star_container_XEnumeration_idl__
+#include <com/sun/star/container/XEnumeration.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents an enumeration of data pilot fields.
+
+ @see com::sun::star::sheet::DataPilotField
+ */
+published service DataPilotFieldsEnumeration
+{
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access the data pilot fields in the enumeration.
+
+ @see com::sun::star::sheet::DataPilotField
+ */
+ interface com::sun::star::container::XEnumeration;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DataPilotItem.idl b/offapi/com/sun/star/sheet/DataPilotItem.idl
new file mode 100644
index 000000000000..54f21820ed25
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataPilotItem.idl
@@ -0,0 +1,90 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DataPilotItem_idl__
+#define __com_sun_star_sheet_DataPilotItem_idl__
+
+#ifndef __com_sun_star_container_XNamed_idl__
+#include <com/sun/star/container/XNamed.idl>
+#endif
+
+#ifndef __com_sun_star_beans_XPropertySet_idl__
+#include <com/sun/star/beans/XPropertySet.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a single item in a data pilot field.
+ */
+service DataPilotItem
+{
+ //-------------------------------------------------------------------------
+
+ /** provides access to the name of the data pilot item.
+
+ <p>Only the <code>getName()</code> method is provided.</p>
+ */
+ interface com::sun::star::container::XNamed;
+
+ //-------------------------------------------------------------------------
+
+//! service PropertySet
+ /** provides access to the properties.
+ */
+ interface com::sun::star::beans::XPropertySet;
+
+ //=========================================================================
+
+ /** specifies whether the item is showing detail.
+ */
+ [property] boolean ShowDetail;
+
+ //=========================================================================
+
+ /** specifies whether the item is hidden.
+ */
+ [property] boolean IsHidden;
+
+ //=========================================================================
+
+ /** specifies the item's position in its field if sorting is manual.
+
+ @since OOo 2.4.0
+ */
+ [optional, property] long Position;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DataPilotItems.idl b/offapi/com/sun/star/sheet/DataPilotItems.idl
new file mode 100644
index 000000000000..edc3bd474e04
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataPilotItems.idl
@@ -0,0 +1,80 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DataPilotItems_idl__
+#define __com_sun_star_sheet_DataPilotItems_idl__
+
+#ifndef __com_sun_star_container_XNameAccess_idl__
+#include <com/sun/star/container/XNameAccess.idl>
+#endif
+#ifndef __com_sun_star_container_XEnumerationAccess_idl__
+#include <com/sun/star/container/XEnumerationAccess.idl>
+#endif
+#ifndef __com_sun_star_container_XIndexAccess_idl__
+#include <com/sun/star/container/XIndexAccess.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a collection of items in a data pilot field.
+
+ @see DataPilotItem
+ */
+service DataPilotItems
+{
+ //-------------------------------------------------------------------------
+
+ /** provides access to the data pilot items in the collection via index.
+ */
+ interface com::sun::star::container::XIndexAccess;
+
+ //-------------------------------------------------------------------------
+
+ /** creates an enumeration of all data pilot items.
+
+ @see com::sun::star::sheet::DataPilotItemsEnumeration
+ */
+ interface com::sun::star::container::XEnumerationAccess;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to the data pilot items in the collection via name.
+ */
+ interface com::sun::star::container::XNameAccess;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DataPilotItemsEnumeration.idl b/offapi/com/sun/star/sheet/DataPilotItemsEnumeration.idl
new file mode 100644
index 000000000000..074beb4e6215
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataPilotItemsEnumeration.idl
@@ -0,0 +1,62 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DataPilotItemsEnumeration_idl__
+#define __com_sun_star_sheet_DataPilotItemsEnumeration_idl__
+
+#ifndef __com_sun_star_container_XEnumeration_idl__
+#include <com/sun/star/container/XEnumeration.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents an enumeration of data pilot items.
+
+ @see com::sun::star::sheet::DataPilotItem
+ */
+service DataPilotItemsEnumeration
+{
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access the data pilot items in the enumeration.
+
+ @see com::sun::star::sheet::DataPilotItem
+ */
+ interface com::sun::star::container::XEnumeration;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DataPilotOutputRangeType.idl b/offapi/com/sun/star/sheet/DataPilotOutputRangeType.idl
new file mode 100644
index 000000000000..7bb0bbbc9438
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataPilotOutputRangeType.idl
@@ -0,0 +1,72 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DataPilotOutputRangeType_idl__
+#define __com_sun_star_sheet_DataPilotOutputRangeType_idl__
+
+module com { module sun { module star { module sheet {
+
+//============================================================================
+
+/** specifies region type of DataPilot table range
+
+ <p>This constant set is used to indicate the type of output range desired when
+ <method>XDataPilotTable2::getOutputRangeByType</method> is called, which
+ returns a different cell range depending upon the value passed to it as the argument.</p>
+
+ @see com::sun::star::sheet::XDataPilotTable2
+
+ @since OOo 3.0.0
+ */
+constants DataPilotOutputRangeType
+{
+ //------------------------------------------------------------------------
+
+ /** whole DataPilot output range including the header area above the table
+ where the filter and page field buttons are located. */
+ const long WHOLE = 0;
+
+ //------------------------------------------------------------------------
+
+ /** whole table but without the header area where the filter and page field
+ buttons are located. */
+ const long TABLE = 1;
+
+ //------------------------------------------------------------------------
+
+ /** result area where the result values are displayed. This also includes
+ the column and row subtotal areas when they are displayed. */
+ const long RESULT = 2;
+};
+
+//============================================================================
+
+}; }; }; };
+
+
+
+#endif
diff --git a/offapi/com/sun/star/sheet/DataPilotSource.idl b/offapi/com/sun/star/sheet/DataPilotSource.idl
new file mode 100644
index 000000000000..d96bd6d1ba76
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataPilotSource.idl
@@ -0,0 +1,129 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DataPilotSource_idl__
+#define __com_sun_star_sheet_DataPilotSource_idl__
+
+#ifndef __com_sun_star_sheet_XDimensionsSupplier_idl__
+#include <com/sun/star/sheet/XDimensionsSupplier.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XDataPilotResults_idl__
+#include <com/sun/star/sheet/XDataPilotResults.idl>
+#endif
+
+#ifndef __com_sun_star_util_XRefreshable_idl__
+#include <com/sun/star/util/XRefreshable.idl>
+#endif
+
+#ifndef __com_sun_star_beans_XPropertySet_idl__
+#include <com/sun/star/beans/XPropertySet.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a data pilot source.
+
+ <p>A component that implements this service can be used as data source
+ for a data pilot table in a spreadsheet document.</p>
+ */
+published service DataPilotSource
+{
+ //-------------------------------------------------------------------------
+
+ /** provides access to the collection of the dimensions of the data
+ pilot source.
+ */
+ interface com::sun::star::sheet::XDimensionsSupplier;
+
+ //-------------------------------------------------------------------------
+
+ /** gives access to the results of the data pilot table.
+ */
+ interface com::sun::star::sheet::XDataPilotResults;
+
+ //-------------------------------------------------------------------------
+
+ /** provides methods to refresh the data pilot table, that means to
+ read the data again from the data pilot source.
+ */
+ interface com::sun::star::util::XRefreshable;
+
+ //-------------------------------------------------------------------------
+
+//!published service PropertySet
+ /** provides access to the properties.
+ */
+ interface com::sun::star::beans::XPropertySet;
+
+ //=========================================================================
+
+ /** specifies if grand totals for the columns are inserted.
+ */
+ [property] boolean ColumnGrand;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies if grand totals for the rows are inserted.
+ */
+ [property] boolean RowGrand;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the number of row fields.
+
+ @since OOo 3.0.0
+ */
+ [readonly, property, optional] long RowFieldCount;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the number of column fields.
+
+ @since OOo 3.0.0
+ */
+ [readonly, property, optional] long ColumnFieldCount;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the number of data fields.
+
+ @since OOo 3.0.0
+ */
+ [readonly, property, optional] long DataFieldCount;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DataPilotSourceDimension.idl b/offapi/com/sun/star/sheet/DataPilotSourceDimension.idl
new file mode 100644
index 000000000000..9f5961731a05
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataPilotSourceDimension.idl
@@ -0,0 +1,174 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DataPilotSourceDimension_idl__
+#define __com_sun_star_sheet_DataPilotSourceDimension_idl__
+
+#ifndef __com_sun_star_container_XNamed_idl__
+#include <com/sun/star/container/XNamed.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XHierarchiesSupplier_idl__
+#include <com/sun/star/sheet/XHierarchiesSupplier.idl>
+#endif
+
+#ifndef __com_sun_star_util_XCloneable_idl__
+#include <com/sun/star/util/XCloneable.idl>
+#endif
+
+#ifndef __com_sun_star_beans_XPropertySet_idl__
+#include <com/sun/star/beans/XPropertySet.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_DataPilotFieldOrientation_idl__
+#include <com/sun/star/sheet/DataPilotFieldOrientation.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_GeneralFunction_idl__
+#include <com/sun/star/sheet/GeneralFunction.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_TableFilterField_idl__
+#include <com/sun/star/sheet/TableFilterField.idl>
+#endif
+
+//=============================================================================
+
+ module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a dimension in a data pilot source.
+
+ <p>A dimension is equivalent to a column of a cell range in a spreadsheet
+ used for a data pilot field.</p>
+
+ <p>In more complex data sources, a dimension may contain several
+ hierarchies, which consolidate items of a complex data type, called
+ levels.</p>
+
+ <p>Example: In a database, a column contains date values. This column
+ will be a dimension of the data pilot source. One hierarchy may contain
+ the 3 levels year, month, day. Another hierarchy may contain the 2 levels
+ year and week number.</p>
+
+ @see com::sun::star::sheet::DataPilotSource
+ @see com::sun::star::sheet::DataPilotTable
+ */
+published service DataPilotSourceDimension
+{
+ //-------------------------------------------------------------------------
+
+ /** provides access to the name of the dimension, i.e. used in
+ collections.
+ */
+ interface com::sun::star::container::XNamed;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to the collection of hierarchies of this dimension.
+ */
+ interface com::sun::star::sheet::XHierarchiesSupplier;
+
+ //-------------------------------------------------------------------------
+
+ /** supports duplicating the dimension.
+
+ <p>A dimension may be used several times in a data pilot table,
+ i.e. as row field and data field.</p>
+ */
+ interface com::sun::star::util::XCloneable;
+
+ //-------------------------------------------------------------------------
+
+//!published service PropertySet
+ /** provides access to the properties.
+ */
+ interface com::sun::star::beans::XPropertySet;
+
+ //=========================================================================
+
+ /** returns the name of the dimension from which this dimension was
+ cloned, or <NULL/> if it was not cloned.
+ */
+ [readonly, property] com::sun::star::container::XNamed Original;
+
+ //-------------------------------------------------------------------------
+
+ /** contains <TRUE/> if this is the dimension used to layout the
+ different data dimensions.
+ */
+ [readonly, property] boolean IsDataLayoutDimension;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies where the dimension is used.
+ */
+ [property] com::sun::star::sheet::DataPilotFieldOrientation Orientation;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the position of the dimension within its orientation.
+ */
+ [property] long Position;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies how data are aggregated.
+ */
+ [property] com::sun::star::sheet::GeneralFunction Function;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies which hierarchy of the dimension is used.
+
+ @see com::sun::star::sheet::DataPilotSourceHierarchies
+ */
+ [property] long UsedHierarchy;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies which values are used.
+ */
+ [property] sequence< com::sun::star::sheet::TableFilterField > Filter;
+
+ //-------------------------------------------------------------------------
+
+ /** contains flags that control the usage of the dimension.
+
+ @see com::sun::star::sheet::DimensionFlags
+ */
+ [readonly, property, optional] long Flags;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DataPilotSourceDimensions.idl b/offapi/com/sun/star/sheet/DataPilotSourceDimensions.idl
new file mode 100644
index 000000000000..080f529e90e4
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataPilotSourceDimensions.idl
@@ -0,0 +1,62 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DataPilotSourceDimensions_idl__
+#define __com_sun_star_sheet_DataPilotSourceDimensions_idl__
+
+#ifndef __com_sun_star_container_XNameAccess_idl__
+#include <com/sun/star/container/XNameAccess.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents the collection of dimensions in a data pilot source.
+
+ @see com::sun::star::sheet::DataPilotSource
+ */
+published service DataPilotSourceDimensions
+{
+ //-------------------------------------------------------------------------
+
+ /** provides access by name to the dimensions in the collection.
+
+ @see com::sun::star::sheet::DataPilotSourceDimension
+ */
+ interface com::sun::star::container::XNameAccess;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DataPilotSourceHierarchies.idl b/offapi/com/sun/star/sheet/DataPilotSourceHierarchies.idl
new file mode 100644
index 000000000000..f283e157c8e1
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataPilotSourceHierarchies.idl
@@ -0,0 +1,64 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DataPilotSourceHierarchies_idl__
+#define __com_sun_star_sheet_DataPilotSourceHierarchies_idl__
+
+#ifndef __com_sun_star_container_XNameAccess_idl__
+#include <com/sun/star/container/XNameAccess.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents the collection of hierarchies in a data pilot source
+ dimension.
+
+ @see com::sun::star::sheet::DataPilotSourceDimension
+ @see com::sun::star::sheet::DataPilotSource
+ */
+published service DataPilotSourceHierarchies
+{
+ //-------------------------------------------------------------------------
+
+ /** provides access by name to the hierarchies in the collection.
+
+ @see com::sun::star::sheet::DataPilotSourceHierarchy
+ */
+ interface com::sun::star::container::XNameAccess;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DataPilotSourceHierarchy.idl b/offapi/com/sun/star/sheet/DataPilotSourceHierarchy.idl
new file mode 100644
index 000000000000..ad300f8845e6
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataPilotSourceHierarchy.idl
@@ -0,0 +1,72 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DataPilotSourceHierarchy_idl__
+#define __com_sun_star_sheet_DataPilotSourceHierarchy_idl__
+
+#ifndef __com_sun_star_container_XNamed_idl__
+#include <com/sun/star/container/XNamed.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XLevelsSupplier_idl__
+#include <com/sun/star/sheet/XLevelsSupplier.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a hierarchy in a data pilot source dimension.
+
+ @see com::sun::star::sheet::DataPilotSourceDimension
+ @see com::sun::star::sheet::DataPilotSource
+ */
+published service DataPilotSourceHierarchy
+{
+ //-------------------------------------------------------------------------
+
+ /** provides access to the name of the hierarchy, i.e. used in
+ collections.
+ */
+ interface com::sun::star::container::XNamed;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to the collection of levels of this hierarchy.
+ */
+ interface com::sun::star::sheet::XLevelsSupplier;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DataPilotSourceLevel.idl b/offapi/com/sun/star/sheet/DataPilotSourceLevel.idl
new file mode 100644
index 000000000000..c94880508a2c
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataPilotSourceLevel.idl
@@ -0,0 +1,110 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DataPilotSourceLevel_idl__
+#define __com_sun_star_sheet_DataPilotSourceLevel_idl__
+
+#ifndef __com_sun_star_container_XNamed_idl__
+#include <com/sun/star/container/XNamed.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XMembersSupplier_idl__
+#include <com/sun/star/sheet/XMembersSupplier.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XDataPilotMemberResults_idl__
+#include <com/sun/star/sheet/XDataPilotMemberResults.idl>
+#endif
+
+#ifndef __com_sun_star_beans_XPropertySet_idl__
+#include <com/sun/star/beans/XPropertySet.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_GeneralFunction_idl__
+#include <com/sun/star/sheet/GeneralFunction.idl>
+#endif
+
+//=============================================================================
+
+ module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a level in a data pilot source hierarchy.
+
+ @see com::sun::star::sheet::DataPilotSourceHierarchy
+ @see com::sun::star::sheet::DataPilotSource
+ */
+published service DataPilotSourceLevel
+{
+ //-------------------------------------------------------------------------
+
+ /** provides access to the name of the level, i.e. used in collections.
+ */
+ interface com::sun::star::container::XNamed;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to the collection of members of this level.
+ */
+ interface com::sun::star::sheet::XMembersSupplier;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to a sequence of results of this level.
+ */
+ interface com::sun::star::sheet::XDataPilotMemberResults;
+
+ //-------------------------------------------------------------------------
+
+//!published service PropertySet
+ /** provides access to the properties.
+ */
+ interface com::sun::star::beans::XPropertySet;
+
+ //=========================================================================
+
+ /** specifies the subtotals that are inserted for the level.
+
+ <p>The subtotals are calculated with the members of this level.</p>
+ */
+ [property] sequence< com::sun::star::sheet::GeneralFunction > SubTotals;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether empty members are shown.
+ */
+ [property] boolean ShowEmpty;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DataPilotSourceLevels.idl b/offapi/com/sun/star/sheet/DataPilotSourceLevels.idl
new file mode 100644
index 000000000000..5e09f51de346
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataPilotSourceLevels.idl
@@ -0,0 +1,63 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DataPilotSourceLevels_idl__
+#define __com_sun_star_sheet_DataPilotSourceLevels_idl__
+
+#ifndef __com_sun_star_container_XNameAccess_idl__
+#include <com/sun/star/container/XNameAccess.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents the collection of levels in a data pilot source hierarchy.
+
+ @see com::sun::star::sheet::DataPilotSourceHierarchy
+ @see com::sun::star::sheet::DataPilotSource
+ */
+published service DataPilotSourceLevels
+{
+ //-------------------------------------------------------------------------
+
+ /** provides access by name to the levels in the collection.
+
+ @see com::sun::star::sheet::DataPilotSourceLevel
+ */
+ interface com::sun::star::container::XNameAccess;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DataPilotSourceMember.idl b/offapi/com/sun/star/sheet/DataPilotSourceMember.idl
new file mode 100644
index 000000000000..754fc955c30a
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataPilotSourceMember.idl
@@ -0,0 +1,99 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DataPilotSourceMember_idl__
+#define __com_sun_star_sheet_DataPilotSourceMember_idl__
+
+#ifndef __com_sun_star_container_XNamed_idl__
+#include <com/sun/star/container/XNamed.idl>
+#endif
+
+#ifndef __com_sun_star_beans_XPropertySet_idl__
+#include <com/sun/star/beans/XPropertySet.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a member in a data pilot source level.
+
+ <p>Members are the data items that will appear in a data pilot table
+ as row headers and column headers of the data range (if used in
+ row or column dimensions), or to calculate the values of the
+ data range (if used in data dimensions).</p>
+
+ @see com::sun::star::sheet::DataPilotSourceLevel
+ @see com::sun::star::sheet::DataPilotSource
+ */
+published service DataPilotSourceMember
+{
+ //-------------------------------------------------------------------------
+
+ /** provides access to the name of the member.
+
+ <p>This may be the textual representation of a numerical value.</p>
+ */
+ interface com::sun::star::container::XNamed;
+
+ //-------------------------------------------------------------------------
+
+//!published service PropertySet
+ /** provides access to the properties.
+ */
+ interface com::sun::star::beans::XPropertySet;
+
+ //=========================================================================
+
+ /** specifies whether the member is visible.
+ */
+ [property] boolean IsVisible;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether details for the member are shown.
+ */
+ [property] boolean ShowDetails;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the member's position in its hierarchy level if sorting
+ is manual.
+
+ @since OOo 2.4.0
+ */
+ [optional, property] boolean Position;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DataPilotSourceMembers.idl b/offapi/com/sun/star/sheet/DataPilotSourceMembers.idl
new file mode 100644
index 000000000000..02a93be58504
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataPilotSourceMembers.idl
@@ -0,0 +1,63 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DataPilotSourceMembers_idl__
+#define __com_sun_star_sheet_DataPilotSourceMembers_idl__
+
+#ifndef __com_sun_star_container_XNameAccess_idl__
+#include <com/sun/star/container/XNameAccess.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents the collection of members in a data pilot source level.
+
+ @see com::sun::star::sheet::DataPilotSourceLevel
+ @see com::sun::star::sheet::DataPilotSource
+ */
+published service DataPilotSourceMembers
+{
+ //-------------------------------------------------------------------------
+
+ /** provides access by name to the members in the collection.
+
+ @see com::sun::star::sheet::DataPilotSourceMember
+ */
+ interface com::sun::star::container::XNameAccess;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DataPilotTable.idl b/offapi/com/sun/star/sheet/DataPilotTable.idl
new file mode 100644
index 000000000000..c2385c46e5fa
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataPilotTable.idl
@@ -0,0 +1,80 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DataPilotTable_idl__
+#define __com_sun_star_sheet_DataPilotTable_idl__
+
+#ifndef __com_sun_star_sheet_XDataPilotDescriptor_idl__
+#include <com/sun/star/sheet/XDataPilotDescriptor.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XDataPilotTable_idl__
+#include <com/sun/star/sheet/XDataPilotTable.idl>
+#endif
+
+#ifndef __com_sun_star_util_XModifyBroadcaster_idl__
+#include <com/sun/star/util/XModifyBroadcaster.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a data pilot table on a spreadsheet.
+ */
+published service DataPilotTable
+{
+ //-------------------------------------------------------------------------
+
+ /** provides access to the layout settings of the data pilot table.
+ */
+ interface com::sun::star::sheet::XDataPilotDescriptor;
+
+ //-------------------------------------------------------------------------
+
+ /** provides methods to control a data pilot table.
+ */
+ interface com::sun::star::sheet::XDataPilotTable;
+
+ //-------------------------------------------------------------------------
+
+ /** allows notification of modifications to the data pilot table.
+
+ @since OOo 3.3.0
+
+ */
+ [optional] interface com::sun::star::util::XModifyBroadcaster;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DataPilotTableHeaderData.idl b/offapi/com/sun/star/sheet/DataPilotTableHeaderData.idl
new file mode 100644
index 000000000000..c98e4bbc2820
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataPilotTableHeaderData.idl
@@ -0,0 +1,79 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DataPilotTableHeaderData_idl__
+#define __com_sun_star_sheet_DataPilotTableHeaderData_idl__
+
+#include <com/sun/star/sheet/DataPilotFieldFilter.idl>
+#include <com/sun/star/sheet/DataResult.idl>
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** information about a cell within the column or row header area of a DataPilot table.
+
+ This struct contains information about a particular cell located within the
+ column or row header area of a DataPilot table. This is the type that is
+ contained in <member>DataPilotTablePositionData::PositionData</member> when
+ the value of <member>DataPilotTablePositionData::PositionType</member> is
+ either <const>DataPilotTablePositionType::ROW_HEADER</const> or
+ <const>DataPilotTablePositionType::COLUMN_HEADER</const>.
+
+ @see com::sun::star::sheet::DataPilotTablePositionData
+ @see com::sun::star::sheet::DataPilotTablePositionType
+ @see com::sun::star::sheet::DataPilotFieldFilter
+ @see com::sun::star::sheet::DataResult
+
+ @since OOo 3.0.0
+ */
+struct DataPilotTableHeaderData
+{
+ /** number of dimensions */
+ long Dimension;
+
+ /** hierarchy */
+ long Hierarchy;
+
+ /** level */
+ long Level;
+
+ /** flag */
+ long Flags;
+
+ /** member name */
+ string MemberName;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DataPilotTablePositionData.idl b/offapi/com/sun/star/sheet/DataPilotTablePositionData.idl
new file mode 100644
index 000000000000..aa97b0dba922
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataPilotTablePositionData.idl
@@ -0,0 +1,90 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DataPilotTablePositionData_idl__
+#define __com_sun_star_sheet_DataPilotTablePositionData_idl__
+
+#include <com/sun/star/sheet/DataPilotFieldFilter.idl>
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** This structure contains information on a cell within a DataPilot table.
+
+ <p>This structure contains information on a particular cell within a DataPilot
+ table, and is used to retrieve its metadata. The <member>PositionType</member>
+ member specifies in which sub-area of the table the cell is positioned, which
+ in turn determines the type of metadata contained in the <member>PositionData</member>
+ member.</p>
+
+ @see com::sun::star::sheet::DataPilotTablePositionType
+ @see com::sun::star::sheet::DataPiotTableResultData
+ @see com::sun::star::sheet::DataPiotTableHeaderData
+
+ @since OOo 3.0.0
+ */
+struct DataPilotTablePositionData
+{
+ //-------------------------------------------------------------------------
+
+ /** This parameter specifies which sub-area of a DataPilot table a given
+ cell is positioned. See <type>DataPilotTablePositionType</type>
+ for how to interpret the value of this parameter.
+
+ @see com::sun::star::sheet::DataPilotTablePositionType
+ */
+ long PositionType;
+
+ //-------------------------------------------------------------------------
+
+ /** <p>This member contains a structure of different types depending on the
+ position type specified in <member>PositionType</member> member.</p>
+
+ <p>When the value of <member>PositionType</member> is
+ <const>DataPilotTablePositionType::RESULT</const>, <member>DataPilotTablePositionData::PositionData</member>
+ contains an instance of type <type>DataPilotTableResultData</type>,
+ whereas when the value of <member>DataPilotTablePositionData::PositionType</member>
+ is either <const>DataPilotTablePositionType::ROW_HEADER</const>
+ or <const>DataPilotTablePositionType::COLUMN_HEADER</const>, then the
+ <member>PositionData</member> member contains an instance of type <type>
+ DataPilotTableHeaderData</type>.</p>
+
+ @see com::sun::star::sheet::DataPiotTableResultData
+ @see com::sun::star::sheet::DataPiotTableHeaderData
+ */
+ any PositionData;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DataPilotTablePositionType.idl b/offapi/com/sun/star/sheet/DataPilotTablePositionType.idl
new file mode 100644
index 000000000000..8ef568079f12
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataPilotTablePositionType.idl
@@ -0,0 +1,78 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DataPilotTablePositionType_idl__
+#define __com_sun_star_sheet_DataPilotTablePositionType_idl__
+
+module com { module sun { module star { module sheet {
+
+//============================================================================
+
+/** specifies in which sub-area a cell is positioned within a DataPilot table.
+
+ @see com::sun::star::sheet::DataPilotTablePositionData
+ @see com::sun::star::sheet::DataPilotTableResultData
+ @see com::sun::star::sheet::DataPilotTableHeaderData
+
+ @since OOo 3.0.0
+ */
+constants DataPilotTablePositionType
+{
+ //------------------------------------------------------------------------
+
+ /** indicates that the specified cell is not in the DataPilot table. */
+ const long NOT_IN_TABLE = 0;
+
+ //------------------------------------------------------------------------
+
+ /** indicates that the specified cell is within the result area. */
+ const long RESULT = 1;
+
+ //------------------------------------------------------------------------
+
+ /** indicates that the specified cell is within the row header area. */
+ const long ROW_HEADER = 2;
+
+ //------------------------------------------------------------------------
+
+ /** indicates that the specified cell is within the column header area. */
+ const long COLUMN_HEADER = 3;
+
+ //------------------------------------------------------------------------
+
+ /** indicates that the specified cell is within the table but in areas
+ other than the result or header areas. */
+ const long OTHER = 4;
+};
+
+//============================================================================
+
+}; }; }; };
+
+
+
+#endif
diff --git a/offapi/com/sun/star/sheet/DataPilotTableResultData.idl b/offapi/com/sun/star/sheet/DataPilotTableResultData.idl
new file mode 100644
index 000000000000..b0adfdfa4e3d
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataPilotTableResultData.idl
@@ -0,0 +1,86 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DataPilotTableResultData_idl__
+#define __com_sun_star_sheet_DataPilotTableResultData_idl__
+
+#include <com/sun/star/sheet/DataPilotFieldFilter.idl>
+#include <com/sun/star/sheet/DataResult.idl>
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** information about a cell positioned within the result area of a DataPilot table.
+
+ <p><type>DataPilotTableResultData</type> contains information about a
+ particular cell positioned within the result area of a DataPilot table.</p>
+
+ @see com::sun::star::sheet::DataPilotTablePositionData
+ @see com::sun::star::sheet::DataPilotTablePositionType
+ @see com::sun::star::sheet::DataPilotFieldFilter
+ @see com::sun::star::sheet::DataResult
+
+ @since OOo 3.0.0
+ */
+struct DataPilotTableResultData
+{
+ //------------------------------------------------------------------------
+
+ /** This is a set of filter criteria that can be used to re-create those
+ data rows that contribute to the value shown in the cell.
+
+ @see com::sun::star::sheet::DataPilotFieldFilter
+ */
+ sequence< DataPilotFieldFilter > FieldFilters;
+
+ //------------------------------------------------------------------------
+
+ /** This is a 0-based index that specifies which data field the data displayed
+ in the cell is for; the value of 0 means the cell is for the first data
+ field, 1 for the second, and so on.
+ */
+ long DataFieldIndex;
+
+ //------------------------------------------------------------------------
+
+ /** more information about the result contained in the
+ <type>DataResult</type> type.
+
+ @see com::sun::star::sheet::DataResult
+ */
+ DataResult Result;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DataPilotTables.idl b/offapi/com/sun/star/sheet/DataPilotTables.idl
new file mode 100644
index 000000000000..f8dc00fa8e27
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataPilotTables.idl
@@ -0,0 +1,77 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DataPilotTables_idl__
+#define __com_sun_star_sheet_DataPilotTables_idl__
+
+#ifndef __com_sun_star_sheet_XDataPilotTables_idl__
+#include <com/sun/star/sheet/XDataPilotTables.idl>
+#endif
+#ifndef __com_sun_star_container_XEnumerationAccess_idl__
+#include <com/sun/star/container/XEnumerationAccess.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a collection of data pilot tables.
+ */
+published service DataPilotTables
+{
+ //-------------------------------------------------------------------------
+
+ /** provides access to the data pilot objects in this collection.
+ */
+ interface com::sun::star::sheet::XDataPilotTables;
+
+ //-------------------------------------------------------------------------
+
+ /** creates an enumeration of all data pilot tables.
+
+ @see com::sun::star::sheet::DataPilotTablesEnumeration
+ */
+ interface com::sun::star::container::XEnumerationAccess;
+
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access the contained data pilot tables by index.
+
+ @see com::sun::star::sheet::DataPilotTable
+ */
+ interface com::sun::star::container::XIndexAccess;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DataPilotTablesEnumeration.idl b/offapi/com/sun/star/sheet/DataPilotTablesEnumeration.idl
new file mode 100644
index 000000000000..a8b52e65425c
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataPilotTablesEnumeration.idl
@@ -0,0 +1,62 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DataPilotTablesEnumeration_idl__
+#define __com_sun_star_sheet_DataPilotTablesEnumeration_idl__
+
+#ifndef __com_sun_star_container_XEnumeration_idl__
+#include <com/sun/star/container/XEnumeration.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents an enumeration of data pilot tables.
+
+ @see com::sun::star::sheet::DataPilotTable
+ */
+published service DataPilotTablesEnumeration
+{
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access the data pilot tables in the enumeration.
+
+ @see com::sun::star::sheet::DataPilotTable
+ */
+ interface com::sun::star::container::XEnumeration;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DataResult.idl b/offapi/com/sun/star/sheet/DataResult.idl
new file mode 100644
index 000000000000..70f213f4011e
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataResult.idl
@@ -0,0 +1,62 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DataResult_idl__
+#define __com_sun_star_sheet_DataResult_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** contains the result of one element in the data pilot data array.
+
+ @see com::sun::star::sheet::XDataPilotResults
+ */
+published struct DataResult
+{
+ /** contains boolean flags describing the result.
+
+ @see com::sun::star::sheet::DataResultFlags
+ */
+ long Flags;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the result value.
+ */
+ double Value;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DataResultFlags.idl b/offapi/com/sun/star/sheet/DataResultFlags.idl
new file mode 100644
index 000000000000..07f116a81c35
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataResultFlags.idl
@@ -0,0 +1,69 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DataResultFlags_idl__
+#define __com_sun_star_sheet_DataResultFlags_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** used to specify the result type of one element in the data pilot
+ data array.
+
+ @see com::sun::star::sheet::DataResult
+ */
+published constants DataResultFlags
+{
+ //-------------------------------------------------------------------------
+
+ /** The element contains data.
+ */
+ const long HASDATA = 1;
+
+ //-------------------------------------------------------------------------
+
+ /** The element contains a subtotal.
+ */
+ const long SUBTOTAL = 2;
+
+ //-------------------------------------------------------------------------
+
+ /** The element has an error.
+ */
+ const long ERROR = 4;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DatabaseImportDescriptor.idl b/offapi/com/sun/star/sheet/DatabaseImportDescriptor.idl
new file mode 100644
index 000000000000..eab5d41f3adf
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DatabaseImportDescriptor.idl
@@ -0,0 +1,94 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DatabaseImportDescriptor_idl__
+#define __com_sun_star_sheet_DatabaseImportDescriptor_idl__
+
+#ifndef __com_sun_star_sheet_DataImportMode_idl__
+#include <com/sun/star/sheet/DataImportMode.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a description of how data from an external database is
+ imported.
+
+ @see com::sun::star::sheet::XDatabaseRange
+ */
+published service DatabaseImportDescriptor
+{
+ //-------------------------------------------------------------------------
+
+ /** enables importing and specifies from what type of source data is
+ imported.
+ */
+ [property] com::sun::star::sheet::DataImportMode SourceType;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the name of the database from which data is imported.
+ */
+ [property] string DatabaseName;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the table, query, or statement from which data is imported.
+
+ <p>The meaning of this is determined by the
+ <member>DatabaseImportDescriptor::SourceType</member> attribute.</p>
+ */
+ [property] string SourceObject;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether the SQL statement is given directly to the database
+ or is parsed before.
+
+ @since OOo 2.0.0
+
+ */
+ [optional, property] boolean IsNative;
+
+ //-------------------------------------------------------------------------
+
+ /** indicates a connection URL, which locates a database driver.
+ @since OOo 2.0.0
+ */
+ [optional, property] string ConnectionResource;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DatabaseRange.idl b/offapi/com/sun/star/sheet/DatabaseRange.idl
new file mode 100644
index 000000000000..ef8ddb62e508
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DatabaseRange.idl
@@ -0,0 +1,172 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_sheet_DatabaseRange_idl__
+#define __com_sun_star_sheet_DatabaseRange_idl__
+
+#ifndef __com_sun_star_sheet_XDatabaseRange_idl__
+#include <com/sun/star/sheet/XDatabaseRange.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XCellRangeReferrer_idl__
+#include <com/sun/star/sheet/XCellRangeReferrer.idl>
+#endif
+
+#ifndef __com_sun_star_beans_XPropertySet_idl__
+#include <com/sun/star/beans/XPropertySet.idl>
+#endif
+
+#ifndef __com_sun_star_container_XNamed_idl__
+#include <com/sun/star/container/XNamed.idl>
+#endif
+
+#ifndef __com_sun_star_util_XRefreshable_idl__
+#include <com/sun/star/util/XRefreshable.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellRangeAddress_idl__
+#include <com/sun/star/table/CellRangeAddress.idl>
+#endif
+
+
+//=============================================================================
+
+ module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a database range in a spreadsheet document.
+
+ <p>A database range is a name for a cell range that also stores filtering,
+ sorting, subtotal and data import settings and options.</p>
+
+ @see com::sun::star::sheet::DatabaseRanges
+ */
+published service DatabaseRange
+{
+ // DocMerge: empty anyway
+ interface com::sun::star::sheet::XDatabaseRange;
+
+ // DocMerge: empty anyway
+ interface com::sun::star::sheet::XCellRangeReferrer;
+
+ // DocMerge: empty anyway
+ interface com::sun::star::beans::XPropertySet;
+
+ // DocMerge: empty anyway
+ interface com::sun::star::container::XNamed;
+
+ [optional] interface com::sun::star::util::XRefreshable;
+
+ //-------------------------------------------------------------------------
+
+ // DocMerge from xml: property com::sun::star::sheet::DatabaseRange::MoveCells
+ /** if this property is set, columns or rows are inserted or deleted
+ when the size of the range is changed by an update operation.
+ */
+ [property] boolean MoveCells;
+
+ //-------------------------------------------------------------------------
+
+ // DocMerge from xml: property com::sun::star::sheet::DatabaseRange::KeepFormats
+ /** if this property is set, cell formats are extended
+ when the size of the range is changed by an update operation.
+ */
+ [property] boolean KeepFormats;
+
+ //-------------------------------------------------------------------------
+
+ // DocMerge from xml: property com::sun::star::sheet::DatabaseRange::StripData
+ /** if this property is set, the cell contents within the database
+ range are left out when the document is saved.
+ */
+ [property] boolean StripData;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether the AutoFilter is enabled or not.
+
+ @since OOo 1.1.2
+ */
+ [optional, property] boolean AutoFilter;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether the filter criteria should be taken from a CellRange.
+
+ @since OOo 1.1.2
+ */
+ [optional, property] boolean UseFilterCriteriaSource;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the range where the filter can find the filter criterias.
+ <p>This is only used if <member>SheetFilterDescriptor::UseFilterCriteriaSource</member> is <TRUE/>.</p>
+
+ @since OOo 1.1.2
+ */
+ [optional, property] com::sun::star::table::CellRangeAddress FilterCriteriaSource;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the time between two refresh actions in seconds.
+
+ @since OOo 2.0.0
+ */
+ [optional, property] long RefreshPeriod;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether the imported data is only a selection of the database.
+
+ @since OOo 2.0.0
+ */
+ [optional, property] boolean FromSelection;
+
+ //-------------------------------------------------------------------------
+
+ /** returns the index used to refer to this range in token arrays.
+
+ <p>A token describing a database range shall contain the op-code
+ obtained from the <const>FormulaMapGroupSpecialOffset::DB_AREA</const>
+ and this index as data part.</p>
+
+ @see com::sun::star::sheet::FormulaToken
+ @see com::sun::star::sheet::FormulaMapGroupSpecialOffset::DB_AREA
+
+ @since OOo 3.0
+ */
+ [optional, readonly, property] long TokenIndex;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+/*=============================================================================
+
+=============================================================================*/
+#endif
diff --git a/offapi/com/sun/star/sheet/DatabaseRanges.idl b/offapi/com/sun/star/sheet/DatabaseRanges.idl
new file mode 100644
index 000000000000..aed4f86aa308
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DatabaseRanges.idl
@@ -0,0 +1,83 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DatabaseRanges_idl__
+#define __com_sun_star_sheet_DatabaseRanges_idl__
+
+#ifndef __com_sun_star_sheet_XDatabaseRanges_idl__
+#include <com/sun/star/sheet/XDatabaseRanges.idl>
+#endif
+#ifndef __com_sun_star_container_XEnumerationAccess_idl__
+#include <com/sun/star/container/XEnumerationAccess.idl>
+#endif
+#ifndef __com_sun_star_container_XIndexAccess_idl__
+#include <com/sun/star/container/XIndexAccess.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a collection of database ranges in a spreadsheet document.
+
+ @see com::sun::star::sheet::SpreadsheetDocument
+ */
+published service DatabaseRanges
+{
+ //-------------------------------------------------------------------------
+
+ /** provides access to the database ranges and to insert and remove them.
+ */
+ interface com::sun::star::sheet::XDatabaseRanges;
+
+ //-------------------------------------------------------------------------
+
+ /** creates an enumeration of all database ranges.
+
+ @see com::sun::star::sheet::DatabaseRangesEnumeration
+ */
+ interface com::sun::star::container::XEnumerationAccess;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to the database ranges in the collection via index.
+
+ @see com::sun::star::sheet::DatabaseRange
+
+ */
+ interface com::sun::star::container::XIndexAccess;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DatabaseRangesEnumeration.idl b/offapi/com/sun/star/sheet/DatabaseRangesEnumeration.idl
new file mode 100644
index 000000000000..56dde2367734
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DatabaseRangesEnumeration.idl
@@ -0,0 +1,62 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DatabaseRangesEnumeration_idl__
+#define __com_sun_star_sheet_DatabaseRangesEnumeration_idl__
+
+#ifndef __com_sun_star_container_XEnumeration_idl__
+#include <com/sun/star/container/XEnumeration.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents an enumeration of database ranges.
+
+ @see com::sun::star::sheet::DatabaseRange
+ */
+published service DatabaseRangesEnumeration
+{
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access the database ranges in the enumeration.
+
+ @see com::sun::star::sheet::DatabaseRange
+ */
+ interface com::sun::star::container::XEnumeration;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DimensionFlags.idl b/offapi/com/sun/star/sheet/DimensionFlags.idl
new file mode 100644
index 000000000000..2edb2368e863
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DimensionFlags.idl
@@ -0,0 +1,74 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DimensionFlags_idl__
+#define __com_sun_star_sheet_DimensionFlags_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** used to specify flags for a dimension in a data pilot source.
+
+ @see com::sun::star::sheet::DataPilotSourceDimension
+ */
+published constants DimensionFlags
+{
+ //-------------------------------------------------------------------------
+
+ /** The dimension cannot be used in column orientation.
+ */
+ const long NO_COLUMN_ORIENTATION = 1;
+
+ //-------------------------------------------------------------------------
+
+ /** The dimension cannot be used in row orientation.
+ */
+ const long NO_ROW_ORIENTATION = 2;
+
+ //-------------------------------------------------------------------------
+
+ /** The dimension cannot be used in page orientation.
+ */
+ const long NO_PAGE_ORIENTATION = 4;
+
+ //-------------------------------------------------------------------------
+
+ /** The dimension cannot be used in data orientation.
+ */
+ const long NO_DATA_ORIENTATION = 8;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DocumentSettings.idl b/offapi/com/sun/star/sheet/DocumentSettings.idl
new file mode 100644
index 000000000000..4d7d6fdf3c81
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DocumentSettings.idl
@@ -0,0 +1,137 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_sheet_DocumentSettings_idl__
+#define __com_sun_star_sheet_DocumentSettings_idl__
+
+#ifndef __com_sun_star_beans_XPropertySet_idl__
+#include <com/sun/star/beans/XPropertySet.idl>
+#endif
+
+#ifndef __com_sun_star_util_Color_idl__
+#include <com/sun/star/util/Color.idl>
+#endif
+
+#ifndef __com_sun_star_document_Settings_idl__
+#include <com/sun/star/document/Settings.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** describes properties that apply to the whole spreadsheet document.
+
+ <p>For settings that affect view properties, these settings apply to
+ subsequently created views and are saved with the document, while
+ <type>SpreadsheetViewSettings</type> can be used to alter a specific
+ view that is already open.</p>
+ */
+published service DocumentSettings
+{
+ service com::sun::star::document::Settings;
+
+ //-------------------------------------------------------------------------
+ /** provides access to the properties.
+ */
+ interface com::sun::star::beans::XPropertySet;
+
+ //-------------------------------------------------------------------------
+
+ /** enables display of zero-values.
+ */
+ [optional, property] boolean ShowZeroValues;
+
+ /** controls whether a marker is shown for notes in cells.
+ */
+ [optional, property] boolean ShowNotes;
+
+ /** enables the display of the cell grid.
+ */
+ [optional, property] boolean ShowGrid;
+
+ /** specifies the color in which the cell grid is displayed.
+ */
+ [optional, property] com::sun::star::util::Color GridColor;
+
+ /** enables display of page breaks.
+ */
+ [optional, property] boolean ShowPageBreaks;
+
+ /** enables the column and row headers of the view.
+ */
+ [optional, property] boolean HasColumnRowHeaders;
+
+ /** enables the sheet tabs of the view.
+ */
+ [optional, property] boolean HasSheetTabs;
+
+ /** enables the display of outline symbols.
+ */
+ [optional, property] boolean IsOutlineSymbolsSet;
+
+ /** enables the restriction of object movement and resizing
+ of drawing objects to the raster.
+ */
+ [optional, property] boolean IsSnapToRaster;
+
+ /** enables the display of the drawing object raster.
+ */
+ [optional, property] boolean RasterIsVisible;
+
+ /** specifies the distance between horizontal grid elements
+ in 1/100 mm.
+ */
+ [optional, property] long RasterResolutionX;
+
+ /** specifies the distance between vertical grid elements
+ in 1/100 mm.
+ */
+ [optional, property] long RasterResolutionY;
+
+ /** specifies the number of subdivisions between two horiontal
+ grid elements.
+ */
+ [optional, property] long RasterSubdivisionX;
+
+ /** specifies the number of subdivisions between two vertical
+ grid elements.
+ */
+ [optional, property] long RasterSubdivisionY;
+
+ /** enables the synchronization of horizontal and vertical
+ grid settings in the user interface.
+ */
+ [optional, property] boolean IsRasterAxisSynchronized;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/sheet/ExternalDocLink.idl b/offapi/com/sun/star/sheet/ExternalDocLink.idl
new file mode 100644
index 000000000000..357b0b4812ba
--- /dev/null
+++ b/offapi/com/sun/star/sheet/ExternalDocLink.idl
@@ -0,0 +1,54 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_ExternalDocLink_idl__
+#define __com_sun_star_sheet_ExternalDocLink_idl__
+
+#include <com/sun/star/sheet/XExternalDocLink.idl>
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** Represents a single external document link.
+
+ <p>An external document link contains cached data used for external cell
+ and cell range references as well as external range names.</p>
+
+ @see com::sun::star::sheet::XExternalDocLink
+
+ @since OOo 3.1.0
+ */
+service ExternalDocLink : XExternalDocLink
+{
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/sheet/ExternalDocLinks.idl b/offapi/com/sun/star/sheet/ExternalDocLinks.idl
new file mode 100644
index 000000000000..f0f216a0caf9
--- /dev/null
+++ b/offapi/com/sun/star/sheet/ExternalDocLinks.idl
@@ -0,0 +1,52 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_ExternalDocLinks_idl__
+#define __com_sun_star_sheet_ExternalDocLinks_idl__
+
+#include <com/sun/star/sheet/XExternalDocLinks.idl>
+#include <com/sun/star/sheet/XSpreadsheetDocument.idl>
+
+module com { module sun { module star { module sheet {
+
+/** Represents a collection of external document links.
+
+ <p>An external document link contains cached data used for external cell
+ and cell range references as well as external range names.</p>
+
+ @see com::sun::star::sheet::ExternalDocLink
+ @see com::sun::star::sheet::XExternalDocLinks
+
+ @since OOo 3.1.0
+ */
+service ExternalDocLinks : XExternalDocLinks
+{
+};
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/sheet/ExternalLinkInfo.idl b/offapi/com/sun/star/sheet/ExternalLinkInfo.idl
new file mode 100644
index 000000000000..fa8590f7f678
--- /dev/null
+++ b/offapi/com/sun/star/sheet/ExternalLinkInfo.idl
@@ -0,0 +1,77 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_sheet_ExternalLinkInfo_idl__
+#define __com_sun_star_sheet_ExternalLinkInfo_idl__
+
+#ifndef __com_sun_star_sheet_ExternalLinkType_idl__
+#include <com/sun/star/sheet/ExternalLinkType.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+/** describes an external link in a formula.
+
+ @since OOo3.1
+ */
+struct ExternalLinkInfo
+{
+ //-------------------------------------------------------------------------
+ /** Link type, one of <type>ExternalLinkType</type> constants.
+ */
+ long Type;
+
+ //-------------------------------------------------------------------------
+ /** Location of this link type.
+
+ <p>Modes used:
+
+ <ol>
+ <li>If <member>Type</member> is <const>ExternalLinkType::EXTERNAL
+ </const>, this member shall contain a <atom>string</atom> with the
+ <em>URI</em> of a document. The formula that would need this
+ information for example would contain <code>=[1]Sheet1!A1</code> or
+ <code>='[1]Sheet name'!A1</code> where <em>[1]</em> does resolve to
+ the URI contained in the member <member>Data</member>. Note that the
+ quotes cover both, the document name and the sheet name.</li>
+
+ <li>If <member>Type</member> is <const>ExternalLinkType::DDE</const>,
+ this member shall contain a <type>DDELinkInfo</type> describing
+ service name, topic, and all known items of a DDE link.</li>
+ </ol></p>
+ */
+ any Data;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/sheet/ExternalLinkType.idl b/offapi/com/sun/star/sheet/ExternalLinkType.idl
new file mode 100644
index 000000000000..7803a4c3b291
--- /dev/null
+++ b/offapi/com/sun/star/sheet/ExternalLinkType.idl
@@ -0,0 +1,64 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_ExternalLinkType_idl__
+#define __com_sun_star_sheet_ExternalLinkType_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** Constants designating the link type in
+ <type>ExternalLinkInfo</type>, used with
+ <member>FormulaParser::ExternalLinks</member>.
+
+ @since OOo3.1
+ */
+constants ExternalLinkType
+{
+ /** Unknown element type
+ */
+ const long UNKNOWN = 0;
+
+ /** URL of an external document.
+ */
+ const long DOCUMENT = 1;
+
+ /** DDE link.
+ */
+ const long DDE = 2;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/ExternalReference.idl b/offapi/com/sun/star/sheet/ExternalReference.idl
new file mode 100644
index 000000000000..8096846f726a
--- /dev/null
+++ b/offapi/com/sun/star/sheet/ExternalReference.idl
@@ -0,0 +1,96 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_ExternalReference_idl__
+#define __com_sun_star_sheet_ExternalReference_idl__
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** Data structure to store information about an external reference. An
+ external reference can be either a single cell reference, a cell range
+ reference, or a named range.
+
+ @see FormulaMapGroupSpecialOffset::PUSH
+
+ @since OOo 3.1
+ */
+struct ExternalReference
+{
+ //-------------------------------------------------------------------------
+
+ /** Index of an externally linked document. Each externally-linked document
+ has a unique index value.
+
+ <p>You can get the index value of an external document from the
+ corresponding <type scope="com::sun::star::sheet">ExternalDocLink</type>
+ instance through its attribute <type scope="com::sun::star::sheet::ExternalDocLink">TokenIndex</type>.</p>
+
+ @see com::sun::star::sheet::ExternalDocLink
+ @see com::sun::star::sheet::ExternalDocLink::TokenIndex
+ */
+ long Index;
+
+#if 0
+ //-------------------------------------------------------------------------
+
+ /** Name of the sheet that the external reference points to.
+
+ <p>In case of a cell range reference that spans across multiple
+ sheets, this is the name of the first sheet in that range.</p>
+
+ <p>Note that an external range name ignores this value at the moment,
+ but <i>it may make use of this data in the future when Calc supports a
+ sheet-specific range name.</i></p>
+ */
+ string SheetName;
+#endif
+
+ //-------------------------------------------------------------------------
+
+ /** Reference data.
+
+ <p>This can store either <type>SingleReference</type> for a single
+ cell reference, <type>ComplexReference</type> for a cell range
+ reference, or simply a <type>string</type> for a defined name.</p>
+
+ <p>The <member>SingleReference::Sheet</member> member shall contain
+ the index of the external sheet cache containing the values of the
+ externally referenced cells.</p>
+
+ @see com::sun::star::sheet::SingleReference
+ @see com::sun::star::sheet::ComplexReference
+ */
+ any Reference;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/sheet/ExternalSheetCache.idl b/offapi/com/sun/star/sheet/ExternalSheetCache.idl
new file mode 100644
index 000000000000..93652a6058f7
--- /dev/null
+++ b/offapi/com/sun/star/sheet/ExternalSheetCache.idl
@@ -0,0 +1,52 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_ExternalSheetCache_idl__
+#define __com_sun_star_sheet_ExternalSheetCache_idl__
+
+#include <com/sun/star/sheet/XExternalSheetCache.idl>
+
+module com { module sun { module star { module sheet {
+
+/** A single sheet cache for an external document.
+
+ <p>This cached data is used for external cell and cell range references,
+ as well as external range names. An <type scope="com::sun::star::sheet">ExternalDocLink</type>
+ instance contains a set of these sheet caches.</p>
+
+ @see com::sun::star::sheet::ExternalDocLink
+ @see com::sun::star::sheet::XExternalSheetCache
+
+ @since OOo 3.1.0
+ */
+service ExternalSheetCache : XExternalSheetCache
+{
+};
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/sheet/FillDateMode.idl b/offapi/com/sun/star/sheet/FillDateMode.idl
new file mode 100644
index 000000000000..5cd9dff07dab
--- /dev/null
+++ b/offapi/com/sun/star/sheet/FillDateMode.idl
@@ -0,0 +1,75 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_FillDateMode_idl__
+#define __com_sun_star_sheet_FillDateMode_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** used to specify how an arithmetic date series is calculated.
+
+ @see com::sun::star::sheet::FillMode
+ */
+published enum FillDateMode
+{
+ //-------------------------------------------------------------------------
+
+ /** for every new value a single day is added.
+ */
+ FILL_DATE_DAY,
+
+ //-------------------------------------------------------------------------
+
+ /** for evey new value a single day is added, but Saturdays and
+ Sundays are skipped.
+ */
+ FILL_DATE_WEEKDAY,
+
+ //-------------------------------------------------------------------------
+
+ /** for every new value one month is added (day keeps unchanged).
+ */
+ FILL_DATE_MONTH,
+
+ //-------------------------------------------------------------------------
+
+ /** for every new value one year is added (day and month keep unchanged).
+ */
+ FILL_DATE_YEAR
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/FillDirection.idl b/offapi/com/sun/star/sheet/FillDirection.idl
new file mode 100644
index 000000000000..b9c43e0527d8
--- /dev/null
+++ b/offapi/com/sun/star/sheet/FillDirection.idl
@@ -0,0 +1,73 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_FillDirection_idl__
+#define __com_sun_star_sheet_FillDirection_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** used to specify the direction of filling cells, for example,
+ with a series.
+ */
+published enum FillDirection
+{
+ //-------------------------------------------------------------------------
+
+ /** specifies that rows are filled from top to bottom.
+ */
+ TO_BOTTOM,
+
+ //-------------------------------------------------------------------------
+
+ /** specifies that columns are filled from left to right.
+ */
+ TO_RIGHT,
+
+ //-------------------------------------------------------------------------
+
+ /** specifies that rows are filled from bottom to top.
+ */
+ TO_TOP,
+
+ //-------------------------------------------------------------------------
+
+ /** specifies that columns are filled from right to left.
+ */
+ TO_LEFT
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/FillMode.idl b/offapi/com/sun/star/sheet/FillMode.idl
new file mode 100644
index 000000000000..74bb98001e9a
--- /dev/null
+++ b/offapi/com/sun/star/sheet/FillMode.idl
@@ -0,0 +1,93 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_FillMode_idl__
+#define __com_sun_star_sheet_FillMode_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** used to specify the series type used to fill cells.
+ */
+published enum FillMode
+{
+ //-------------------------------------------------------------------------
+
+ /** specifies a constant series.
+
+ <p>All cells are filled with the same value.</p>
+ */
+ SIMPLE,
+
+ //-------------------------------------------------------------------------
+
+ /** specifies an arithmetic series.
+
+ <p>Cell by cell, the value used to fill the cells is increased
+ by an additive value.</p>
+ */
+ LINEAR,
+
+ //-------------------------------------------------------------------------
+
+ /** specifies a geometric series.
+
+ <p>Cell by cell, the value used to fill the cells is multiplied
+ by a specified value.</p>
+ */
+ GROWTH,
+
+ //-------------------------------------------------------------------------
+
+ /** specifies an arithmetic series for date values.
+
+ <p>Cell by cell, the value used to fill the cells is increased
+ by a specified number of days</p>
+
+ @see com::sun::star::sheet::FillDateMode
+ */
+ DATE,
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the use of a user-defined list.
+
+ <p>The cells are filled using a user-defined series.</p>
+ */
+ AUTO
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/FilterConnection.idl b/offapi/com/sun/star/sheet/FilterConnection.idl
new file mode 100644
index 000000000000..16d57a4f84b1
--- /dev/null
+++ b/offapi/com/sun/star/sheet/FilterConnection.idl
@@ -0,0 +1,61 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_FilterConnection_idl__
+#define __com_sun_star_sheet_FilterConnection_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** used to specify how two conditions in a filter descriptor are
+ connected.
+ */
+published enum FilterConnection
+{
+ //-------------------------------------------------------------------------
+
+ /** both conditions have to be fulfilled.
+ */
+ AND,
+
+ //-------------------------------------------------------------------------
+
+ /** at least one of the conditions has to be fulfilled.
+ */
+ OR
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/FilterFormulaParser.idl b/offapi/com/sun/star/sheet/FilterFormulaParser.idl
new file mode 100644
index 000000000000..9de579584c2d
--- /dev/null
+++ b/offapi/com/sun/star/sheet/FilterFormulaParser.idl
@@ -0,0 +1,52 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_FilterFormulaParser_idl__
+#define __com_sun_star_sheet_FilterFormulaParser_idl__
+
+#include <com/sun/star/sheet/XFilterFormulaParser.idl>
+#include <com/sun/star/lang/XComponent.idl>
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** A service used to implement parsing and printing formula strings in a
+ specific formula language.
+ */
+service FilterFormulaParser : XFilterFormulaParser
+{
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/FilterOperator.idl b/offapi/com/sun/star/sheet/FilterOperator.idl
new file mode 100644
index 000000000000..8497fd39213d
--- /dev/null
+++ b/offapi/com/sun/star/sheet/FilterOperator.idl
@@ -0,0 +1,120 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_FilterOperator_idl__
+#define __com_sun_star_sheet_FilterOperator_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** specifies the type of a single condition in a filter descriptor.
+ */
+published enum FilterOperator
+{
+ //-------------------------------------------------------------------------
+
+ /** selects empty entries.
+ */
+ EMPTY,
+
+ //-------------------------------------------------------------------------
+
+ /** selects non-empty entries.
+ */
+ NOT_EMPTY,
+
+ //-------------------------------------------------------------------------
+
+ /** value has to be equal to the specified value.
+ */
+ EQUAL,
+
+ //-------------------------------------------------------------------------
+
+ /** value must not be equal to the specified value.
+ */
+ NOT_EQUAL,
+
+ //-------------------------------------------------------------------------
+
+ /** value has to be greater than the specified value.
+ */
+ GREATER,
+
+ //-------------------------------------------------------------------------
+
+ /** value has to be greater than or equal to the specified value.
+ */
+ GREATER_EQUAL,
+
+ //-------------------------------------------------------------------------
+
+ /** value has to be less than the specified value.
+ */
+ LESS,
+
+ //-------------------------------------------------------------------------
+
+ /** value has to be less than or equal to the specified value.
+ */
+ LESS_EQUAL,
+
+ //-------------------------------------------------------------------------
+
+ /** selects a specified number of entries with the greatest values.
+ */
+ TOP_VALUES,
+
+ //-------------------------------------------------------------------------
+
+ /** selects a specified percentage of entries with the greatest values.
+ */
+ TOP_PERCENT,
+
+ //-------------------------------------------------------------------------
+
+ /** selects a specified number of entries with the lowest values.
+ */
+ BOTTOM_VALUES,
+
+ //-------------------------------------------------------------------------
+
+ /** selects a specified percentage of entries with the lowest values.
+ */
+ BOTTOM_PERCENT
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/FilterOperator2.idl b/offapi/com/sun/star/sheet/FilterOperator2.idl
new file mode 100644
index 000000000000..a8a3e182f1b0
--- /dev/null
+++ b/offapi/com/sun/star/sheet/FilterOperator2.idl
@@ -0,0 +1,161 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_FilterOperator2_idl__
+#define __com_sun_star_sheet_FilterOperator2_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** specifies the type of a single condition in a filter descriptor.
+
+ <p>This constants group extends the <type>FilterOperator</type> enum by
+ additional filter operators.</p>
+
+ @since OOo 3.2
+ */
+published constants FilterOperator2
+{
+
+ //-------------------------------------------------------------------------
+
+ /** selects empty entries.
+ */
+ const long EMPTY = 0;
+
+ //-------------------------------------------------------------------------
+
+ /** selects non-empty entries.
+ */
+ const long NOT_EMPTY = 1;
+
+ //-------------------------------------------------------------------------
+
+ /** value has to be equal to the specified value.
+ */
+ const long EQUAL = 2;
+
+ //-------------------------------------------------------------------------
+
+ /** value must not be equal to the specified value.
+ */
+ const long NOT_EQUAL = 3;
+
+ //-------------------------------------------------------------------------
+
+ /** value has to be greater than the specified value.
+ */
+ const long GREATER = 4;
+
+ //-------------------------------------------------------------------------
+
+ /** value has to be greater than or equal to the specified value.
+ */
+ const long GREATER_EQUAL = 5;
+
+ //-------------------------------------------------------------------------
+
+ /** value has to be less than the specified value.
+ */
+ const long LESS = 6;
+
+ //-------------------------------------------------------------------------
+
+ /** value has to be less than or equal to the specified value.
+ */
+ const long LESS_EQUAL = 7;
+
+ //-------------------------------------------------------------------------
+
+ /** selects a specified number of entries with the greatest values.
+ */
+ const long TOP_VALUES = 8;
+
+ //-------------------------------------------------------------------------
+
+ /** selects a specified percentage of entries with the greatest values.
+ */
+ const long TOP_PERCENT = 9;
+
+ //-------------------------------------------------------------------------
+
+ /** selects a specified number of entries with the lowest values.
+ */
+ const long BOTTOM_VALUES = 10;
+
+ //-------------------------------------------------------------------------
+
+ /** selects a specified percentage of entries with the lowest values.
+ */
+ const long BOTTOM_PERCENT = 11;
+
+ //-------------------------------------------------------------------------
+
+ /** selects contains entries.
+ */
+ const long CONTAINS = 12;
+
+ //-------------------------------------------------------------------------
+
+ /** selects does-not-contain entries.
+ */
+ const long DOES_NOT_CONTAIN = 13;
+
+ //-------------------------------------------------------------------------
+
+ /** selects begins-with entries.
+ */
+ const long BEGINS_WITH = 14;
+
+ //-------------------------------------------------------------------------
+
+ /** selects does-not-begin-with entries.
+ */
+ const long DOES_NOT_BEGIN_WITH = 15;
+ //-------------------------------------------------------------------------
+
+ /** selects ends-with entries.
+ */
+ const long ENDS_WITH = 16;
+
+ //-------------------------------------------------------------------------
+
+ /** selects does-not-end-with entries.
+ */
+ const long DOES_NOT_END_WITH = 17;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/FormulaLanguage.idl b/offapi/com/sun/star/sheet/FormulaLanguage.idl
new file mode 100644
index 000000000000..74c1fe9d4b14
--- /dev/null
+++ b/offapi/com/sun/star/sheet/FormulaLanguage.idl
@@ -0,0 +1,75 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_FormulaLanguage_idl__
+#define __com_sun_star_sheet_FormulaLanguage_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** Constants designating the formula language used with
+ <type>XFormulaOpCodeMapper</type> methods.
+ */
+constants FormulaLanguage
+{
+ /** Function names and operators as defined by the OASIS
+ OpenDocument Format (ODF) Formula specification (ODFF aka
+ OpenFormula).
+ */
+ const long ODFF = 0;
+
+ /** Function names and operators as used in ODF documents prior to
+ the ODFF specification, up to ODF v1.1.
+ */
+ const long ODF_11 = 1;
+
+ /** Function names and operators as used in the English language
+ user interface.
+ */
+ const long ENGLISH = 2;
+
+ /** Function names and operators as used in the current native
+ language user interface.
+ */
+ const long NATIVE = 3;
+
+ /** Function names and operators as used in the English version of
+ Excel. This formula language is also used in VBA formulas and
+ OOXML import/export.
+ */
+ const long XL_ENGLISH = 4;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/FormulaMapGroup.idl b/offapi/com/sun/star/sheet/FormulaMapGroup.idl
new file mode 100644
index 000000000000..45223c16264d
--- /dev/null
+++ b/offapi/com/sun/star/sheet/FormulaMapGroup.idl
@@ -0,0 +1,77 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_FormulaMapGroup_idl__
+#define __com_sun_star_sheet_FormulaMapGroup_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** Constants of bit masks used with
+ <member>XFormurmulaOpCodeMapper::getAvailableMappings</member> to
+ specify for which group of symbols the mappings are to be obtained.
+
+ If no bit is set, a sequence of special mappings is returned in the
+ order that is defined by <type>FormulaMapGroupSpecialOffset</type>.
+ Note that the special group and other groups are mutual exclusive.
+ */
+constants FormulaMapGroup
+{
+ /** Group of op-codes without a string symbol.
+
+ @see FormulaMapGroupSpecialOffset
+ */
+ const long SPECIAL = 0;
+
+ /** Separators and parentheses */
+ const long SEPARATORS = 0x00000001;
+
+ /** Separators and parentheses for constant arrays */
+ const long ARRAY_SEPARATORS = 0x00000002;
+
+ /** Unary operators */
+ const long UNARY_OPERATORS = 0x00000004;
+
+ /** Binary operators */
+ const long BINARY_OPERATORS = 0x00000008;
+
+ /** Functions */
+ const long FUNCTIONS = 0x00000010;
+
+ /** All groups except SPECIAL */
+ const long ALL_EXCEPT_SPECIAL = 0x7fffffff;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/FormulaMapGroupSpecialOffset.idl b/offapi/com/sun/star/sheet/FormulaMapGroupSpecialOffset.idl
new file mode 100644
index 000000000000..06008bbc059d
--- /dev/null
+++ b/offapi/com/sun/star/sheet/FormulaMapGroupSpecialOffset.idl
@@ -0,0 +1,210 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_FormulaMapGroupSpecialOffset_idl__
+#define __com_sun_star_sheet_FormulaMapGroupSpecialOffset_idl__
+
+// ===========================================================================
+
+module com { module sun { module star { module sheet {
+
+// ===========================================================================
+
+/** Constants designating the offsets within the sequence returned by
+ <member>XFormulaOpCodeMapper::getAvailableMappings</member> when
+ called for group <const>FormulaMapGroup::SPECIAL</const>.
+
+ <p>The number of constants may grow in future versions!</p>
+ */
+constants FormulaMapGroupSpecialOffset
+{
+ // -----------------------------------------------------------------------
+
+ /** Formula tokens containing the op-code obtained from this offset
+ describe a formula operand token that will be pushed onto the formula
+ stack while the formula is interpreted.
+
+ <p>The <member>FormulaToken::Data</member> member shall contain one of
+ the following values:</p>
+
+ <ul>
+ <li>A value of type <atom>double</atom> for literal floating-point
+ constants.</li>
+ <li>A <atom>string</atom> for literal text.</li>
+ <li>A <atom dim="[][]">any</atom> for a literal array. The contained
+ values shall be of type <atom>double</atom> or atom>string</atom>.
+ Floating-point values and strings may occur together in an array.</li>
+ <li>A struct of type <type>SingleReference</type> for a reference to a
+ single cell in the own document.</li>
+ <li>A struct of type <type>ComplexReference</type> for a reference to
+ a range of cells in the own document.</li>
+ <li>A struct of type <type>ExternalReference</type> for a reference to
+ a cell, a range of cells, or a defined name in an external document.</li>
+ </ul>
+ */
+ const long PUSH = 0;
+
+ // -----------------------------------------------------------------------
+
+ const long CALL = 1;
+
+ // -----------------------------------------------------------------------
+
+ /** Formula tokens containing the op-code obtained from this offset
+ instruct the formula interpreter to immediately stop interpreting the
+ formula.
+
+ <p>The <member>FormulaToken::Data</member> member is not used
+ and should be empty.</p>
+ */
+ const long STOP = 2;
+
+ // -----------------------------------------------------------------------
+
+ /** Formula tokens containing the op-code obtained from this offset
+ describe the reference to an external function (e.g. add-in function)
+ used in formulas.
+
+ <p>The <member>FormulaToken::Data</member> member shall contain a
+ <atom>string</atom> with the programmatical name of the function, e.g.
+ "com.sun.star.sheet.addin.Analysis.getEomonth" for the EOMONTH
+ function from the Analsysis add-in.</p>
+ */
+ const long EXTERNAL = 3;
+
+ // -----------------------------------------------------------------------
+
+ /** Formula tokens containing the op-code obtained from this offset
+ describe the reference to a defined name (also known as named range)
+ used in formulas.
+
+ <p>The <member>FormulaToken::Data</member> member shall contain an
+ integer value of type <atom>long</atom> specifying the index of the
+ defined name. This index can be obtained from the defined name using
+ its <member>NamedRange::TokenIndex</member> property.</p>
+
+ @see NamedRange
+ */
+ const long NAME = 4;
+
+ // -----------------------------------------------------------------------
+
+ /** Formula tokens containing the op-code obtained from this offset
+ describe an invalid name that resolves to the #NAME? error in formulas.
+
+ <p>The <member>FormulaToken::Data</member> member is not used
+ and should be empty.</p>
+ */
+ const long NO_NAME = 5;
+
+ // -----------------------------------------------------------------------
+
+ /** Formula tokens containing the op-code obtained from this offset
+ describe an empty function parameter.
+
+ <p>Example: In the formula <code>=SUM(1;;2)</code> the second
+ parameter is empty and represented by a formula token containing the
+ "missing" op-code.</p>
+
+ <p>The <member>FormulaToken::Data</member> member is not used
+ and should be empty.</p>
+ */
+ const long MISSING = 6;
+
+ // -----------------------------------------------------------------------
+
+ /** Formula tokens containing the op-code obtained from this offset
+ describe "bad" data in a formula, e.g. data the formula parser was not
+ able to parse.
+
+ <p>The <member>FormulaToken::Data</member> member shall contain a
+ <atom>string</string> with the bad data. This string will be displayed
+ literally in the formula.</p>
+ */
+ const long BAD = 7;
+
+ // -----------------------------------------------------------------------
+
+ /** Formula tokens containing the op-code obtained from this offset
+ describe whitespace characters within the string representation of a
+ formula.
+
+ <p>Whitespace characters in formulas are used for readability and do
+ not affect the result of the formula.</p>
+
+ <p>The <member>FormulaToken::Data</member> member shall contain a
+ positive integer value of type <atom>long</atom> specifying the number
+ of space characters.</p>
+
+ <p>Attention: This may change in next versions to support other
+ characters than simple space characters (e.g. line feeds, horizontal
+ tabulators, non-breakable spaces).</p>
+ */
+ const long SPACES = 8;
+
+ // -----------------------------------------------------------------------
+
+ const long MAT_REF = 9;
+
+ // -----------------------------------------------------------------------
+
+ /** Formula tokens containing the op-code obtained from this offset
+ describe the reference to a database range used in formulas.
+
+ <p>The <member>FormulaToken::Data</member> member shall contain an
+ integer value of type <atom>long</atom> specifying the index of the
+ database range. This index can be obtained from the database range
+ using its <member>DatabaseRange::TokenIndex</member> property.</p>
+
+ @see DatabaseRange
+ */
+ const long DB_AREA = 10;
+
+ // -----------------------------------------------------------------------
+
+ /** Formula tokens containing the op-code obtained from this offset
+ describe the reference to a macro function called in a formula.
+
+ <p>The <member>FormulaToken::Data</member> member shall contain a
+ <atom>string</atom> specifying the name of the macro function.</p>
+ */
+ const long MACRO = 11;
+
+ // -----------------------------------------------------------------------
+
+ const long COL_ROW_NAME = 12;
+
+ // -----------------------------------------------------------------------
+
+};
+
+// ===========================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/FormulaOpCodeMapEntry.idl b/offapi/com/sun/star/sheet/FormulaOpCodeMapEntry.idl
new file mode 100644
index 000000000000..0c80854db357
--- /dev/null
+++ b/offapi/com/sun/star/sheet/FormulaOpCodeMapEntry.idl
@@ -0,0 +1,65 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_FormulaOpCodeMapEntry_idl__
+#define __com_sun_star_sheet_FormulaOpCodeMapEntry_idl__
+
+#ifndef __com_sun_star_sheet_FormulaToken_idl__
+#include <com/sun/star/sheet/FormulaToken.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** contains a mapping from a formula name (function name, operator,
+ ...) to the OpCode used by the formula compiler.
+ */
+struct FormulaOpCodeMapEntry
+{
+ //-------------------------------------------------------------------------
+
+ /** The function name, or operator.
+ */
+ string Name;
+
+ //-------------------------------------------------------------------------
+
+ /** The corresponding mapping.
+ */
+ FormulaToken Token;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/FormulaParser.idl b/offapi/com/sun/star/sheet/FormulaParser.idl
new file mode 100644
index 000000000000..27fba17ff0c0
--- /dev/null
+++ b/offapi/com/sun/star/sheet/FormulaParser.idl
@@ -0,0 +1,118 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_FormulaParser_idl__
+#define __com_sun_star_sheet_FormulaParser_idl__
+
+#ifndef __com_sun_star_beans_PropertySet_idl__
+#include <com/sun/star/beans/PropertySet.idl>
+#endif
+#ifndef __com_sun_star_sheet_XFormulaParser_idl__
+#include <com/sun/star/sheet/XFormulaParser.idl>
+#endif
+#ifndef __com_sun_star_sheet_FormulaOpCodeMapEntry_idl__
+#include <com/sun/star/sheet/FormulaOpCodeMapEntry.idl>
+#endif
+#ifndef __com_sun_star_sheet_ExternalLinkInfo_idl__
+#include <com/sun/star/sheet/ExternalLinkInfo.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+service FormulaParser
+{
+ // ------------------------------------------------------------------------
+
+ service com::sun::star::beans::PropertySet;
+
+ // ------------------------------------------------------------------------
+
+ interface XFormulaParser;
+
+ // ------------------------------------------------------------------------
+
+ /** specifies whether to use English parser and formatter.
+
+ <p>Note: When changing this, an already existing <member>OpCodeMap
+ </member> needs to be recreated internally, so for performance reasons
+ set this <em>before</em> setting the <member>OpCodeMap</member>.
+ */
+ [property] boolean CompileEnglish;
+
+ // ------------------------------------------------------------------------
+
+ /** specifies which address reference style convention to use when
+ parsing a formula string.
+
+ @see AddressConvention
+ */
+ [property] short FormulaConvention;
+
+ // ------------------------------------------------------------------------
+
+ [property] boolean IgnoreLeadingSpaces;
+
+ // ------------------------------------------------------------------------
+
+ [property] string ParameterSeparator;
+
+ // ------------------------------------------------------------------------
+
+ /** contains the complete mapping of names to op-codes.
+
+ <p>Names and symbols not defined here lead to a parser/print error.</p>
+ */
+ [property] sequence< FormulaOpCodeMapEntry > OpCodeMap;
+
+ // ------------------------------------------------------------------------
+
+ /** contains a list of external links referenced in formulas.
+
+ <p>Use of this property depends on the <member>FormulaConvention
+ </member> in use. It is relevant only for <const>
+ AddressConvention::XL_OOX</const> to map indices to external
+ documents. The sequence must be in the order of indices used. Note
+ that indices are 1-based, the sequence must start with an empty
+ element.</p>
+
+ @since OOo3.1
+ */
+ [property] sequence< ExternalLinkInfo > ExternalLinks;
+
+ // ------------------------------------------------------------------------
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/FormulaResult.idl b/offapi/com/sun/star/sheet/FormulaResult.idl
new file mode 100644
index 000000000000..dbd1b67723de
--- /dev/null
+++ b/offapi/com/sun/star/sheet/FormulaResult.idl
@@ -0,0 +1,66 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_FormulaResult_idl__
+#define __com_sun_star_sheet_FormulaResult_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** used to select different result types of cell formulas.
+ */
+published constants FormulaResult
+{
+ //-------------------------------------------------------------------------
+
+ /** selects numeric results.
+ */
+ const long VALUE = 1;
+
+ //-------------------------------------------------------------------------
+
+ /** selects non-numeric results.
+ */
+ const long STRING = 2;
+
+ //-------------------------------------------------------------------------
+
+ /** selects errors.
+ */
+ const long ERROR = 4;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/FormulaToken.idl b/offapi/com/sun/star/sheet/FormulaToken.idl
new file mode 100644
index 000000000000..b9558fa164fb
--- /dev/null
+++ b/offapi/com/sun/star/sheet/FormulaToken.idl
@@ -0,0 +1,64 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_FormulaToken_idl__
+#define __com_sun_star_sheet_FormulaToken_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** contains a single token within a formula.
+ */
+struct FormulaToken
+{
+ //-------------------------------------------------------------------------
+
+ /** is the OpCode of the token.
+
+ @see com::sun::star::sheet::XFormulaOpCodeMapper
+ */
+ long OpCode;
+
+ //-------------------------------------------------------------------------
+
+ /** is additional data in the token, depending on the OpCode.
+
+ @see com::sun::star::sheet::NamedRange::TokenIndex
+ @see com::sun::star::sheet::DatabaseRange::TokenIndex
+ */
+ any Data;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/FunctionAccess.idl b/offapi/com/sun/star/sheet/FunctionAccess.idl
new file mode 100644
index 000000000000..0bce84d3627d
--- /dev/null
+++ b/offapi/com/sun/star/sheet/FunctionAccess.idl
@@ -0,0 +1,95 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_FunctionAccess_idl__
+#define __com_sun_star_sheet_FunctionAccess_idl__
+
+#ifndef __com_sun_star_sheet_SpreadsheetDocumentSettings_idl__
+#include <com/sun/star/sheet/SpreadsheetDocumentSettings.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XFunctionAccess_idl__
+#include <com/sun/star/sheet/XFunctionAccess.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** allows generic access to all spreadsheet functions.
+ */
+published service FunctionAccess
+{
+ //-------------------------------------------------------------------------
+
+ /** contributes properties to control the behaviour of some functions
+ (i.e. NullDate, IgnoreCase, RegularExpressions).
+ */
+ service com::sun::star::sheet::SpreadsheetDocumentSettings;
+
+ //-------------------------------------------------------------------------
+
+ /** provides calculating the result of a spreadsheet function.
+ */
+ interface com::sun::star::sheet::XFunctionAccess;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether the function call is performed as array function
+ call.
+
+ <p>If set to <TRUE/>, the result of the function call will be
+ calculated similar to array formulas in a spreadsheet document. The
+ return value of the function call will usually be a sequence of
+ sequences containing the values of the resulting array. Example: If the
+ function ABS is called for a 3x2 cell range, the result will be a 3x2
+ array containing the absolute values of the numbers contained in the
+ specified cell range.</p>
+
+ <p>If set to <FALSE/>, the result of the function call will be
+ calculated similar to simple cell formulas in a spreadsheet document.
+ The return value of the function call will usually be a single value.
+ Of course, some functions always return an array, for example the
+ MUNIT function.</p>
+
+ <p>For compatibility with older versions, the default value of this
+ property is <TRUE/>.</p>
+
+ @since OOo 3.3
+ */
+ [optional, property] boolean IsArrayFunction;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/FunctionArgument.idl b/offapi/com/sun/star/sheet/FunctionArgument.idl
new file mode 100644
index 000000000000..de413811ce4b
--- /dev/null
+++ b/offapi/com/sun/star/sheet/FunctionArgument.idl
@@ -0,0 +1,69 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_FunctionArgument_idl__
+#define __com_sun_star_sheet_FunctionArgument_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** contains the description of a single argument within a spreadsheet
+ function.
+
+ @see com::sun::star::sheet::FunctionDescription
+ */
+published struct FunctionArgument
+{
+ //-------------------------------------------------------------------------
+
+ /** the name of the argument.
+ */
+ string Name;
+
+ //-------------------------------------------------------------------------
+
+ /** a description of the argument.
+ */
+ string Description;
+
+ //-------------------------------------------------------------------------
+
+ /** determines whether the argument is optional.
+ */
+ boolean IsOptional;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/FunctionCategory.idl b/offapi/com/sun/star/sheet/FunctionCategory.idl
new file mode 100644
index 000000000000..323813080f14
--- /dev/null
+++ b/offapi/com/sun/star/sheet/FunctionCategory.idl
@@ -0,0 +1,116 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_FunctionCategory_idl__
+#define __com_sun_star_sheet_FunctionCategory_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** used to specify the category of a spreadsheet function.
+ */
+published constants FunctionCategory
+{
+ //-------------------------------------------------------------------------
+
+ /** specifies a database function.
+ */
+ const long DATABASE = 1;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies a function that calculates with dates and/or times.
+ */
+ const long DATETIME = 2;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies a financial function.
+ */
+ const long FINANCIAL = 3;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies a function that returns information about the cell,
+ the cell contents or the current formula.
+ */
+ const long INFORMATION = 4;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies a boolean function.
+ */
+ const long LOGICAL = 5;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies a common mathematical function
+ */
+ const long MATHEMATICAL = 6;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies a matrix function.
+ */
+ const long MATRIX = 7;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies a statistical function
+ */
+ const long STATISTICAL = 8;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies a function that returns information using the spreadsheet
+ contents or specific cell positions.
+ */
+ const long SPREADSHEET = 9;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies a text function.
+ */
+ const long TEXT = 10;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies a common add-in function.
+ */
+ const long ADDIN = 11;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/FunctionDescription.idl b/offapi/com/sun/star/sheet/FunctionDescription.idl
new file mode 100644
index 000000000000..2e36034ea76b
--- /dev/null
+++ b/offapi/com/sun/star/sheet/FunctionDescription.idl
@@ -0,0 +1,89 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_FunctionDescription_idl__
+#define __com_sun_star_sheet_FunctionDescription_idl__
+
+#ifndef __com_sun_star_sheet_FunctionArgument_idl__
+#include <com/sun/star/sheet/FunctionArgument.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** collects all properties used to describe a function.
+
+ @see com::sun::star::sheet::FunctionDescriptions
+ */
+published service FunctionDescription
+{
+ //-------------------------------------------------------------------------
+
+ /** returns the function's unique identifier.
+
+ @see com::sun::star::sheet::XFunctionDescriptions
+ */
+ [readonly, property] long Id;
+
+ //-------------------------------------------------------------------------
+
+ /** returns the function's category.
+
+ @see com::sun::star::sheet::FunctionCategory
+ */
+ [readonly, property] long Category;
+
+ //-------------------------------------------------------------------------
+
+ /** returns the localized function's name.
+ */
+ [readonly, property] string Name;
+
+ //-------------------------------------------------------------------------
+
+ /** returns a localized description of the function.
+ */
+ [readonly, property] string Description;
+
+ //-------------------------------------------------------------------------
+
+ /** returns a sequence of localized descriptions of the function's
+ arguments (in the order specified by the function).
+ */
+ [readonly, property] sequence< com::sun::star::sheet::FunctionArgument > Arguments;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/FunctionDescriptionEnumeration.idl b/offapi/com/sun/star/sheet/FunctionDescriptionEnumeration.idl
new file mode 100644
index 000000000000..6749ea019903
--- /dev/null
+++ b/offapi/com/sun/star/sheet/FunctionDescriptionEnumeration.idl
@@ -0,0 +1,62 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_FunctionDescriptionEnumeration_idl__
+#define __com_sun_star_sheet_FunctionDescriptionEnumeration_idl__
+
+#ifndef __com_sun_star_container_XEnumeration_idl__
+#include <com/sun/star/container/XEnumeration.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents an enumeration of Function Descriptions.
+
+ @see com::sun::star::sheet::FunctionDescription
+ */
+published service FunctionDescriptionEnumeration
+{
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access the Function Descriptions in the enumeration.
+
+ @see com::sun::star::sheet::FunctionDescription
+ */
+ interface com::sun::star::container::XEnumeration;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/FunctionDescriptions.idl b/offapi/com/sun/star/sheet/FunctionDescriptions.idl
new file mode 100644
index 000000000000..842979bb4d1e
--- /dev/null
+++ b/offapi/com/sun/star/sheet/FunctionDescriptions.idl
@@ -0,0 +1,91 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_FunctionDescriptions_idl__
+#define __com_sun_star_sheet_FunctionDescriptions_idl__
+
+#ifndef __com_sun_star_sheet_XFunctionDescriptions_idl__
+#include <com/sun/star/sheet/XFunctionDescriptions.idl>
+#endif
+
+#ifndef __com_sun_star_container_XNameAccess_idl__
+#include <com/sun/star/container/XNameAccess.idl>
+#endif
+#ifndef __com_sun_star_container_XEnumerationAccess_idl__
+#include <com/sun/star/container/XEnumerationAccess.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a collection of function descriptions for all built-in
+ functions as well as add-in functions available in the spreadsheet
+ application.
+
+ <p>All container access methods return a sequence of
+ <type scope="com::sun::star::beans">PropertyValue</type> structs.
+ The properties contained in the sequence are collected in the
+ service <type>FunctionDescription</type>.</p>
+ */
+published service FunctionDescriptions
+{
+ //-------------------------------------------------------------------------
+
+ /** provides access to the property sequence of a function description
+ via function index or identifier.
+ */
+ interface com::sun::star::sheet::XFunctionDescriptions;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to the property sequence of a function description
+ via function name.
+
+ <p>The localized uppercase name of the function has to be used
+ here.</p>
+ */
+ interface com::sun::star::container::XNameAccess;
+
+ //-------------------------------------------------------------------------
+
+ /** creates an enumeration of all function descriptions.
+
+ @see com::sun::star::sheet::FunctionDescriptionEnumeration
+ */
+ interface com::sun::star::container::XEnumerationAccess;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/GeneralFunction.idl b/offapi/com/sun/star/sheet/GeneralFunction.idl
new file mode 100644
index 000000000000..abf954cbec3e
--- /dev/null
+++ b/offapi/com/sun/star/sheet/GeneralFunction.idl
@@ -0,0 +1,128 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_GeneralFunction_idl__
+#define __com_sun_star_sheet_GeneralFunction_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** used to specify a function to be calculated from values.
+ */
+published enum GeneralFunction
+{
+ //-------------------------------------------------------------------------
+
+ /** nothing is calculated.
+ */
+ NONE,
+
+ //-------------------------------------------------------------------------
+
+ /** function is determined automatically.
+
+ <p>If the values are all numerical, SUM is used, otherwise COUNT.</p>
+ */
+ AUTO,
+
+ //-------------------------------------------------------------------------
+
+ /** sum of all numerical values is calculated.
+ */
+ SUM,
+
+ //-------------------------------------------------------------------------
+
+ /** all values, including non-numerical values, are counted.
+ */
+ COUNT,
+
+ //-------------------------------------------------------------------------
+
+ /** average of all numerical values is calculated.
+ */
+ AVERAGE,
+
+ //-------------------------------------------------------------------------
+
+ /** maximum value of all numerical values is calculated.
+ */
+ MAX,
+
+ //-------------------------------------------------------------------------
+
+ /** minimum value of all numerical values is calculated.
+ */
+ MIN,
+
+ //-------------------------------------------------------------------------
+
+ /** product of all numerical values is calculated.
+ */
+ PRODUCT,
+
+ //-------------------------------------------------------------------------
+
+ /** numerical values are counted.
+ */
+ COUNTNUMS,
+
+ //-------------------------------------------------------------------------
+
+ /** standard deviation is calculated based on a sample.
+ */
+ STDEV,
+
+ //-------------------------------------------------------------------------
+
+ /** standard deviation is calculated based on the entire population.
+ */
+ STDEVP,
+
+ //-------------------------------------------------------------------------
+
+ /** variance is calculated based on a sample.
+ */
+ VAR,
+
+ //-------------------------------------------------------------------------
+
+ /** variance is calculated based on the entire population.
+ */
+ VARP
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/GlobalSheetSettings.idl b/offapi/com/sun/star/sheet/GlobalSheetSettings.idl
new file mode 100644
index 000000000000..508992fd1785
--- /dev/null
+++ b/offapi/com/sun/star/sheet/GlobalSheetSettings.idl
@@ -0,0 +1,192 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_GlobalSheetSettings_idl__
+#define __com_sun_star_sheet_GlobalSheetSettings_idl__
+
+#ifndef __com_sun_star_beans_XPropertySet_idl__
+#include <com/sun/star/beans/XPropertySet.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** contributes properties to access the settings for all spreadsheets of
+ a spreadsheet document.
+ */
+published service GlobalSheetSettings
+{
+ //-------------------------------------------------------------------------
+
+//! service com::sun::star::beans::PropertySet;
+ /** provides access to the properties.
+ */
+ interface com::sun::star::beans::XPropertySet;
+
+ //=========================================================================
+
+ /** specifies whether the cursor is moved after entering into cells.
+ */
+ [property] boolean MoveSelection;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the direction the cursor moves after entering cells.
+
+ @see com::sun::star::sheet::MoveDirection
+ */
+ [property] short MoveDirection;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether the enter key can be used to start editing a cell.
+ */
+ [property] boolean EnterEdit;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether cell formatting is extended when entering data.
+ */
+ [property] boolean ExtendFormat;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether ranges are highlighted on the sheet when
+ editing a formula.
+ */
+ [property] boolean RangeFinder;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether formula references are extended when cells
+ are inserted below or to the right of them.
+ */
+ [property] boolean ExpandReferences;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether the current selection is highlighted in
+ column and row headers.
+ */
+ [property] boolean MarkHeader;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether the enter key moves the cursor to the column
+ it was in before using the tab key to change columns.
+ */
+ [property] boolean UseTabCol;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the metric for all spreadsheet documents.
+
+ @see com::sun::star::util::MeasureUnit
+ */
+ [property] short Metric;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the default scale for new spreadsheet documents
+ (in percent).
+
+ <p>There are several special values:</p>
+ <p>-1 = Optimal width</p>
+ <p>-2 = Show whole page</p>
+ <p>-3 = Page width</p>
+ */
+ [property] short Scale;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether automatic completion of text in a cell is used.
+ */
+ [property] boolean DoAutoComplete;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the function that is displayed in the status bar.
+
+ @see com::sun::star::sheet::StatusBarFunction
+ */
+ [property] short StatusBarFunction;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the string lists used for sorting and filling.
+
+ <p>Each string contains the members of a list, separated by
+ commas.</p>
+ */
+ [property] sequence< string > UserLists;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the update mode for external linked data.
+
+ <p>0 = always</p>
+ <p>1 = never</p>
+ <p>2 = on demand</p>
+ */
+ [optional, property] short LinkUpdateMode;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether all sheets or only selected sheets are printed.
+ */
+ [optional, property] boolean PrintAllSheets;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether empty pages are printed.
+ */
+ [optional, property] boolean PrintEmptyPages;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether printer metrics are used for display.
+ */
+ [optional, property] boolean UsePrinterMetrics;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether a warning is shown before replacing cells
+ (i.e. when pasting from clipboard).
+ */
+ [optional, property] boolean ReplaceCellsWarning;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/GoalResult.idl b/offapi/com/sun/star/sheet/GoalResult.idl
new file mode 100644
index 000000000000..e9a00a156064
--- /dev/null
+++ b/offapi/com/sun/star/sheet/GoalResult.idl
@@ -0,0 +1,58 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_GoalResult_idl__
+#define __com_sun_star_sheet_GoalResult_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** is the result of a goal seek operation.
+ */
+published struct GoalResult
+{
+ /** the amount by which the result changed in the last iteration.
+ */
+ double Divergence;
+
+ //-------------------------------------------------------------------------
+
+ /** the resulting value.
+ */
+ double Result;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/HeaderFooterContent.idl b/offapi/com/sun/star/sheet/HeaderFooterContent.idl
new file mode 100644
index 000000000000..39c551c0880c
--- /dev/null
+++ b/offapi/com/sun/star/sheet/HeaderFooterContent.idl
@@ -0,0 +1,60 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_HeaderFooterContent_idl__
+#define __com_sun_star_sheet_HeaderFooterContent_idl__
+
+#ifndef __com_sun_star_sheet_XHeaderFooterContent_idl__
+#include <com/sun/star/sheet/XHeaderFooterContent.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents the contents of a header or footer line in a page style.
+
+ @see com::sun::star::sheet::TablePageStyle
+ */
+published service HeaderFooterContent
+{
+ //-------------------------------------------------------------------------
+
+ /** provides access to the text parts of the header or footer line.
+ */
+ interface com::sun::star::sheet::XHeaderFooterContent;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/LabelRange.idl b/offapi/com/sun/star/sheet/LabelRange.idl
new file mode 100644
index 000000000000..a5e1b98302a2
--- /dev/null
+++ b/offapi/com/sun/star/sheet/LabelRange.idl
@@ -0,0 +1,61 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_LabelRange_idl__
+#define __com_sun_star_sheet_LabelRange_idl__
+
+#ifndef __com_sun_star_sheet_XLabelRange_idl__
+#include <com/sun/star/sheet/XLabelRange.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a cell area that contains labels and values related to the
+ labels.
+
+ <p>Label ranges can be used in formulas to refer to cells in cell
+ ranges with row or column titles. The formula uses the cell value that
+ is related to the specified row or column title.</p>
+ */
+published service LabelRange
+{
+ /** provides access to the settings of a label range.
+ */
+ interface com::sun::star::sheet::XLabelRange;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/LabelRanges.idl b/offapi/com/sun/star/sheet/LabelRanges.idl
new file mode 100644
index 000000000000..d8659f7a625b
--- /dev/null
+++ b/offapi/com/sun/star/sheet/LabelRanges.idl
@@ -0,0 +1,87 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_LabelRanges_idl__
+#define __com_sun_star_sheet_LabelRanges_idl__
+
+#ifndef __com_sun_star_container_XIndexAccess_idl__
+#include <com/sun/star/container/XIndexAccess.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XLabelRanges_idl__
+#include <com/sun/star/sheet/XLabelRanges.idl>
+#endif
+#ifndef __com_sun_star_container_XEnumerationAccess_idl__
+#include <com/sun/star/container/XEnumerationAccess.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a collection of label ranges in a spreadsheet document.
+
+ @see com::sun::star::sheet::LabelRange
+ @see com::sun::star::sheet::SpreadsheetDocument
+ */
+published service LabelRanges
+{
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access the members of the label range collection
+ and to insert and remove them.
+ */
+ interface com::sun::star::sheet::XLabelRanges;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to the label ranges via index.
+
+ @see com::sun::star::sheet::LabelRange
+
+ */
+ interface com::sun::star::container::XIndexAccess;
+
+ //-------------------------------------------------------------------------
+
+ /** creates an enumeration of all label ranges.
+
+ @see com::sun::star::sheet::LabelRangesEnumeration
+
+ */
+ interface com::sun::star::container::XEnumerationAccess;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/LabelRangesEnumeration.idl b/offapi/com/sun/star/sheet/LabelRangesEnumeration.idl
new file mode 100644
index 000000000000..18817df0d228
--- /dev/null
+++ b/offapi/com/sun/star/sheet/LabelRangesEnumeration.idl
@@ -0,0 +1,62 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_LabelRangesEnumeration_idl__
+#define __com_sun_star_sheet_LabelRangesEnumeration_idl__
+
+#ifndef __com_sun_star_container_XEnumeration_idl__
+#include <com/sun/star/container/XEnumeration.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents an enumeration of label ranges.
+
+ @see com::sun::star::sheet::LabelRange
+ */
+published service LabelRangesEnumeration
+{
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access the label ranges in the enumeration.
+
+ @see com::sun::star::sheet::LabelRange
+ */
+ interface com::sun::star::container::XEnumeration;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/LocalizedName.idl b/offapi/com/sun/star/sheet/LocalizedName.idl
new file mode 100644
index 000000000000..1f8a7a8eebf6
--- /dev/null
+++ b/offapi/com/sun/star/sheet/LocalizedName.idl
@@ -0,0 +1,65 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_LocalizedName_idl__
+#define __com_sun_star_sheet_LocalizedName_idl__
+
+#ifndef __com_sun_star_lang_Locale_idl__
+#include <com/sun/star/lang/Locale.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** A name that is valid for a specified locale.
+
+ @see com::sun::star::sheet::XCompatibilityNames
+ */
+published struct LocalizedName
+{
+ // ------------------------------------------------------------------------
+
+ /** The locale for which this name is valid.
+ */
+ ::com::sun::star::lang::Locale Locale;
+
+ // ------------------------------------------------------------------------
+
+ /** The name itself.
+ */
+ string Name;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/MemberResult.idl b/offapi/com/sun/star/sheet/MemberResult.idl
new file mode 100644
index 000000000000..c8f1c360543e
--- /dev/null
+++ b/offapi/com/sun/star/sheet/MemberResult.idl
@@ -0,0 +1,68 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_MemberResult_idl__
+#define __com_sun_star_sheet_MemberResult_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** describes a result of a DataPilot member.
+
+ @see com::sun::star::sheet::XDataPilotMemberResults
+ */
+published struct MemberResult
+{
+ /** the internal name of the field.
+ */
+ string Name;
+
+ //-------------------------------------------------------------------------
+
+ /** the visible name of the field.
+ */
+ string Caption;
+
+ //-------------------------------------------------------------------------
+
+ /** contains flags describing the result.
+
+ @see com::sun::star::sheet::MemberResultFlags
+ */
+ long Flags;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/MemberResultFlags.idl b/offapi/com/sun/star/sheet/MemberResultFlags.idl
new file mode 100644
index 000000000000..05bcc602ccc5
--- /dev/null
+++ b/offapi/com/sun/star/sheet/MemberResultFlags.idl
@@ -0,0 +1,77 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_MemberResultFlags_idl__
+#define __com_sun_star_sheet_MemberResultFlags_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** used to give information about elements in data pilot member results.
+ */
+published constants MemberResultFlags
+{
+ //-------------------------------------------------------------------------
+
+ /** The element contains a member.
+ */
+ const long HASMEMBER = 1;
+
+ //-------------------------------------------------------------------------
+
+ /** The element contains a subtotal.
+ */
+ const long SUBTOTAL = 2;
+
+ //-------------------------------------------------------------------------
+
+ /** The element is a continuation of the previous one.
+ */
+ const long CONTINUE = 4;
+
+ //-------------------------------------------------------------------------
+
+ /** The element contains a grand total.
+ */
+ const long GRANDTOTAL = 8;
+
+ //-------------------------------------------------------------------------
+
+ /** The element is a numeric value.
+ */
+ const long NUMERIC = 16;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/MoveDirection.idl b/offapi/com/sun/star/sheet/MoveDirection.idl
new file mode 100644
index 000000000000..75b95961f72c
--- /dev/null
+++ b/offapi/com/sun/star/sheet/MoveDirection.idl
@@ -0,0 +1,73 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_MoveDirection_idl__
+#define __com_sun_star_sheet_MoveDirection_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** used to specify the direction of moving the current selection i.e.
+ after a cell has been left with Enter.
+ */
+published constants MoveDirection
+{
+ //-------------------------------------------------------------------------
+
+ /** specifies that the selection moves one cell down.
+ */
+ const short DOWN = 0;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies that the selection moves one cell right.
+ */
+ const short RIGHT = 1;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies that the selection moves one cell up.
+ */
+ const short UP = 2;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies that the selection moves one cell left.
+ */
+ const short LEFT = 3;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/NamedRange.idl b/offapi/com/sun/star/sheet/NamedRange.idl
new file mode 100644
index 000000000000..445bf984c7e6
--- /dev/null
+++ b/offapi/com/sun/star/sheet/NamedRange.idl
@@ -0,0 +1,112 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_NamedRange_idl__
+#define __com_sun_star_sheet_NamedRange_idl__
+
+#ifndef __com_sun_star_sheet_XNamedRange_idl__
+#include <com/sun/star/sheet/XNamedRange.idl>
+#endif
+
+#ifndef __com_sun_star_container_XNamed_idl__
+#include <com/sun/star/container/XNamed.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XCellRangeReferrer_idl__
+#include <com/sun/star/sheet/XCellRangeReferrer.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a named range in a spreadsheet document.
+
+ <p>In fact a named range is a named formula expression. A cell range
+ address is one possible content of a named range.</p>
+
+ @see com::sun::star::sheet::NamedRanges
+ */
+published service NamedRange
+{
+ //-------------------------------------------------------------------------
+
+ /** provides access to the settings of the named range.
+ */
+ interface com::sun::star::sheet::XNamedRange;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to the cell range object referred by this named range.
+
+ <p>This works only, if the named range contains a single cell range
+ address.</p>
+ */
+ interface com::sun::star::sheet::XCellRangeReferrer;
+
+ //-------------------------------------------------------------------------
+
+ /** returns the index used to refer to this name in token arrays.
+
+ <p>A token describing a defined name shall contain the op-code obtained
+ from the <const>FormulaMapGroupSpecialOffset::NAME</const> offset and
+ this index as data part.</p>
+
+ @see com::sun::star::sheet::FormulaToken
+ @see com::sun::star::sheet::FormulaMapGroupSpecialOffset::NAME
+
+ @since OOo 3.0
+ */
+ [optional, readonly, property] long TokenIndex;
+
+ //-------------------------------------------------------------------------
+
+ /** Determines if this defined name represents a shared formula.
+
+ <p>This special property shall not be used externally. It is used by
+ import and export filters for compatibility with spreadsheet
+ documents containing shared formulas. Shared formulas are shared
+ by several cells to save memory and to decrease file size.</p>
+
+ <p>A defined name with this property set will not appear in the user
+ interface of Calc, and its name will not appear in cell formulas. A
+ formula referring to this defined name will show the formula
+ definition contained in the name instead.</p>
+
+ @since OOo 3.0
+ */
+ [optional, property] boolean IsSharedFormula;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/NamedRangeFlag.idl b/offapi/com/sun/star/sheet/NamedRangeFlag.idl
new file mode 100644
index 000000000000..cb69c8ec782d
--- /dev/null
+++ b/offapi/com/sun/star/sheet/NamedRangeFlag.idl
@@ -0,0 +1,72 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_NamedRangeFlag_idl__
+#define __com_sun_star_sheet_NamedRangeFlag_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** used to specify the purpose of a named range.
+ */
+published constants NamedRangeFlag
+{
+ //-------------------------------------------------------------------------
+
+ /** The range contains filter criteria.
+ */
+ const long FILTER_CRITERIA = 1;
+
+ //-------------------------------------------------------------------------
+
+ /** The range can be used as a print range.
+ */
+ const long PRINT_AREA = 2;
+
+ //-------------------------------------------------------------------------
+
+ /** The range can be used as column headers for printing.
+ */
+ const long COLUMN_HEADER = 4;
+
+ //-------------------------------------------------------------------------
+
+ /** The range can be used as row headers for printing.
+ */
+ const long ROW_HEADER = 8;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/NamedRanges.idl b/offapi/com/sun/star/sheet/NamedRanges.idl
new file mode 100644
index 000000000000..e7be40c8c6e5
--- /dev/null
+++ b/offapi/com/sun/star/sheet/NamedRanges.idl
@@ -0,0 +1,102 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_NamedRanges_idl__
+#define __com_sun_star_sheet_NamedRanges_idl__
+
+#ifndef __com_sun_star_container_XNameAccess_idl__
+#include <com/sun/star/container/XNameAccess.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XNamedRanges_idl__
+#include <com/sun/star/sheet/XNamedRanges.idl>
+#endif
+#ifndef __com_sun_star_container_XEnumerationAccess_idl__
+#include <com/sun/star/container/XEnumerationAccess.idl>
+#endif
+#ifndef __com_sun_star_container_XIndexAccess_idl__
+#include <com/sun/star/container/XIndexAccess.idl>
+#endif
+#ifndef __com_sun_star_document_XActionLockable_idl__
+#include <com/sun/star/document/XActionLockable.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a collection of named ranges in a spreadsheet document.
+
+ <p>In fact a named range is a named formula expression. A cell range
+ address is one possible content of a named range.</p>
+
+ @see com::sun::star::sheet::SpreadsheetDocument
+ */
+published service NamedRanges
+{
+ //-------------------------------------------------------------------------
+
+ /** provides access to the named ranges and to insert and remove them.
+ */
+ interface com::sun::star::sheet::XNamedRanges;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to the named ranges via index.
+
+ @see com::sun::star::sheet::NamedRange
+
+ */
+ interface com::sun::star::container::XIndexAccess;
+
+ //-------------------------------------------------------------------------
+
+ /** creates an enumeration of all named ranges.
+
+ @see com::sun::star::sheet::NamedRangesEnumeration
+
+ */
+ interface com::sun::star::container::XEnumerationAccess;
+
+ //-------------------------------------------------------------------------
+
+ /** provides methods to control the internal update of named ranges.
+
+ @since OOo 3.0
+ */
+ [optional] interface com::sun::star::document::XActionLockable;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/NamedRangesEnumeration.idl b/offapi/com/sun/star/sheet/NamedRangesEnumeration.idl
new file mode 100644
index 000000000000..9bfeea931a01
--- /dev/null
+++ b/offapi/com/sun/star/sheet/NamedRangesEnumeration.idl
@@ -0,0 +1,62 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_NamedRangesEnumeration_idl__
+#define __com_sun_star_sheet_NamedRangesEnumeration_idl__
+
+#ifndef __com_sun_star_container_XEnumeration_idl__
+#include <com/sun/star/container/XEnumeration.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents an enumeration of named ranges.
+
+ @see com::sun::star::sheet::NamedRange
+ */
+published service NamedRangesEnumeration
+{
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access the named ranges in the enumeration.
+
+ @see com::sun::star::sheet::NamedRange
+ */
+ interface com::sun::star::container::XEnumeration;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/NoConvergenceException.idl b/offapi/com/sun/star/sheet/NoConvergenceException.idl
new file mode 100644
index 000000000000..b427b67f28ea
--- /dev/null
+++ b/offapi/com/sun/star/sheet/NoConvergenceException.idl
@@ -0,0 +1,52 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_NoConvergenceException_idl__
+#define __com_sun_star_sheet_NoConvergenceException_idl__
+
+#ifndef __com_sun_star_uno_Exception_idl__
+#include <com/sun/star/uno/Exception.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** Thrown by a Calc Add-In function this exception indicates the
+ function's algorithm did not converge to a meaningful result.
+
+ @since OOo 3.3
+ */
+exception NoConvergenceException : ::com::sun::star::uno::Exception{};
+
+//=============================================================================
+}; }; }; };
+//=============================================================================
+
+#endif
diff --git a/offapi/com/sun/star/sheet/PasteOperation.idl b/offapi/com/sun/star/sheet/PasteOperation.idl
new file mode 100644
index 000000000000..0e57b94e81de
--- /dev/null
+++ b/offapi/com/sun/star/sheet/PasteOperation.idl
@@ -0,0 +1,79 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_PasteOperation_idl__
+#define __com_sun_star_sheet_PasteOperation_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** used to specify which operations are carried out when pasting cell
+ values into a cell range.
+ */
+published enum PasteOperation
+{
+ //-------------------------------------------------------------------------
+
+ /** new values are used without changes.
+ */
+ NONE,
+
+ //-------------------------------------------------------------------------
+
+ /** old and new values are added.
+ */
+ ADD,
+
+ //-------------------------------------------------------------------------
+
+ /** new values are subtracted from the old values.
+ */
+ SUBTRACT,
+
+ //-------------------------------------------------------------------------
+
+ /** old and new values are multiplied.
+ */
+ MULTIPLY,
+
+ //-------------------------------------------------------------------------
+
+ /** new values are divided by the new values.
+ */
+ DIVIDE
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/RangeSelectionArguments.idl b/offapi/com/sun/star/sheet/RangeSelectionArguments.idl
new file mode 100644
index 000000000000..8c9f688d8989
--- /dev/null
+++ b/offapi/com/sun/star/sheet/RangeSelectionArguments.idl
@@ -0,0 +1,72 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_sheet_RangeSelectionArguments_idl__
+#define __com_sun_star_sheet_RangeSelectionArguments_idl__
+
+//=============================================================================
+
+ module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** contains the arguments for starting the range selection.
+
+ @see com::sun::star::sheet::XRangeSelection
+ */
+published service RangeSelectionArguments
+{
+ /** contains the initial value for the range descriptor.
+ */
+ [property] string InitialValue;
+
+ /** contains a title for the operation.
+ */
+ [property] string Title;
+
+ /** specifies if the range selection is finished when the
+ mouse button is released, after selecting cells.
+ */
+ [property] boolean CloseOnMouseRelease;
+
+ /** specifies if the range selection is limited to a single
+ cell only.
+
+ <p>If <TRUE/>, the selection is restricted to a
+ single cell. If <FALSE/>, multiple adjoining cells can be
+ selected. The default value is <FALSE/>.</p>
+
+ @since OOo 2.0.3
+ */
+ [optional, property] boolean SingleCellMode;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/RangeSelectionEvent.idl b/offapi/com/sun/star/sheet/RangeSelectionEvent.idl
new file mode 100644
index 000000000000..859466b51d5d
--- /dev/null
+++ b/offapi/com/sun/star/sheet/RangeSelectionEvent.idl
@@ -0,0 +1,57 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_sheet_RangeSelectionEvent_idl__
+#define __com_sun_star_sheet_RangeSelectionEvent_idl__
+
+#ifndef __com_sun_star_lang_EventObject_idl__
+#include <com/sun/star/lang/EventObject.idl>
+#endif
+
+//=============================================================================
+
+ module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** specifies an event from range selection.
+
+ @see com::sun::star::sheet::XRangeSelectionListener
+ @see com::sun::star::sheet::XRangeSelectionChangeListener
+ */
+published struct RangeSelectionEvent: com::sun::star::lang::EventObject
+{
+ /** contains a textual representation of the selected range.
+ */
+ string RangeDescriptor;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/RecentFunctions.idl b/offapi/com/sun/star/sheet/RecentFunctions.idl
new file mode 100644
index 000000000000..636a0bcf8f31
--- /dev/null
+++ b/offapi/com/sun/star/sheet/RecentFunctions.idl
@@ -0,0 +1,58 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_RecentFunctions_idl__
+#define __com_sun_star_sheet_RecentFunctions_idl__
+
+#ifndef __com_sun_star_sheet_XRecentFunctions_idl__
+#include <com/sun/star/sheet/XRecentFunctions.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** contains the list of recently used spreadsheet functions.
+ */
+published service RecentFunctions
+{
+ //-------------------------------------------------------------------------
+
+ /** provides access to the list of recently used spreadsheet functions.
+ */
+ interface com::sun::star::sheet::XRecentFunctions;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/ReferenceFlags.idl b/offapi/com/sun/star/sheet/ReferenceFlags.idl
new file mode 100644
index 000000000000..1c2c3d6aa534
--- /dev/null
+++ b/offapi/com/sun/star/sheet/ReferenceFlags.idl
@@ -0,0 +1,97 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_ReferenceFlags_idl__
+#define __com_sun_star_sheet_ReferenceFlags_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** defines flags for references.
+
+ <P>The values can be combined.</P>
+ */
+constants ReferenceFlags
+{
+ //-------------------------------------------------------------------------
+
+ /** selects a relative column reference.
+ */
+ const long COLUMN_RELATIVE = 1;
+
+ //-------------------------------------------------------------------------
+
+ /** marks a deleted column reference.
+ */
+ const long COLUMN_DELETED = 2;
+
+ //-------------------------------------------------------------------------
+
+ /** selects a relative row reference.
+ */
+ const long ROW_RELATIVE = 4;
+
+ //-------------------------------------------------------------------------
+
+ /** marks a deleted row reference.
+ */
+ const long ROW_DELETED = 8;
+
+ //-------------------------------------------------------------------------
+
+ /** selects a relative sheet reference.
+ */
+ const long SHEET_RELATIVE = 16;
+
+ //-------------------------------------------------------------------------
+
+ /** marks a deleted sheet reference.
+ */
+ const long SHEET_DELETED = 32;
+
+ //-------------------------------------------------------------------------
+
+ /** selects a 3D sheet reference.
+ */
+ const long SHEET_3D = 64;
+
+ //-------------------------------------------------------------------------
+
+ /** marks a reference from a relative range name.
+ */
+ const long RELATIVE_NAME = 128;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/ResultEvent.idl b/offapi/com/sun/star/sheet/ResultEvent.idl
new file mode 100644
index 000000000000..3fc5184da6ae
--- /dev/null
+++ b/offapi/com/sun/star/sheet/ResultEvent.idl
@@ -0,0 +1,63 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_ResultEvent_idl__
+#define __com_sun_star_sheet_ResultEvent_idl__
+
+#ifndef __com_sun_star_lang_EventObject_idl__
+#include <com/sun/star/lang/EventObject.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** contains the new value of a volatile function result.
+
+ @see com::sun::star::sheet::XVolatileResult
+ */
+published struct ResultEvent: com::sun::star::lang::EventObject
+{
+ //-------------------------------------------------------------------------
+
+ /** contains the value.
+
+ <p>This can be any of the possible return types described for the
+ <type>AddIn</type> service, except <type>XVolatileResult</type>.</p>
+ */
+ any Value;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/Scenario.idl b/offapi/com/sun/star/sheet/Scenario.idl
new file mode 100644
index 000000000000..a47b2c3df484
--- /dev/null
+++ b/offapi/com/sun/star/sheet/Scenario.idl
@@ -0,0 +1,122 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_Scenario_idl__
+#define __com_sun_star_sheet_Scenario_idl__
+
+#ifndef __com_sun_star_sheet_XScenario_idl__
+#include <com/sun/star/sheet/XScenario.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XScenarioEnhanced_idl__
+#include <com/sun/star/sheet/XScenarioEnhanced.idl>
+#endif
+
+#ifndef __com_sun_star_beans_XPropertySet_idl__
+#include <com/sun/star/beans/XPropertySet.idl>
+#endif
+
+#ifndef __com_sun_star_container_XNamed_idl__
+#include <com/sun/star/container/XNamed.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a scenario in a spreadsheet document.
+
+ */
+service Scenario
+{
+ interface com::sun::star::sheet::XScenario;
+
+ [optional] interface com::sun::star::sheet::XScenarioEnhanced;
+
+ interface com::sun::star::beans::XPropertySet;
+
+ interface com::sun::star::container::XNamed;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies if the scenario is active.
+ */
+ [optional, property] boolean IsActive;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the color of the border of the scenario.
+ */
+ [optional, property] long BorderColor;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies if the scenario is protected.
+ */
+ [optional, property] boolean Protected;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies if the scenario shows a border.
+ */
+ [optional, property] boolean ShowBorder;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies if the scenario prints a border.
+ */
+ [optional, property] boolean PrintBorder;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies if the data should be copied back into the scenario.
+ */
+ [optional, property] boolean CopyBack;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies if the styles are copied.
+ */
+ [optional, property] boolean CopyStyles;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies if the formulas are copied or only the results.
+ */
+ [optional, property] boolean CopyFormulas;
+
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/Scenarios.idl b/offapi/com/sun/star/sheet/Scenarios.idl
new file mode 100644
index 000000000000..31f3da181f0b
--- /dev/null
+++ b/offapi/com/sun/star/sheet/Scenarios.idl
@@ -0,0 +1,81 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_Scenarios_idl__
+#define __com_sun_star_sheet_Scenarios_idl__
+
+#ifndef __com_sun_star_sheet_XScenariosSupplier_idl__
+#include <com/sun/star/sheet/XScenariosSupplier.idl>
+#endif
+#ifndef __com_sun_star_container_XEnumerationAccess_idl__
+#include <com/sun/star/container/XEnumerationAccess.idl>
+#endif
+#ifndef __com_sun_star_container_XIndexAccess_idl__
+#include <com/sun/star/container/XIndexAccess.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a collection of scenarios.
+ */
+published service Scenarios
+{
+ //-------------------------------------------------------------------------
+
+ /** provides access via name to the scenarios in the collection.
+ */
+ interface com::sun::star::sheet::XScenarios;
+
+ //-------------------------------------------------------------------------
+
+ /** creates an enumeration of scenarios.
+
+ @see com::sun::star::sheet::ScenariosEnumeration
+ */
+ interface com::sun::star::container::XEnumerationAccess;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to the scenarios in the collection via index.
+
+ @see com::sun::star::sheet::Spreadsheet
+
+ */
+ interface com::sun::star::container::XIndexAccess;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/ScenariosEnumeration.idl b/offapi/com/sun/star/sheet/ScenariosEnumeration.idl
new file mode 100644
index 000000000000..ca6c0a7b8335
--- /dev/null
+++ b/offapi/com/sun/star/sheet/ScenariosEnumeration.idl
@@ -0,0 +1,62 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_ScenariosEnumeration_idl__
+#define __com_sun_star_sheet_ScenariosEnumeration_idl__
+
+#ifndef __com_sun_star_container_XEnumeration_idl__
+#include <com/sun/star/container/XEnumeration.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents an enumeration of scenarios.
+
+ @see com::sun::star::sheet::Spreadsheet
+ */
+published service ScenariosEnumeration
+{
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access the scenarios in the enumeration.
+
+ @see com::sun::star::sheet::Spreadsheet
+ */
+ interface com::sun::star::container::XEnumeration;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/Shape.idl b/offapi/com/sun/star/sheet/Shape.idl
new file mode 100644
index 000000000000..0aca01b81b52
--- /dev/null
+++ b/offapi/com/sun/star/sheet/Shape.idl
@@ -0,0 +1,82 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_sheet_Shape_idl__
+#define __com_sun_star_sheet_Shape_idl__
+
+#ifndef __com_sun_star_drawing_Shape_idl__
+#include <com/sun/star/drawing/Shape.idl>
+#endif
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+//=============================================================================
+
+ module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** specifies the service of shapes in a spreadsheet document
+ */
+service Shape
+{
+ service com::sun::star::drawing::Shape;
+ //-------------------------------------------------------------------------
+ /** contains the object where this shape is anchored on.
+ <p> Possible objects are XSpreadsheet and XCell.</p>
+ */
+ [readonly, property] com::sun::star::uno::XInterface Anchor;
+ //-------------------------------------------------------------------------
+ /** contains the horizontal position of the object (1/100 mm).
+ <p> The position is relative to the anchor object.</p>
+ <p> If the underlying table layout direction is left to right
+ the position is the difference of the left top edge of the anchor
+ object and the left top edge of the drawing object.</p>
+ <p> If the underlying table layout direction is right to left
+ the position is the difference of the right top edge of the anchor
+ object and the right top edge of the drawing object.</p>
+ */
+ [property] long HoriOrientPosition;
+ //-------------------------------------------------------------------------
+ /** contains the vertical position of the object (1/100 mm).
+ <p> The position is relative to the anchor object.</p>
+ <p> If the underlying table layout direction is left to right
+ the position is the difference of the left top edge of the anchor
+ object and the left top edge of the drawing object.</p>
+ <p> If the underlying table layout direction is right to left
+ the position is the difference of the right top edge of the anchor
+ object and the right top edge of the drawing object.</p>
+ */
+ [property] long VertOrientPosition;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/sheet/SheetCell.idl b/offapi/com/sun/star/sheet/SheetCell.idl
new file mode 100644
index 000000000000..ecde3d5c3594
--- /dev/null
+++ b/offapi/com/sun/star/sheet/SheetCell.idl
@@ -0,0 +1,340 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_SheetCell_idl__
+#define __com_sun_star_sheet_SheetCell_idl__
+
+
+#ifndef __com_sun_star_table_Cell_idl__
+#include <com/sun/star/table/Cell.idl>
+#endif
+
+#ifndef __com_sun_star_text_Text_idl__
+#include <com/sun/star/text/Text.idl>
+#endif
+
+#ifndef __com_sun_star_style_CharacterProperties_idl__
+#include <com/sun/star/style/CharacterProperties.idl>
+#endif
+
+#ifndef __com_sun_star_style_CharacterPropertiesAsian_idl__
+#include <com/sun/star/style/CharacterPropertiesAsian.idl>
+#endif
+
+#ifndef __com_sun_star_style_CharacterPropertiesComplex_idl__
+#include <com/sun/star/style/CharacterPropertiesComplex.idl>
+#endif
+
+#ifndef __com_sun_star_style_ParagraphProperties_idl__
+#include <com/sun/star/style/ParagraphProperties.idl>
+#endif
+
+#ifndef __com_sun_star_style_ParagraphPropertiesAsian_idl__
+#include <com/sun/star/style/ParagraphPropertiesAsian.idl>
+#endif
+
+#ifndef __com_sun_star_style_ParagraphPropertiesComplex_idl__
+#include <com/sun/star/style/ParagraphPropertiesComplex.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_SheetRangesQuery_idl__
+#include <com/sun/star/sheet/SheetRangesQuery.idl>
+#endif
+
+
+#ifndef __com_sun_star_document_XActionLockable_idl__
+#include <com/sun/star/document/XActionLockable.idl>
+#endif
+
+#ifndef __com_sun_star_util_XReplaceable_idl__
+#include <com/sun/star/util/XReplaceable.idl>
+#endif
+
+#ifndef __com_sun_star_util_XIndent_idl__
+#include <com/sun/star/util/XIndent.idl>
+#endif
+
+#ifndef __com_sun_star_table_XColumnRowRange_idl__
+#include <com/sun/star/table/XColumnRowRange.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XCellAddressable_idl__
+#include <com/sun/star/sheet/XCellAddressable.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XSheetAnnotationAnchor_idl__
+#include <com/sun/star/sheet/XSheetAnnotationAnchor.idl>
+#endif
+
+#ifndef __com_sun_star_text_XTextFieldsSupplier_idl__
+#include <com/sun/star/text/XTextFieldsSupplier.idl>
+#endif
+
+
+#ifndef __com_sun_star_awt_Point_idl__
+#include <com/sun/star/awt/Point.idl>
+#endif
+
+#ifndef __com_sun_star_awt_Size_idl__
+#include <com/sun/star/awt/Size.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XSheetConditionalEntries_idl__
+#include <com/sun/star/sheet/XSheetConditionalEntries.idl>
+#endif
+
+#ifndef __com_sun_star_beans_XPropertySet_idl__
+#include <com/sun/star/beans/XPropertySet.idl>
+#endif
+
+#ifndef __com_sun_star_beans_XTolerantMultiPropertySet_idl__
+#include <com/sun/star/beans/XTolerantMultiPropertySet.idl>
+#endif
+
+#ifndef __com_sun_star_util_XModifyBroadcaster_idl__
+#include <com/sun/star/util/XModifyBroadcaster.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a single addressable cell in a spreadsheet document.
+ */
+published service SheetCell
+{
+ //-------------------------------------------------------------------------
+
+ /** provides basic cell handling and contributes common cell
+ formatting properties.
+ */
+ service com::sun::star::table::Cell;
+
+ //-------------------------------------------------------------------------
+
+ /** provides handling of formatted text cells.
+ */
+ service com::sun::star::text::Text;
+
+ //-------------------------------------------------------------------------
+
+ /** contributes properties for character formatting of Western text.
+ */
+ service com::sun::star::style::CharacterProperties;
+
+ //-------------------------------------------------------------------------
+
+ /** contributes properties for character formatting of Asian text.
+ */
+ service com::sun::star::style::CharacterPropertiesAsian;
+
+ //-------------------------------------------------------------------------
+
+ /** contributes properties for character formatting of Complex text.
+ */
+ service com::sun::star::style::CharacterPropertiesComplex;
+
+ //-------------------------------------------------------------------------
+
+ /** contributes properties for paragraph formatting.
+ */
+ service com::sun::star::style::ParagraphProperties;
+
+ //-------------------------------------------------------------------------
+
+ /** contributes properties for paragraph formatting of Asian text.
+ */
+ [optional] service com::sun::star::style::ParagraphPropertiesAsian;
+
+ //-------------------------------------------------------------------------
+
+ /** contributes properties for paragraph formatting of Complex text.
+ */
+ [optional] service com::sun::star::style::ParagraphPropertiesComplex;
+
+ //-------------------------------------------------------------------------
+
+ /** provides interfaces to find cells with specific properties.
+ */
+ service com::sun::star::sheet::SheetRangesQuery;
+
+ //=========================================================================
+
+ /** provides methods to lock and unlock the update between
+ <type scope="com::sun::star::table">XCell</type> and
+ <type scope="com::sun::star::text">XText</type>.
+ */
+ interface com::sun::star::document::XActionLockable;
+
+ //-------------------------------------------------------------------------
+
+ /** provides "Find & Replace" functionality.
+
+ <p>The property
+ <member scope="com::sun::star::util">SearchDescriptor::SearchWords</member>
+ has a different meaning in spreadsheets: If set to <TRUE/>, the
+ spreadsheet searches for cells containing the serch text only.</p>
+ */
+ interface com::sun::star::util::XReplaceable;
+
+ //-------------------------------------------------------------------------
+
+ /** provides modifying the cell indentation.
+ */
+ interface com::sun::star::util::XIndent;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to the collections of columns and rows.
+ */
+ interface com::sun::star::table::XColumnRowRange;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to the cell address of this cell.
+ */
+ interface com::sun::star::sheet::XCellAddressable;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to the annotation attached to this cell.
+ */
+ interface com::sun::star::sheet::XSheetAnnotationAnchor;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to the text fields used in this cell.
+ */
+ interface com::sun::star::text::XTextFieldsSupplier;
+
+ //-------------------------------------------------------------------------
+
+ [optional] interface com::sun::star::beans::XTolerantMultiPropertySet;
+
+ //-------------------------------------------------------------------------
+
+ /**
+
+ @since OOo 2.0.0
+
+ */
+ [optional] interface com::sun::star::util::XModifyBroadcaster;
+
+ //=========================================================================
+
+ /** contains the position of this cell in the sheet (in 1/100 mm).
+
+ <p>This property contains the absolute position in the whole
+ sheet, not the position in the visible area.</p>
+ */
+ [readonly, property] com::sun::star::awt::Point Position;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the size of this cell (in 1/100 mm).
+ */
+ [readonly, property] com::sun::star::awt::Size Size;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the formula string with localized function names.
+
+ <p>This property can also be used to set a new localized formula.</p>
+ */
+ [optional, property] string FormulaLocal;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the result type of a formula.
+
+ @see com::sun::star::sheet::FormulaResult
+ */
+ [readonly, property] long FormulaResultType;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the conditional formatting settings for this cell.
+
+ <p>After a conditional format has been changed it has to be
+ reinserted into the property set.</p>
+
+ @see com::sun::star::sheet::TableConditionalFormat
+ */
+ [property] com::sun::star::sheet::XSheetConditionalEntries
+ ConditionalFormat;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the conditional formatting settings for this cell,
+ using localized formulas.
+
+ <p>After a conditional format has been changed it has to be
+ reinserted into the property set.</p>
+
+ @see com::sun::star::sheet::TableConditionalFormat
+ */
+ [optional, property] com::sun::star::sheet::XSheetConditionalEntries
+ ConditionalFormatLocal;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the data validation settings for this cell.
+
+ <p>After the data validation settings have been changed the
+ validation has to be reinserted into the property set.</p>
+
+ @see com::sun::star::sheet::TableValidation
+ */
+ [property] com::sun::star::beans::XPropertySet Validation;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the data validation settings for this cell,
+ using localized formulas.
+
+ <p>After the data validation settings have been changed the
+ validation has to be reinserted into the property set.</p>
+
+ @see com::sun::star::sheet::TableValidation
+ */
+ [optional, property] com::sun::star::beans::XPropertySet ValidationLocal;
+
+ //-------------------------------------------------------------------------
+
+ /** Returns the absolute adress of the range as string, e.g. "$Sheet1.$B$2".
+ */
+ [optional, readonly, property] string AbsoluteName;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/SheetCellCursor.idl b/offapi/com/sun/star/sheet/SheetCellCursor.idl
new file mode 100644
index 000000000000..23724f423174
--- /dev/null
+++ b/offapi/com/sun/star/sheet/SheetCellCursor.idl
@@ -0,0 +1,92 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_SheetCellCursor_idl__
+#define __com_sun_star_sheet_SheetCellCursor_idl__
+
+#ifndef __com_sun_star_table_CellCursor_idl__
+#include <com/sun/star/table/CellCursor.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_SheetCellRange_idl__
+#include <com/sun/star/sheet/SheetCellRange.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XSheetCellCursor_idl__
+#include <com/sun/star/sheet/XSheetCellCursor.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XUsedAreaCursor_idl__
+#include <com/sun/star/sheet/XUsedAreaCursor.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a cursor in a spreadsheet.
+
+ <p>A cursor is a cell range which provides additional methods to move
+ through the table (i.e. to find specific cell ranges).</p>
+ */
+published service SheetCellCursor
+{
+ //-------------------------------------------------------------------------
+
+ /** provides common methods to control the position of the cursor.
+ */
+ service com::sun::star::table::CellCursor;
+
+ //-------------------------------------------------------------------------
+
+ /** provides the complete functionality of a cell range in a spreadsheet
+ document.
+ */
+ service com::sun::star::sheet::SheetCellRange;
+
+ //=========================================================================
+
+ /** provides advanced methods to control the position of the cursor.
+ */
+ interface com::sun::star::sheet::XSheetCellCursor;
+
+ //-------------------------------------------------------------------------
+
+ /** provides methods to find the used area of the entire sheet.
+ */
+ interface com::sun::star::sheet::XUsedAreaCursor;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/SheetCellRange.idl b/offapi/com/sun/star/sheet/SheetCellRange.idl
new file mode 100644
index 000000000000..b87d52b7f0c4
--- /dev/null
+++ b/offapi/com/sun/star/sheet/SheetCellRange.idl
@@ -0,0 +1,434 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_SheetCellRange_idl__
+#define __com_sun_star_sheet_SheetCellRange_idl__
+
+
+#ifndef __com_sun_star_table_CellRange_idl__
+#include <com/sun/star/table/CellRange.idl>
+#endif
+
+#ifndef __com_sun_star_style_CharacterProperties_idl__
+#include <com/sun/star/style/CharacterProperties.idl>
+#endif
+
+#ifndef __com_sun_star_style_CharacterPropertiesAsian_idl__
+#include <com/sun/star/style/CharacterPropertiesAsian.idl>
+#endif
+
+#ifndef __com_sun_star_style_CharacterPropertiesComplex_idl__
+#include <com/sun/star/style/CharacterPropertiesComplex.idl>
+#endif
+
+#ifndef __com_sun_star_style_ParagraphProperties_idl__
+#include <com/sun/star/style/ParagraphProperties.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_SheetRangesQuery_idl__
+#include <com/sun/star/sheet/SheetRangesQuery.idl>
+#endif
+
+
+#ifndef __com_sun_star_util_XReplaceable_idl__
+#include <com/sun/star/util/XReplaceable.idl>
+#endif
+
+#ifndef __com_sun_star_util_XMergeable_idl__
+#include <com/sun/star/util/XMergeable.idl>
+#endif
+
+#ifndef __com_sun_star_util_XIndent_idl__
+#include <com/sun/star/util/XIndent.idl>
+#endif
+
+#ifndef __com_sun_star_table_XColumnRowRange_idl__
+#include <com/sun/star/table/XColumnRowRange.idl>
+#endif
+
+#ifndef __com_sun_star_table_XAutoFormattable_idl__
+#include <com/sun/star/table/XAutoFormattable.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XSheetCellRange_idl__
+#include <com/sun/star/sheet/XSheetCellRange.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XCellRangeData_idl__
+#include <com/sun/star/sheet/XCellRangeData.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XCellRangeFormula_idl__
+#include <com/sun/star/sheet/XCellRangeFormula.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XCellRangeAddressable_idl__
+#include <com/sun/star/sheet/XCellRangeAddressable.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XSheetOperation_idl__
+#include <com/sun/star/sheet/XSheetOperation.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XCellSeries_idl__
+#include <com/sun/star/sheet/XCellSeries.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XArrayFormulaRange_idl__
+#include <com/sun/star/sheet/XArrayFormulaRange.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XMultipleOperation_idl__
+#include <com/sun/star/sheet/XMultipleOperation.idl>
+#endif
+
+#ifndef __com_sun_star_util_XSortable_idl__
+#include <com/sun/star/util/XSortable.idl>
+#endif
+
+#ifndef __com_sun_star_util_XImportable_idl__
+#include <com/sun/star/util/XImportable.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XSubTotalCalculatable_idl__
+#include <com/sun/star/sheet/XSubTotalCalculatable.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XSheetFilterableEx_idl__
+#include <com/sun/star/sheet/XSheetFilterableEx.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XCellFormatRangesSupplier_idl__
+#include <com/sun/star/sheet/XCellFormatRangesSupplier.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XUniqueCellFormatRangesSupplier_idl__
+#include <com/sun/star/sheet/XUniqueCellFormatRangesSupplier.idl>
+#endif
+
+#ifndef __com_sun_star_chart_XChartDataArray_idl__
+#include <com/sun/star/chart/XChartDataArray.idl>
+#endif
+
+
+#ifndef __com_sun_star_awt_Point_idl__
+#include <com/sun/star/awt/Point.idl>
+#endif
+
+#ifndef __com_sun_star_awt_Size_idl__
+#include <com/sun/star/awt/Size.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XSheetConditionalEntries_idl__
+#include <com/sun/star/sheet/XSheetConditionalEntries.idl>
+#endif
+
+#ifndef __com_sun_star_beans_XPropertySet_idl__
+#include <com/sun/star/beans/XPropertySet.idl>
+#endif
+
+#ifndef __com_sun_star_beans_XTolerantMultiPropertySet_idl__
+#include <com/sun/star/beans/XTolerantMultiPropertySet.idl>
+#endif
+
+#ifndef __com_sun_star_util_XModifyBroadcaster_idl__
+#include <com/sun/star/util/XModifyBroadcaster.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a rectangular range of cells in a spreadsheet document.
+
+ <p>This service is an extension of the CellRange service for use
+ in spreadsheet documents.</p>
+ */
+published service SheetCellRange
+{
+ //-------------------------------------------------------------------------
+
+ /** provides basic handling of cell ranges and contributes common cell
+ formatting properties.
+ */
+ service com::sun::star::table::CellRange;
+
+ //-------------------------------------------------------------------------
+
+ /** contributes properties for character formatting of Western text.
+ */
+ service com::sun::star::style::CharacterProperties;
+
+ //-------------------------------------------------------------------------
+
+ /** contributes properties for character formatting of Asian text.
+ */
+ service com::sun::star::style::CharacterPropertiesAsian;
+
+ //-------------------------------------------------------------------------
+
+ /** contributes properties for character formatting of Complex text.
+ */
+ service com::sun::star::style::CharacterPropertiesComplex;
+
+ //-------------------------------------------------------------------------
+
+ /** contributes properties for paragraph formatting.
+ */
+ service com::sun::star::style::ParagraphProperties;
+
+ //-------------------------------------------------------------------------
+
+ /** provides interfaces to find cells with specific properties.
+ */
+ service com::sun::star::sheet::SheetRangesQuery;
+
+ //=========================================================================
+
+ /** provides "Find & Replace" functionality.
+
+ <p>The property
+ <member scope="com::sun::star::util">SearchDescriptor::SearchWords</member>
+ has a different meaning in spreadsheets: If set to <TRUE/>, the
+ spreadsheet searches for cells containing the serch text only.</p>
+ */
+ interface com::sun::star::util::XReplaceable;
+
+ //-------------------------------------------------------------------------
+
+ /** provides merging and unmerging the cells of this cell range.
+ */
+ interface com::sun::star::util::XMergeable;
+
+ //-------------------------------------------------------------------------
+
+ /** provides modifying the cell indentation.
+ */
+ interface com::sun::star::util::XIndent;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to the collections of columns and rows.
+ */
+ interface com::sun::star::table::XColumnRowRange;
+
+ //-------------------------------------------------------------------------
+
+ /** provides applying an AutoFormat to the cell range.
+ */
+ interface com::sun::star::table::XAutoFormattable;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to the spreadsheet that contains this cell range.
+ */
+ interface com::sun::star::sheet::XSheetCellRange;
+
+ //-------------------------------------------------------------------------
+
+ /** provides simultaneous access to the contents of all cells.
+ */
+ interface com::sun::star::sheet::XCellRangeData;
+
+ //-------------------------------------------------------------------------
+
+ /** provides simultaneous access to the formula contents of all cells.
+
+ @since OOo 1.1.2
+ */
+ [optional] interface com::sun::star::sheet::XCellRangeFormula;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to the cell range address of this range.
+ */
+ interface com::sun::star::sheet::XCellRangeAddressable;
+
+ //-------------------------------------------------------------------------
+
+ /** provides computation of a value based on the contents of all
+ cells of this range and to clear specific cells.
+ */
+ interface com::sun::star::sheet::XSheetOperation;
+
+ //-------------------------------------------------------------------------
+
+ /** provides filling out the cell range automatically with values based
+ on a start value, step count and fill mode.
+ */
+ interface com::sun::star::sheet::XCellSeries;
+
+ //-------------------------------------------------------------------------
+
+ /** provides handling of array formulas.
+ */
+ interface com::sun::star::sheet::XArrayFormulaRange;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to the Multiple Operations feature.
+ */
+ interface com::sun::star::sheet::XMultipleOperation;
+
+ //-------------------------------------------------------------------------
+
+ /** provides sorting functionality.
+ */
+ interface com::sun::star::util::XSortable;
+
+ //-------------------------------------------------------------------------
+
+ /** provides functionality to import data from external data sources.
+
+ @see com::sun::star::sheet::DatabaseImportDescriptor
+
+ */
+ interface com::sun::star::util::XImportable;
+
+ //-------------------------------------------------------------------------
+
+ /** provides calculating SubTotal values in this range.
+ */
+ interface com::sun::star::sheet::XSubTotalCalculatable;
+
+ //-------------------------------------------------------------------------
+
+ /** provides filtering the contents of this range.
+ */
+ interface com::sun::star::sheet::XSheetFilterableEx;
+
+ //-------------------------------------------------------------------------
+
+ /** provide access to a collection of equal-formatted cell ranges.
+ */
+ interface com::sun::star::sheet::XCellFormatRangesSupplier;
+
+ //-------------------------------------------------------------------------
+
+ /** provide access to a collection of equal-formatted cell ranges.
+ */
+ interface com::sun::star::sheet::XUniqueCellFormatRangesSupplier;
+
+ //-------------------------------------------------------------------------
+
+ /** provides modifying the source data cells of a chart and makes
+ it possible to learn about changes in the cell values.
+ */
+ interface com::sun::star::chart::XChartDataArray;
+
+ //-------------------------------------------------------------------------
+
+ [optional] interface com::sun::star::beans::XTolerantMultiPropertySet;
+
+ //-------------------------------------------------------------------------
+
+ /**
+
+ @since OOo 2.0.0
+
+ */
+ [optional] interface com::sun::star::util::XModifyBroadcaster;
+
+ //=========================================================================
+
+ /** contains the position of the top left cell of this range in
+ the sheet (in 1/100 mm).
+
+ <p>This property contains the absolute position in the whole
+ sheet, not the position in the visible area.</p>
+ */
+ [readonly, property] com::sun::star::awt::Point Position;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the size of this range (in 1/100 mm).
+ */
+ [readonly, property] com::sun::star::awt::Size Size;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the conditional formatting settings for this cell.
+
+ <p>After a conditional format has been changed it has to be
+ reinserted into the property set.</p>
+
+ @see com::sun::star::sheet::TableConditionalFormat
+ */
+ [property] com::sun::star::sheet::XSheetConditionalEntries
+ ConditionalFormat;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the conditional formatting settings for this cell,
+ using localized formulas.
+
+ <p>After a conditional format has been changed it has to be
+ reinserted into the property set.</p>
+
+ @see com::sun::star::sheet::TableConditionalFormat
+ */
+ [optional, property] com::sun::star::sheet::XSheetConditionalEntries
+ ConditionalFormatLocal;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the data validation settings for this cell.
+
+ <p>After the data validation settings have been changed the
+ validation has to be reinserted into the property set.</p>
+
+ @see com::sun::star::sheet::TableValidation
+ */
+ [property] com::sun::star::beans::XPropertySet Validation;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the data validation settings for this cell,
+ using localized formulas.
+
+ <p>After the data validation settings have been changed the
+ validation has to be reinserted into the property set.</p>
+
+ @see com::sun::star::sheet::TableValidation
+ */
+ [optional, property] com::sun::star::beans::XPropertySet ValidationLocal;
+
+ //-------------------------------------------------------------------------
+
+ /** Returns the absolute adress of the range as string, e.g. "$Sheet1.$B$2:$D$5".
+ */
+ [optional, readonly, property] string AbsoluteName;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/SheetCellRanges.idl b/offapi/com/sun/star/sheet/SheetCellRanges.idl
new file mode 100644
index 000000000000..020521203af5
--- /dev/null
+++ b/offapi/com/sun/star/sheet/SheetCellRanges.idl
@@ -0,0 +1,257 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_SheetCellRanges_idl__
+#define __com_sun_star_sheet_SheetCellRanges_idl__
+
+
+#ifndef __com_sun_star_table_CellProperties_idl__
+#include <com/sun/star/table/CellProperties.idl>
+#endif
+
+#ifndef __com_sun_star_style_CharacterProperties_idl__
+#include <com/sun/star/style/CharacterProperties.idl>
+#endif
+
+#ifndef __com_sun_star_style_CharacterPropertiesAsian_idl__
+#include <com/sun/star/style/CharacterPropertiesAsian.idl>
+#endif
+
+#ifndef __com_sun_star_style_CharacterPropertiesComplex_idl__
+#include <com/sun/star/style/CharacterPropertiesComplex.idl>
+#endif
+
+#ifndef __com_sun_star_style_ParagraphProperties_idl__
+#include <com/sun/star/style/ParagraphProperties.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_SheetRangesQuery_idl__
+#include <com/sun/star/sheet/SheetRangesQuery.idl>
+#endif
+
+
+#ifndef __com_sun_star_util_XReplaceable_idl__
+#include <com/sun/star/util/XReplaceable.idl>
+#endif
+
+#ifndef __com_sun_star_util_XIndent_idl__
+#include <com/sun/star/util/XIndent.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XSheetOperation_idl__
+#include <com/sun/star/sheet/XSheetOperation.idl>
+#endif
+
+#ifndef __com_sun_star_chart_XChartDataArray_idl__
+#include <com/sun/star/chart/XChartDataArray.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XSheetCellRangeContainer_idl__
+#include <com/sun/star/sheet/XSheetCellRangeContainer.idl>
+#endif
+
+#ifndef __com_sun_star_container_XEnumerationAccess_idl__
+#include <com/sun/star/container/XEnumerationAccess.idl>
+#endif
+
+#ifndef __com_sun_star_container_XNameContainer_idl__
+#include <com/sun/star/container/XNameContainer.idl>
+#endif
+
+
+#ifndef __com_sun_star_sheet_XSheetConditionalEntries_idl__
+#include <com/sun/star/sheet/XSheetConditionalEntries.idl>
+#endif
+
+#ifndef __com_sun_star_beans_XPropertySet_idl__
+#include <com/sun/star/beans/XPropertySet.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a collection of cell ranges in a spreadsheet document.
+
+ @see com::sun::star::sheet::SheetCellRange
+ */
+published service SheetCellRanges
+{
+ //-------------------------------------------------------------------------
+
+ /** contributes common cell formatting properties.
+ */
+ service com::sun::star::table::CellProperties;
+
+ //-------------------------------------------------------------------------
+
+ /** contributes properties for character formatting of Western text.
+ */
+ service com::sun::star::style::CharacterProperties;
+
+ //-------------------------------------------------------------------------
+
+ /** contributes properties for character formatting of Asian text.
+ */
+ service com::sun::star::style::CharacterPropertiesAsian;
+
+ //-------------------------------------------------------------------------
+
+ /** contributes properties for character formatting of Complex text.
+ */
+ service com::sun::star::style::CharacterPropertiesComplex;
+
+ //-------------------------------------------------------------------------
+
+ /** contributes properties for paragraph formatting.
+ */
+ service com::sun::star::style::ParagraphProperties;
+
+ //-------------------------------------------------------------------------
+
+ /** provides interfaces to find cells with specific properties.
+ */
+ service com::sun::star::sheet::SheetRangesQuery;
+
+ //=========================================================================
+
+ /** provides "Find & Replace" functionality.
+
+ <p>The property
+ <member scope="com::sun::star::util">SearchDescriptor::SearchWords</member>
+ has a different meaning in spreadsheets: If set to <TRUE/>, the
+ spreadsheet searches for cells containing the serch text only.</p>
+ */
+ interface com::sun::star::util::XReplaceable;
+
+ //-------------------------------------------------------------------------
+
+ /** provides modifying the cell indentation.
+ */
+ interface com::sun::star::util::XIndent;
+
+ //-------------------------------------------------------------------------
+
+ /** provides computation of a value based on the contents of all
+ cells of this range and to clear specific cells.
+ */
+ interface com::sun::star::sheet::XSheetOperation;
+
+ //-------------------------------------------------------------------------
+
+ /** provides modifying the source data cells of a chart and makes
+ it possible to learn about changes in the cell values.
+ */
+ interface com::sun::star::chart::XChartDataArray;
+
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access cell ranges via index and to add and
+ remove cell ranges.
+ */
+ interface com::sun::star::sheet::XSheetCellRangeContainer;
+
+ //-------------------------------------------------------------------------
+
+ /** creates an enumeration of all cell ranges.
+
+ @see com::sun::star::sheet::SheetCellRangesEnumeration
+ */
+ interface com::sun::star::container::XEnumerationAccess;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access of the cell ranges via an user-defined name.
+
+ <p>Later the range can be found, replaced or removed using that
+ name.</p>
+ */
+ interface com::sun::star::container::XNameContainer;
+
+ //=========================================================================
+
+ /** contains the conditional formatting settings for this cell.
+
+ <p>After a conditional format has been changed it has to be
+ reinserted into the property set.</p>
+
+ @see com::sun::star::sheet::TableConditionalFormat
+ */
+ [property] com::sun::star::sheet::XSheetConditionalEntries
+ ConditionalFormat;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the conditional formatting settings for this cell,
+ using localized formulas.
+
+ <p>After a conditional format has been changed it has to be
+ reinserted into the property set.</p>
+
+ @see com::sun::star::sheet::TableConditionalFormat
+ */
+ [optional, property] com::sun::star::sheet::XSheetConditionalEntries
+ ConditionalFormatLocal;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the data validation settings for this cell.
+
+ <p>After the data validation settings have been changed the
+ validation has to be reinserted into the property set.</p>
+
+ @see com::sun::star::sheet::TableValidation
+ */
+ [property] com::sun::star::beans::XPropertySet Validation;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the data validation settings for this cell,
+ using localized formulas.
+
+ <p>After the data validation settings have been changed the
+ validation has to be reinserted into the property set.</p>
+
+ @see com::sun::star::sheet::TableValidation
+ */
+ [optional, property] com::sun::star::beans::XPropertySet ValidationLocal;
+
+ //-------------------------------------------------------------------------
+
+ /** Returns the absolute adress of the ranges as string, e.g. "$Sheet1.$B$2:$D$5".
+ */
+ [optional, readonly, property] string AbsoluteName;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/SheetCellRangesEnumeration.idl b/offapi/com/sun/star/sheet/SheetCellRangesEnumeration.idl
new file mode 100644
index 000000000000..f0989e3cffd2
--- /dev/null
+++ b/offapi/com/sun/star/sheet/SheetCellRangesEnumeration.idl
@@ -0,0 +1,62 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_SheetCellRangesEnumeration_idl__
+#define __com_sun_star_sheet_SheetCellRangesEnumeration_idl__
+
+#ifndef __com_sun_star_container_XEnumeration_idl__
+#include <com/sun/star/container/XEnumeration.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents an enumeration of cell ranges in a spreadsheet document.
+
+ @see com::sun::star::sheet::SheetCellRanges
+ */
+published service SheetCellRangesEnumeration
+{
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access the cell ranges in the enumeration.
+
+ @see com::sun::star::sheet::SheetCellRange
+ */
+ interface com::sun::star::container::XEnumeration;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/SheetFilterDescriptor.idl b/offapi/com/sun/star/sheet/SheetFilterDescriptor.idl
new file mode 100644
index 000000000000..8e94a6b2edcf
--- /dev/null
+++ b/offapi/com/sun/star/sheet/SheetFilterDescriptor.idl
@@ -0,0 +1,148 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_SheetFilterDescriptor_idl__
+#define __com_sun_star_sheet_SheetFilterDescriptor_idl__
+
+#ifndef __com_sun_star_sheet_XSheetFilterDescriptor_idl__
+#include <com/sun/star/sheet/XSheetFilterDescriptor.idl>
+#endif
+
+#ifndef __com_sun_star_beans_XPropertySet_idl__
+#include <com/sun/star/beans/XPropertySet.idl>
+#endif
+
+#ifndef __com_sun_star_table_TableOrientation_idl__
+#include <com/sun/star/table/TableOrientation.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellAddress_idl__
+#include <com/sun/star/table/CellAddress.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a description of how a cell range is to be filtered.
+
+ <p>The descriptor contains properties and a collection of filter
+ conditions (filter fields) which control the behaviour of a filter
+ operation.</p>
+ */
+published service SheetFilterDescriptor
+{
+ //-------------------------------------------------------------------------
+
+ /** provides access to the collection of filter fields.
+ */
+ interface com::sun::star::sheet::XSheetFilterDescriptor;
+
+ //-------------------------------------------------------------------------
+
+//!published service PropertySet
+ /** provides access to the properties.
+ */
+ interface com::sun::star::beans::XPropertySet;
+
+ //=========================================================================
+
+ /** specifies if the case of letters is important when comparing entries.
+ */
+ [property] boolean IsCaseSensitive;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies if duplicate entries are left out of the result.
+ */
+ [property] boolean SkipDuplicates;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies if the <member>TableFilterField::StringValue</member>
+ strings are interpreted as regular expressions.
+ */
+ [property] boolean UseRegularExpressions;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies if the <member>SheetFilterDescriptor::OutputPosition</member>
+ position is saved for future calls.
+
+ <p>This is only used if
+ <member>SheetFilterDescriptor::CopyOutputData</member> is <TRUE/>.</p>
+ */
+ [property] boolean SaveOutputPosition;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies if columns or rows are filtered.
+ */
+ [property] com::sun::star::table::TableOrientation Orientation;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies if the first row (or column) contains headers which should
+ not be filtered.
+ */
+ [property] boolean ContainsHeader;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies if the filtered data should be copied to another position
+ in the document.
+ */
+ [property] boolean CopyOutputData;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the position where filtered data are to be copied.
+
+ <p>This is only used if
+ <member>SheetFilterDescriptor::CopyOutputData</member> is <TRUE/>.</p>
+ */
+ [property] com::sun::star::table::CellAddress OutputPosition;
+
+ //-------------------------------------------------------------------------
+
+ /** returns the maximum number of filter fields in the descriptor.
+
+ <p>This read-only property indicates the maximum count of fields the
+ current implementation supports.</p>
+ */
+ [readonly, property] long MaxFieldCount;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/SheetLink.idl b/offapi/com/sun/star/sheet/SheetLink.idl
new file mode 100644
index 000000000000..b81b79ce19be
--- /dev/null
+++ b/offapi/com/sun/star/sheet/SheetLink.idl
@@ -0,0 +1,109 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_SheetLink_idl__
+#define __com_sun_star_sheet_SheetLink_idl__
+
+#ifndef __com_sun_star_container_XNamed_idl__
+#include <com/sun/star/container/XNamed.idl>
+#endif
+
+#ifndef __com_sun_star_util_XRefreshable_idl__
+#include <com/sun/star/util/XRefreshable.idl>
+#endif
+
+#ifndef __com_sun_star_beans_XPropertySet_idl__
+#include <com/sun/star/beans/XPropertySet.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a sheet link.
+
+ <p>A sheet link contains the source data of linked sheets, i.e. the
+ URL and sheet name of the external document.</p>
+
+ <p>To create a linked sheet, the sheet which will be used as linked
+ sheet has to exist already. The method
+ <member>XSheetLinkable::link</member> creates a <type>SheetLink</type>
+ object in the document's <type>SheetLinks</type> collection and links
+ the sheet to the specified external sheet.</p>
+ */
+published service SheetLink
+{
+ //-------------------------------------------------------------------------
+
+ /** provides access to the name of the linked document.
+
+ <p>This name is equal to the <const>Url</const> property.</p>
+ */
+ interface com::sun::star::container::XNamed;
+
+ //-------------------------------------------------------------------------
+
+ /** provides methods to reload the external data.
+ */
+ interface com::sun::star::util::XRefreshable;
+
+ //-------------------------------------------------------------------------
+
+//!published service PropertySet
+ /** provides access to the properties.
+ */
+ interface com::sun::star::beans::XPropertySet;
+
+ //=========================================================================
+
+ /** specifies the URL of the source document.
+ */
+ [property] string Url;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the name of the filter needed to load the source
+ document.
+ */
+ [property] string Filter;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the filter options needed to load the source document.
+ */
+ [property] string FilterOptions;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/SheetLinkMode.idl b/offapi/com/sun/star/sheet/SheetLinkMode.idl
new file mode 100644
index 000000000000..60794b5849ed
--- /dev/null
+++ b/offapi/com/sun/star/sheet/SheetLinkMode.idl
@@ -0,0 +1,70 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_SheetLinkMode_idl__
+#define __com_sun_star_sheet_SheetLinkMode_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** used to specify how a sheet is linked to another sheet.
+
+ @see com::sun::star::sheet::SheetLinks
+ @see com::sun::star::sheet::SheetLink
+ @see com::sun::star::sheet::XSheetLinkable
+ */
+published enum SheetLinkMode
+{
+ //-------------------------------------------------------------------------
+
+ /** sheet is not linked.
+ */
+ NONE,
+
+ //-------------------------------------------------------------------------
+
+ /** all contents (values and formulas) are copied.
+ */
+ NORMAL,
+
+ //-------------------------------------------------------------------------
+
+ /** instead of using formulas, the result values are copied.
+ */
+ VALUE
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/SheetLinks.idl b/offapi/com/sun/star/sheet/SheetLinks.idl
new file mode 100644
index 000000000000..ee960b37e57c
--- /dev/null
+++ b/offapi/com/sun/star/sheet/SheetLinks.idl
@@ -0,0 +1,89 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_SheetLinks_idl__
+#define __com_sun_star_sheet_SheetLinks_idl__
+
+#ifndef __com_sun_star_container_XIndexAccess_idl__
+#include <com/sun/star/container/XIndexAccess.idl>
+#endif
+#ifndef __com_sun_star_container_XNameAccess_idl__
+#include <com/sun/star/container/XNameAccess.idl>
+#endif
+#ifndef __com_sun_star_container_XEnumerationAccess_idl__
+#include <com/sun/star/container/XEnumerationAccess.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a collection of sheet links.
+
+ @see com::sun::star::sheet::SheetLink
+ @see com::sun::star::sheet::SpreadsheetDocument
+ */
+published service SheetLinks
+{
+ //-------------------------------------------------------------------------
+
+ /** provides access to the sheet links via index.
+
+ @see com::sun::star::sheet::SheetLink
+
+ */
+ interface com::sun::star::container::XIndexAccess;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to the sheet links using the name of the linked
+ document.
+
+ @see com::sun::star::sheet::SheetLink
+
+ */
+ interface com::sun::star::container::XNameAccess;
+
+ //-------------------------------------------------------------------------
+
+ /** creates an enumeration of all sheet links.
+
+ @see com::sun::star::sheet::SheetLinksEnumeration
+
+ */
+ interface com::sun::star::container::XEnumerationAccess;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/SheetLinksEnumeration.idl b/offapi/com/sun/star/sheet/SheetLinksEnumeration.idl
new file mode 100644
index 000000000000..85749701c85a
--- /dev/null
+++ b/offapi/com/sun/star/sheet/SheetLinksEnumeration.idl
@@ -0,0 +1,62 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_SheetLinksEnumeration_idl__
+#define __com_sun_star_sheet_SheetLinkssEnumeration_idl__
+
+#ifndef __com_sun_star_container_XEnumeration_idl__
+#include <com/sun/star/container/XEnumeration.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents an enumeration of sheet links.
+
+ @see com::sun::star::sheet::SheetLink
+ */
+published service SheetLinksEnumeration
+{
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access the sheet links in the enumeration.
+
+ @see com::sun::star::sheet::SheetLink
+ */
+ interface com::sun::star::container::XEnumeration;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/SheetRangesQuery.idl b/offapi/com/sun/star/sheet/SheetRangesQuery.idl
new file mode 100644
index 000000000000..623220a1df20
--- /dev/null
+++ b/offapi/com/sun/star/sheet/SheetRangesQuery.idl
@@ -0,0 +1,68 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_SheetRangesQuery_idl__
+#define __com_sun_star_sheet_SheetRangesQuery_idl__
+
+#ifndef __com_sun_star_sheet_XCellRangesQuery_idl__
+#include <com/sun/star/sheet/XCellRangesQuery.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XFormulaQuery_idl__
+#include <com/sun/star/sheet/XFormulaQuery.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides interfaces to find cells with specific properties.
+ */
+published service SheetRangesQuery
+{
+ //-------------------------------------------------------------------------
+
+ /** provides methods to query for cell ranges with specific contents.
+ */
+ interface com::sun::star::sheet::XCellRangesQuery;
+
+ //-------------------------------------------------------------------------
+
+ /** provides methods to find dependent cells of formula cells.
+ */
+ interface com::sun::star::sheet::XFormulaQuery;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/SheetSortDescriptor.idl b/offapi/com/sun/star/sheet/SheetSortDescriptor.idl
new file mode 100644
index 000000000000..64e1e240434c
--- /dev/null
+++ b/offapi/com/sun/star/sheet/SheetSortDescriptor.idl
@@ -0,0 +1,102 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_sheet_SheetSortDescriptor_idl__
+#define __com_sun_star_sheet_SheetSortDescriptor_idl__
+
+#ifndef __com_sun_star_table_TableSortDescriptor_idl__
+#include <com/sun/star/table/TableSortDescriptor.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellAddress_idl__
+#include <com/sun/star/table/CellAddress.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** a description of how a cell range is to be sorted.
+
+ <p>This service extends the <type scope="com::sun::star::table">TableSortDescriptor</type>
+ service with spreadsheet specific properties.</p>
+ */
+published service SheetSortDescriptor
+{
+ //-------------------------------------------------------------------------
+
+ /** provides common table sorting properties.
+ */
+ service com::sun::star::table::TableSortDescriptor;
+
+ //=========================================================================
+
+ /** specifies if cell formats are moved with the contents
+ they belong to.
+ */
+ [property] boolean BindFormatsToContent;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies if a user defined sorting list is used.
+ */
+ [property] boolean IsUserListEnabled;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies which user defined sorting list is used.
+
+ <p>This property is only used, if
+ <member>SheetSortDescriptor::IsUserListEnabled</member> is <TRUE/>.</p>
+ */
+ [property] long UserListIndex;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies if the sorted data should be copied to another
+ position in the document.
+ */
+ [property] boolean CopyOutputData;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the position where sorted data are to be copied.
+
+ <p>This property is only used, if
+ <member>SheetSortDescriptor::CopyOutputData</member> is <TRUE/>.</p>
+ */
+ [property] com::sun::star::table::CellAddress OutputPosition;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/SheetSortDescriptor2.idl b/offapi/com/sun/star/sheet/SheetSortDescriptor2.idl
new file mode 100644
index 000000000000..6c0723c06d55
--- /dev/null
+++ b/offapi/com/sun/star/sheet/SheetSortDescriptor2.idl
@@ -0,0 +1,116 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_sheet_SheetSortDescriptor2_idl__
+#define __com_sun_star_sheet_SheetSortDescriptor2_idl__
+
+#ifndef __com_sun_star_table_TableSortDescriptor2_idl__
+#include <com/sun/star/table/TableSortDescriptor2.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellAddress_idl__
+#include <com/sun/star/table/CellAddress.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** a description of how a cell range is to be sorted.
+
+ <p>This service extends the <type scope="com::sun::star::table">TableSortDescriptor2</type>
+ service with spreadsheet specific properties.</p>
+
+ @since OOo 1.1.2
+ */
+published service SheetSortDescriptor2
+{
+ //-------------------------------------------------------------------------
+
+ /** provides common sorting properties.
+
+ The fields in the SortFields property are not fully supported at the moment.
+ IsCaseSensitive, CollatorLocale and CollatorAlgorithm are only supported once and if
+ every field contains different of this it gives undefined results.
+
+ */
+ service com::sun::star::table::TableSortDescriptor2;
+
+ //=========================================================================
+
+ /** specifies if cell formats are moved with the contents
+ they belong to.
+ */
+ [property] boolean BindFormatsToContent;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies if a user defined sorting list is used.
+ */
+ [property] boolean IsUserListEnabled;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies which user defined sorting list is used.
+
+ <p>This property is only used, if
+ <member>SheetSortDescriptor::IsUserListEnabled</member> is <TRUE/>.</p>
+ */
+ [property] long UserListIndex;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies if the sorted data should be copied to another
+ position in the document.
+ */
+ [property] boolean CopyOutputData;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the position where sorted data are to be copied.
+
+ <p>This property is only used, if
+ <member>SheetSortDescriptor::CopyOutputData</member> is <TRUE/>.</p>
+ */
+ [property] com::sun::star::table::CellAddress OutputPosition;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether the first row or column (depending on
+ <member scope="com::sun::star::table">TableSortDescriptor::Orientation</member>) is a header which
+ should not be sorted.
+ */
+ [property] boolean ContainsHeader;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/SingleReference.idl b/offapi/com/sun/star/sheet/SingleReference.idl
new file mode 100644
index 000000000000..a4e191d08280
--- /dev/null
+++ b/offapi/com/sun/star/sheet/SingleReference.idl
@@ -0,0 +1,90 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_SingleReference_idl__
+#define __com_sun_star_sheet_SingleReference_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** contains a reference to a single cell.
+ */
+struct SingleReference
+{
+ //-------------------------------------------------------------------------
+
+ /** is the absolute column number.
+ */
+ long Column;
+
+ //-------------------------------------------------------------------------
+
+ /** is the relative column number.
+ */
+ long RelativeColumn;
+
+ //-------------------------------------------------------------------------
+
+ /** is the absolute row number.
+ */
+ long Row;
+
+ //-------------------------------------------------------------------------
+
+ /** is the relative row number.
+ */
+ long RelativeRow;
+
+ //-------------------------------------------------------------------------
+
+ /** is the absolute sheet number.
+ */
+ long Sheet;
+
+ //-------------------------------------------------------------------------
+
+ /** is the relative sheet number.
+ */
+ long RelativeSheet;
+
+ //-------------------------------------------------------------------------
+
+ /** contains flags.
+ @see ReferenceFlags
+ */
+ long Flags;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/Solver.idl b/offapi/com/sun/star/sheet/Solver.idl
new file mode 100644
index 000000000000..25fb5ac92f41
--- /dev/null
+++ b/offapi/com/sun/star/sheet/Solver.idl
@@ -0,0 +1,50 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_Solver_idl__
+#define __com_sun_star_sheet_Solver_idl__
+
+#ifndef __com_sun_star_sheet_XSolver_idl__
+#include <com/sun/star/sheet/XSolver.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** A solver for a model that is defined by spreadsheet cells.
+ */
+service Solver: XSolver;
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/SolverConstraint.idl b/offapi/com/sun/star/sheet/SolverConstraint.idl
new file mode 100644
index 000000000000..10d735f92a15
--- /dev/null
+++ b/offapi/com/sun/star/sheet/SolverConstraint.idl
@@ -0,0 +1,66 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_SolverConstraint_idl__
+#define __com_sun_star_sheet_SolverConstraint_idl__
+
+#ifndef __com_sun_star_table_CellAddress_idl__
+#include <com/sun/star/table/CellAddress.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_SolverConstraintOperator_idl__
+#include <com/sun/star/sheet/SolverConstraintOperator.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** is used to specify a constraint for a solver model.
+ */
+struct SolverConstraint
+{
+ /// The address of the cell that is constrained.
+ com::sun::star::table::CellAddress Left;
+
+ /// The type of the constraint.
+ SolverConstraintOperator Operator;
+
+ /** The comparison value, of type <atom>double</atom> or
+ <type scope="com::sun::star::table">CellAddress</type>.
+ */
+ any Right;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/SolverConstraintOperator.idl b/offapi/com/sun/star/sheet/SolverConstraintOperator.idl
new file mode 100644
index 000000000000..c73be84a1ac6
--- /dev/null
+++ b/offapi/com/sun/star/sheet/SolverConstraintOperator.idl
@@ -0,0 +1,62 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_SolverConstraintOperator_idl__
+#define __com_sun_star_sheet_SolverConstraintOperator_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** is used to specify the type of <type>SolverConstraint</type>.
+ */
+enum SolverConstraintOperator
+{
+ /// The cell value is less or equal to the specified value.
+ LESS_EQUAL,
+
+ /// The cell value is equal to the specified value.
+ EQUAL,
+
+ /// The cell value is greater or equal to the specified value.
+ GREATER_EQUAL,
+
+ /// The cell value is an integer value.
+ INTEGER,
+
+ /// The cell value is a binary value (0 or 1).
+ BINARY
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/Spreadsheet.idl b/offapi/com/sun/star/sheet/Spreadsheet.idl
new file mode 100644
index 000000000000..0b21a050d099
--- /dev/null
+++ b/offapi/com/sun/star/sheet/Spreadsheet.idl
@@ -0,0 +1,279 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_Spreadsheet_idl__
+#define __com_sun_star_sheet_Spreadsheet_idl__
+
+#ifndef __com_sun_star_sheet_SheetCellRange_idl__
+#include <com/sun/star/sheet/SheetCellRange.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XSpreadsheet_idl__
+#include <com/sun/star/sheet/XSpreadsheet.idl>
+#endif
+
+#ifndef __com_sun_star_container_XNamed_idl__
+#include <com/sun/star/container/XNamed.idl>
+#endif
+
+#ifndef __com_sun_star_util_XProtectable_idl__
+#include <com/sun/star/util/XProtectable.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XDataPilotTablesSupplier_idl__
+#include <com/sun/star/sheet/XDataPilotTablesSupplier.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XScenariosSupplier_idl__
+#include <com/sun/star/sheet/XScenariosSupplier.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XSheetAnnotationsSupplier_idl__
+#include <com/sun/star/sheet/XSheetAnnotationsSupplier.idl>
+#endif
+
+#ifndef __com_sun_star_drawing_XDrawPageSupplier_idl__
+#include <com/sun/star/drawing/XDrawPageSupplier.idl>
+#endif
+
+#ifndef __com_sun_star_table_XTableChartsSupplier_idl__
+#include <com/sun/star/table/XTableChartsSupplier.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XCellRangeMovement_idl__
+#include <com/sun/star/sheet/XCellRangeMovement.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XPrintAreas_idl__
+#include <com/sun/star/sheet/XPrintAreas.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XSheetPageBreak_idl__
+#include <com/sun/star/sheet/XSheetPageBreak.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XSheetOutline_idl__
+#include <com/sun/star/sheet/XSheetOutline.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XSheetAuditing_idl__
+#include <com/sun/star/sheet/XSheetAuditing.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XSheetLinkable_idl__
+#include <com/sun/star/sheet/XSheetLinkable.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_Scenario_idl__
+#include <com/sun/star/sheet/Scenario.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XExternalSheetName_idl__
+#include <com/sun/star/sheet/XExternalSheetName.idl>
+#endif
+
+#include <com/sun/star/util/Color.idl>
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a complete spreadsheet in a spreadsheet document.
+
+ <p>This service extents the service SheetCellRange. A spreadsheet is
+ nothing else than a cell range with extended functionality.</p>
+
+ @see com::sun::star::sheet::SpreadsheetDocument
+ */
+service Spreadsheet
+{
+ //-------------------------------------------------------------------------
+
+ /** provides functionality for cell range handling.
+ */
+ service com::sun::star::sheet::SheetCellRange;
+
+ //=========================================================================
+
+ service com::sun::star::sheet::Scenario;
+
+ //=========================================================================
+
+ /** provides methods to create a cell cursor.
+ */
+ interface com::sun::star::sheet::XSpreadsheet;
+
+ //-------------------------------------------------------------------------
+
+ /** provides accessing the spreadsheet name.
+ */
+ interface com::sun::star::container::XNamed;
+
+ //-------------------------------------------------------------------------
+
+ /** provides methods to protect and unprotect the sheet contents.
+ */
+ interface com::sun::star::util::XProtectable;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to the collection of DataPilot tables.
+ */
+ interface com::sun::star::sheet::XDataPilotTablesSupplier;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to the collection of scenarios.
+ */
+ interface com::sun::star::sheet::XScenariosSupplier;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to the collection of annotations.
+ */
+ interface com::sun::star::sheet::XSheetAnnotationsSupplier;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to the draw page of this spreadsheet.
+ */
+ interface com::sun::star::drawing::XDrawPageSupplier;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to the collection of chart objects.
+ */
+ interface com::sun::star::table::XTableChartsSupplier;
+
+ //-------------------------------------------------------------------------
+
+ /** provides methods to move cell ranges inside the spreadsheet or to
+ other spreadsheets in this document.
+ */
+ interface com::sun::star::sheet::XCellRangeMovement;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to the print area settings of this sheet.
+ */
+ interface com::sun::star::sheet::XPrintAreas;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to the page breaks of this sheet.
+ */
+ interface com::sun::star::sheet::XSheetPageBreak;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to row and column outline settings.
+ */
+ interface com::sun::star::sheet::XSheetOutline;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to the auditing (detective) functionality.
+ */
+ interface com::sun::star::sheet::XSheetAuditing;
+
+ //-------------------------------------------------------------------------
+
+ /** provides methods for a linked sheet.
+ */
+ interface com::sun::star::sheet::XSheetLinkable;
+
+ //-------------------------------------------------------------------------
+
+ /** provides a method to set an external name at the sheet.
+
+ @since OOo 3.0
+ */
+ [optional] interface com::sun::star::sheet::XExternalSheetName;
+
+ //=========================================================================
+
+ /** specifies if the sheet is visible.
+ */
+ [property] boolean IsVisible;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the page style of the sheet.
+ */
+ [property] string PageStyle;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the direction of the columns in the spreadsheet.
+
+ <p>Possible values are com::sun::star::text::WritingMode2::LR_TB to
+ order the columns from left to right, and
+ com::sun::star::text::WritingMode2::RL_TB to order the columns from
+ right to left.</p>
+
+ @see com::sun::star::text::WritingMode2
+ */
+ [optional, property] short TableLayout;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether the sheet has an automatic print area.
+
+ <p> The automatic print area is used to print a sheet without
+ explicit print areas, also if other sheets have print areas.</p>
+
+ <p> If the property is true, and there are print areas on other sheets,
+ the used area of this sheet is also printed.</p>
+
+ <p> If the property is false, and there are print areas on other sheets,
+ only these specified print areas are printed.</p>
+
+ <p> If there are no print areas on the other sheets it does not matter
+ whether property is true or false.</p>
+
+ <p> This property can only be true, if there are no print areas given
+ on this sheet. If the property is set to true the print areas of
+ this sheet will be removed.</p>
+
+ @see XPrintAreas
+
+ */
+ [optional, property] boolean AutomaticPrintArea;
+
+ /** specifies the color of the sheet tab, if any.
+ */
+ [optional, property] com::sun::star::util::Color TabColor;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/SpreadsheetDocument.idl b/offapi/com/sun/star/sheet/SpreadsheetDocument.idl
new file mode 100644
index 000000000000..3c5ad45d7942
--- /dev/null
+++ b/offapi/com/sun/star/sheet/SpreadsheetDocument.idl
@@ -0,0 +1,288 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_SpreadsheetDocument_idl__
+#define __com_sun_star_sheet_SpreadsheetDocument_idl__
+
+#ifndef __com_sun_star_document_OfficeDocument_idl__
+#include <com/sun/star/document/OfficeDocument.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_SpreadsheetDocumentSettings_idl__
+#include <com/sun/star/sheet/SpreadsheetDocumentSettings.idl>
+#endif
+
+
+#ifndef __com_sun_star_lang_XMultiServiceFactory_idl__
+#include <com/sun/star/lang/XMultiServiceFactory.idl>
+#endif
+
+#ifndef __com_sun_star_frame_XModel_idl__
+#include <com/sun/star/frame/XModel.idl>
+#endif
+
+#ifndef __com_sun_star_document_XActionLockable_idl__
+#include <com/sun/star/document/XActionLockable.idl>
+#endif
+
+#ifndef __com_sun_star_document_XLinkTargetSupplier_idl__
+#include <com/sun/star/document/XLinkTargetSupplier.idl>
+#endif
+
+#ifndef __com_sun_star_util_XProtectable_idl__
+#include <com/sun/star/util/XProtectable.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XSpreadsheetDocument_idl__
+#include <com/sun/star/sheet/XSpreadsheetDocument.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XCalculatable_idl__
+#include <com/sun/star/sheet/XCalculatable.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XDocumentAuditing_idl__
+#include <com/sun/star/sheet/XDocumentAuditing.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XConsolidatable_idl__
+#include <com/sun/star/sheet/XConsolidatable.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XGoalSeek_idl__
+#include <com/sun/star/sheet/XGoalSeek.idl>
+#endif
+
+#ifndef __com_sun_star_drawing_XDrawPagesSupplier_idl__
+#include <com/sun/star/drawing/XDrawPagesSupplier.idl>
+#endif
+
+#ifndef __com_sun_star_style_XStyleFamiliesSupplier_idl__
+#include <com/sun/star/style/XStyleFamiliesSupplier.idl>
+#endif
+
+#ifndef __com_sun_star_util_XNumberFormatsSupplier_idl__
+#include <com/sun/star/util/XNumberFormatsSupplier.idl>
+#endif
+
+
+#ifndef __com_sun_star_sheet_XNamedRanges_idl__
+#include <com/sun/star/sheet/XNamedRanges.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XDatabaseRanges_idl__
+#include <com/sun/star/sheet/XDatabaseRanges.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XLabelRanges_idl__
+#include <com/sun/star/sheet/XLabelRanges.idl>
+#endif
+
+#ifndef __com_sun_star_container_XNameAccess_idl__
+#include <com/sun/star/container/XNameAccess.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XAreaLinks_idl__
+#include <com/sun/star/sheet/XAreaLinks.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XExternalDocLinks_idl__
+#include <com/sun/star/sheet/XExternalDocLinks.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a model component which consists of some settings and
+ one or more spreadsheets.
+ */
+published service SpreadsheetDocument
+{
+ //-------------------------------------------------------------------------
+
+ /** common service for all types of documents.
+ */
+ service com::sun::star::document::OfficeDocument;
+
+ //-------------------------------------------------------------------------
+
+ /** contributes spreadsheet document specific properties.
+
+ @deprecated
+ */
+ [optional] service com::sun::star::sheet::SpreadsheetDocumentSettings;
+
+ //=========================================================================
+
+ /** provides methods to create instances of several spreadsheet
+ services.
+ */
+ interface com::sun::star::lang::XMultiServiceFactory;
+
+ //-------------------------------------------------------------------------
+
+ /** provides common methods for a document model.
+
+ <p>This interface is derived from
+ <type scope="com::sun::star::lang">XComponent</type>.</p>
+ */
+ interface com::sun::star::frame::XModel;
+
+ //-------------------------------------------------------------------------
+
+ /** provides methods to control the automatic update of cell contents.
+ */
+ interface com::sun::star::document::XActionLockable;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to the collection of link targets available in
+ the document.
+ */
+ interface com::sun::star::document::XLinkTargetSupplier;
+
+ //-------------------------------------------------------------------------
+
+ /** provides methods to protect and unprotect the document.
+ */
+ interface com::sun::star::util::XProtectable;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to the collection of spreadsheets.
+ */
+ interface com::sun::star::sheet::XSpreadsheetDocument;
+
+ //-------------------------------------------------------------------------
+
+ /** controls the recalculation settings of the document.
+ */
+ interface com::sun::star::sheet::XCalculatable;
+
+ //-------------------------------------------------------------------------
+
+ /** provides a method to refresh all auditing arrows.
+ */
+ interface com::sun::star::sheet::XDocumentAuditing;
+
+ //-------------------------------------------------------------------------
+
+ /** provides methods to perform a data consolidation.
+ */
+ interface com::sun::star::sheet::XConsolidatable;
+
+ //-------------------------------------------------------------------------
+
+ /** provides a method to perform a goal seek.
+ */
+ interface com::sun::star::sheet::XGoalSeek;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to the collection of draw pages of this document.
+ */
+ interface com::sun::star::drawing::XDrawPagesSupplier;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to the collection of style families.
+
+ <p>A spreadsheet document contains 2 families of styles:
+ "PageStyles" and "CellStyles".</p>
+ */
+ interface com::sun::star::style::XStyleFamiliesSupplier;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to the collection of number formats contained in
+ the document.
+ */
+ interface com::sun::star::util::XNumberFormatsSupplier;
+
+ //=========================================================================
+
+ /** contains the collection of named ranges in the document.
+ */
+ [readonly, property] com::sun::star::sheet::XNamedRanges NamedRanges;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the collection of database ranges in the document.
+ */
+ [readonly, property] com::sun::star::sheet::XDatabaseRanges DatabaseRanges;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the collection of column label ranges in the document.
+ */
+ [readonly, property] com::sun::star::sheet::XLabelRanges ColumnLabelRanges;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the collection of row label ranges in the document.
+ */
+ [readonly, property] com::sun::star::sheet::XLabelRanges RowLabelRanges;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the collection of sheet links in the document.
+ */
+ [readonly, property] com::sun::star::container::XNameAccess SheetLinks;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the collection of area links in the document.
+ */
+ [readonly, property] com::sun::star::sheet::XAreaLinks AreaLinks;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the collection of DDE links in the document.
+ */
+ [readonly, property] com::sun::star::container::XNameAccess DDELinks;
+
+ //-------------------------------------------------------------------------
+
+#if 0
+ /** contains the collection of external document links in the document.
+
+ @since OOo 3.1
+ */
+ [optional, readonly, property] com::sun::star::sheet::XExternalDocLinks ExternalDocLinks;
+#endif
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/SpreadsheetDocumentSettings.idl b/offapi/com/sun/star/sheet/SpreadsheetDocumentSettings.idl
new file mode 100644
index 000000000000..e89ae136053b
--- /dev/null
+++ b/offapi/com/sun/star/sheet/SpreadsheetDocumentSettings.idl
@@ -0,0 +1,250 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_SpreadsheetDocumentSettings_idl__
+#define __com_sun_star_sheet_SpreadsheetDocumentSettings_idl__
+
+#ifndef __com_sun_star_beans_XPropertySet_idl__
+#include <com/sun/star/beans/XPropertySet.idl>
+#endif
+
+#ifndef __com_sun_star_util_Date_idl__
+#include <com/sun/star/util/Date.idl>
+#endif
+
+#ifndef __com_sun_star_i18n_XForbiddenCharacters_idl__
+#include <com/sun/star/i18n/XForbiddenCharacters.idl>
+#endif
+
+#ifndef __com_sun_star_lang_Locale_idl__
+#include <com/sun/star/lang/Locale.idl>
+#endif
+
+#ifndef __com_sun_star_awt_XDevice_idl__
+#include <com/sun/star/awt/XDevice.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** contributes properties to control the configuration which is global
+ for all views of a spreadsheet document.
+
+ @deprecated
+
+ @see com::sun::star::sheet::SpreadsheetDocument
+ */
+published service SpreadsheetDocumentSettings
+{
+ //-------------------------------------------------------------------------
+
+//!published service PropertySet
+ /** provides access to the properties.
+ */
+ interface com::sun::star::beans::XPropertySet;
+
+ //=========================================================================
+
+ /** enables iterated calculation of circular references.
+ */
+ [property] boolean IsIterationEnabled;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies how many iterations are carried out.
+
+ <p>This setting is only used, if iteration is enabled using
+ <member>SpreadsheetDocumentSettings::IsIterationEnabled</member>.</p>
+ */
+ [property] long IterationCount;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the point at which a change in results will stop
+ the iteration.
+
+ <p>More exactly it specifies a difference in the change of the
+ result between two iterations. If the result difference
+ is less than or equal to this epsilon-value, the iteration
+ is stopped.</p>
+
+ <p>This setting is only used, if iteration is enabled using
+ <member>SpreadsheetDocumentSettings::IsIterationEnabled</member>.</p>
+ */
+ [property] double IterationEpsilon;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the number of decimals in the default number format.
+ */
+ [property] short StandardDecimals;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the date that is represented by the value zero.
+ */
+ [property] com::sun::star::util::Date NullDate;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the width of default tabulators.
+ */
+ [property] short DefaultTabStop;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether upper and lower cases are treated as equal
+ when comparing cells.
+ */
+ [property] boolean IgnoreCase;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether calculations are performed with the rounded
+ values displayed in cells (set to <TRUE/>) instead of the
+ internal values (set to <FALSE/>).
+ */
+ [property] boolean CalcAsShown;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether filter criteria must match entire cell contents.
+ */
+ [property] boolean MatchWholeCell;
+
+ //-------------------------------------------------------------------------
+
+ /** enables online spell checking.
+ */
+ [property] boolean SpellOnline;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether column or row labels are looked up from
+ anywhere on the sheet.
+
+ <p>Explicitly defined label ranges are used even if this property
+ is set to <FALSE/>.</p>
+
+ @see com::sun::star::sheet::LabelRanges
+ */
+ [property] boolean LookUpLabels;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether regular expressions in formulas are enabled,
+ e.g., for functions which look up spreadsheet contents.
+ */
+ [property] boolean RegularExpressions;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the interface XForbiddenCharacters.
+ */
+ [readonly, optional, property] com::sun::star::i18n::XForbiddenCharacters ForbiddenCharacters;
+
+ //-------------------------------------------------------------------------
+
+ /** If this property is set the document has DrawPages. Use this
+ property to find out, whether the document has DrawPages or not,
+ because the getDrawPage method on the XDrawPageSupplier and the
+ getDrawPages method on the XDrawPagesSupplier always creates the
+ DrawPages if there are none; and this is very slow and needs more
+ memory.
+ */
+ [readonly, optional, property] boolean HasDrawPages;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the standard document language for Western text.
+ */
+ [optional, property] com::sun::star::lang::Locale CharLocale;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the standard document language for Asian text.
+ */
+ [optional, property] com::sun::star::lang::Locale CharLocaleAsian;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the standard document language for Complex text.
+ */
+ [optional, property] com::sun::star::lang::Locale CharLocaleComplex;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether the document data are already loaded.
+
+ @since OOo 3.0
+ */
+ [optional, property] boolean IsLoaded;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether the undo command is enabled.
+
+ @since OOo 3.0
+ */
+ [optional, property] boolean IsUndoEnabled;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether the automatic adjustment of the row height is
+ enabled.
+
+ @since OOo 3.0
+ */
+ [optional, property] boolean IsAdjustHeightEnabled;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether the automatic execution of links is enabled.
+
+ @since OOo 3.0
+ */
+ [optional, property] boolean IsExecuteLinkEnabled;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the reference device used for formatting the document.
+
+ @since OOo 3.0
+ */
+ [readonly, optional, property] com::sun::star::awt::XDevice ReferenceDevice;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/SpreadsheetDrawPage.idl b/offapi/com/sun/star/sheet/SpreadsheetDrawPage.idl
new file mode 100644
index 000000000000..75b685071eb9
--- /dev/null
+++ b/offapi/com/sun/star/sheet/SpreadsheetDrawPage.idl
@@ -0,0 +1,97 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_sheet_SpreadsheetDrawPage_idl__
+#define __com_sun_star_sheet_SpreadsheetDrawPage_idl__
+
+#ifndef __com_sun_star_drawing_XDrawPage_idl__
+#include <com/sun/star/drawing/XDrawPage.idl>
+#endif
+
+#ifndef __com_sun_star_drawing_XShapeGrouper_idl__
+#include <com/sun/star/drawing/XShapeGrouper.idl>
+#endif
+
+#ifndef __com_sun_star_lang_XServiceInfo_idl__
+#include <com/sun/star/lang/XServiceInfo.idl>
+#endif
+
+//=============================================================================
+
+ module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** This abstract service is implemented by every page of a
+ <type>SpreadsheetDocument</type>.
+
+ @example create and insert a couple of <type scope="com::sun::star::drawing">LineShape</type>s:
+
+ <listing>
+ xPage = xDoc.DrawPages(0)
+ for x% = 0 to 200
+ xShape = xProv.createInstance( "com.sun.star.drawing.LineShape" )
+ xShape.LineColor = rgb( 255, 0, n%+20 )
+ xShape.LineWidth = 20
+ xShape.Position = Point( x%, 2*x% )
+ xShape.Size = Size( 300-x%, 20 )
+ xPage.add( xShape )
+ next x%
+ </listing>
+
+ @since OOo 1.1.2
+ */
+published service SpreadsheetDrawPage
+{
+
+
+ /** manages the <type scope="com::sun::star::drawing">Shape</type>s of this page.
+
+ <p>It also lets you add new <type scope="com::sun::star::drawing">Shape</type>s. The program currently
+ requires that these <type scope="com::sun::star::drawing">Shape</type>s be created by the factory of
+ the document.
+
+ @see SpreadsheetDocument
+ */
+ interface com::sun::star::drawing::XDrawPage;
+
+
+ /** With this interface you can group/ungroup a collection of
+ <type scope="com::sun::star::drawing">Shape</type>s.
+ */
+ interface com::sun::star::drawing::XShapeGrouper;
+
+
+ /** returns the services implemented by this instance.
+ */
+ interface com::sun::star::lang::XServiceInfo;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/sheet/SpreadsheetView.idl b/offapi/com/sun/star/sheet/SpreadsheetView.idl
new file mode 100644
index 000000000000..40ade27fedad
--- /dev/null
+++ b/offapi/com/sun/star/sheet/SpreadsheetView.idl
@@ -0,0 +1,148 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_sheet_SpreadsheetView_idl__
+#define __com_sun_star_sheet_SpreadsheetView_idl__
+
+#ifndef __com_sun_star_frame_Controller_idl__
+#include <com/sun/star/frame/Controller.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_SpreadsheetViewSettings_idl__
+#include <com/sun/star/sheet/SpreadsheetViewSettings.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_SpreadsheetViewPane_idl__
+#include <com/sun/star/sheet/SpreadsheetViewPane.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XSpreadsheetView_idl__
+#include <com/sun/star/sheet/XSpreadsheetView.idl>
+#endif
+
+#ifndef __com_sun_star_container_XIndexAccess_idl__
+#include <com/sun/star/container/XIndexAccess.idl>
+#endif
+
+#ifndef __com_sun_star_view_XSelectionSupplier_idl__
+#include <com/sun/star/view/XSelectionSupplier.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XViewSplitable_idl__
+#include <com/sun/star/sheet/XViewSplitable.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XViewFreezable_idl__
+#include <com/sun/star/sheet/XViewFreezable.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XRangeSelection_idl__
+#include <com/sun/star/sheet/XRangeSelection.idl>
+#endif
+
+#ifndef __com_sun_star_container_XEnumerationAccess_idl__
+#include <com/sun/star/container/XEnumerationAccess.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XActivationBroadcaster_idl__
+#include <com/sun/star/sheet/XActivationBroadcaster.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XEnhancedMouseClickBroadcaster_idl__
+#include <com/sun/star/sheet/XEnhancedMouseClickBroadcaster.idl>
+#endif
+
+//=============================================================================
+
+ module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a view of a spreadsheet document.
+ */
+published service SpreadsheetView
+{
+ /** provides the integration into the framework.
+ */
+ service com::sun::star::frame::Controller;
+
+ /** provides the view's settings.
+ */
+ service com::sun::star::sheet::SpreadsheetViewSettings;
+
+ /** provides direct access to the view's active pane.
+ */
+ service com::sun::star::sheet::SpreadsheetViewPane;
+
+ /** provides access to the active sheet in the view.
+ */
+ interface com::sun::star::sheet::XSpreadsheetView;
+
+ /** provides access to the collection of view panes.
+ */
+ interface com::sun::star::container::XIndexAccess;
+
+ /** creates an enumeration of view panes.
+
+ @see com::sun::star::sheet::SpreadsheetViewPanesEnumeration
+
+ */
+ interface com::sun::star::container::XEnumerationAccess;
+
+ /** provides access to the view's selection.
+ <p>The selection in a spreadsheet view can be a
+ <type scope="com::sun::star::sheet">SheetCell</type>,
+ <type scope="com::sun::star::sheet">SheetCellRange</type>,
+ <type scope="com::sun::star::sheet">SheetCellRanges</type>,
+ <type scope="com::sun::star::drawing">Shape</type> or
+ <type scope="com::sun::star::drawing">Shapes</type> object.
+ </p>
+ */
+ interface com::sun::star::view::XSelectionSupplier;
+
+ /** allows to split the view.
+ */
+ interface com::sun::star::sheet::XViewSplitable;
+
+ /** allows to freeze columns and rows of the view.
+ */
+ interface com::sun::star::sheet::XViewFreezable;
+
+ /** allows to let the user interactively select a cell range.
+ */
+ interface com::sun::star::sheet::XRangeSelection;
+
+ [optional] interface com::sun::star::sheet::XEnhancedMouseClickBroadcaster;
+
+ [optional] interface com::sun::star::sheet::XActivationBroadcaster;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/SpreadsheetViewPane.idl b/offapi/com/sun/star/sheet/SpreadsheetViewPane.idl
new file mode 100644
index 000000000000..254601559a16
--- /dev/null
+++ b/offapi/com/sun/star/sheet/SpreadsheetViewPane.idl
@@ -0,0 +1,71 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_sheet_SpreadsheetViewPane_idl__
+#define __com_sun_star_sheet_SpreadsheetViewPane_idl__
+
+#ifndef __com_sun_star_sheet_XViewPane_idl__
+#include <com/sun/star/sheet/XViewPane.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XCellRangeReferrer_idl__
+#include <com/sun/star/sheet/XCellRangeReferrer.idl>
+#endif
+
+#ifndef __com_sun_star_view_XControlAccess_idl__
+#include <com/sun/star/view/XControlAccess.idl>
+#endif
+
+
+//=============================================================================
+
+ module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a single pane in a view of a spreadsheet document.
+ */
+published service SpreadsheetViewPane
+{
+ /** allows to control which cells are shown in the view pane.
+ */
+ interface com::sun::star::sheet::XViewPane;
+
+ /** gives direct access to the cell range object for the visible range.
+ */
+ interface com::sun::star::sheet::XCellRangeReferrer;
+
+ /** provides access to a control model's control for the view pane.
+ */
+ [optional] interface com::sun::star::view::XControlAccess;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/SpreadsheetViewPanesEnumeration.idl b/offapi/com/sun/star/sheet/SpreadsheetViewPanesEnumeration.idl
new file mode 100644
index 000000000000..de2d6c70fc8c
--- /dev/null
+++ b/offapi/com/sun/star/sheet/SpreadsheetViewPanesEnumeration.idl
@@ -0,0 +1,62 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_SpreadsheetViewPanesEnumeration_idl__
+#define __com_sun_star_sheet_SpreadsheetViewPanesEnumeration_idl__
+
+#ifndef __com_sun_star_container_XEnumeration_idl__
+#include <com/sun/star/container/XEnumeration.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents an enumeration of spreadsheet view panes.
+
+ @see com::sun::star::sheet::SpreadsheetViewPane
+ */
+published service SpreadsheetViewPanesEnumeration
+{
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access the spreadsheet view panes in the enumeration.
+
+ @see com::sun::star::sheet::SpreadsheetViewPane
+ */
+ interface com::sun::star::container::XEnumeration;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/SpreadsheetViewSettings.idl b/offapi/com/sun/star/sheet/SpreadsheetViewSettings.idl
new file mode 100644
index 000000000000..e40ea1dd8fe4
--- /dev/null
+++ b/offapi/com/sun/star/sheet/SpreadsheetViewSettings.idl
@@ -0,0 +1,193 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_SpreadsheetViewSettings_idl__
+#define __com_sun_star_sheet_SpreadsheetViewSettings_idl__
+
+#ifndef __com_sun_star_beans_XPropertySet_idl__
+#include <com/sun/star/beans/XPropertySet.idl>
+#endif
+
+#ifndef __com_sun_star_util_Color_idl__
+#include <com/sun/star/util/Color.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** contains settings which are specific to each view of a spreadsheet
+ */
+published service SpreadsheetViewSettings
+{
+ /** provides access to the properties.
+ */
+ interface com::sun::star::beans::XPropertySet;
+
+ //-------------------------------------------------------------------------
+
+ /** controls whether formulas are displayed instead of their
+ results.
+ */
+ [property] boolean ShowFormulas;
+
+ //-------------------------------------------------------------------------
+
+ /** enables display of zero-values.
+ */
+ [property] boolean ShowZeroValues;
+
+ //-------------------------------------------------------------------------
+
+ /** controls whether strings, values, and formulas are
+ displayed in different colors.
+ */
+ [property] boolean IsValueHighlightingEnabled;
+
+ //-------------------------------------------------------------------------
+
+ /** controls whether a marker is shown for notes in cells.
+ */
+ [property] boolean ShowNotes;
+
+ //-------------------------------------------------------------------------
+
+ /** enables the vertical scroll bar of the view.
+ */
+ [property] boolean HasVerticalScrollBar;
+
+ //-------------------------------------------------------------------------
+
+ /** enables the horizontal scroll bar of the view.
+ */
+ [property] boolean HasHorizontalScrollBar;
+
+ //-------------------------------------------------------------------------
+
+ /** enables the sheet tabs of the view.
+ */
+ [property] boolean HasSheetTabs;
+
+ //-------------------------------------------------------------------------
+
+ /** enables the display of outline symbols.
+ */
+ [property] boolean IsOutlineSymbolsSet;
+
+ //-------------------------------------------------------------------------
+
+ /** enables the column and row headers of the view.
+ */
+ [property] boolean HasColumnRowHeaders;
+
+ //-------------------------------------------------------------------------
+
+ /** enables the display of the cell grid.
+ */
+ [property] boolean ShowGrid;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the color in which the cell grid is
+ displayed.
+ */
+ [property] com::sun::star::util::Color GridColor;
+
+ //-------------------------------------------------------------------------
+
+ /** enables display of help lines when moving drawing
+ objects.
+ */
+ [property] boolean ShowHelpLines;
+
+ //-------------------------------------------------------------------------
+
+ /** enables display of anchor symbols when drawing
+ objects are selected.
+ */
+ [property] boolean ShowAnchor;
+
+ //-------------------------------------------------------------------------
+
+ /** enables display of page breaks.
+ */
+ [property] boolean ShowPageBreaks;
+
+ //-------------------------------------------------------------------------
+
+ /** enables solid (colored) handles when drawing
+ objects are selected.
+ */
+ [property] boolean SolidHandles;
+
+ //-------------------------------------------------------------------------
+
+ /** enables display of embedded objects in the view.
+ */
+ [property] short ShowObjects;
+
+ //-------------------------------------------------------------------------
+
+ /** enables the display of charts in the view.
+ */
+ [property] short ShowCharts;
+
+ //-------------------------------------------------------------------------
+
+ /** enables the display of drawing objects in the view.
+ */
+ [property] short ShowDrawing;
+
+ //-------------------------------------------------------------------------
+
+ /** disables the display of marks from online spelling.
+ */
+ [property] boolean HideSpellMarks;
+
+ //-------------------------------------------------------------------------
+ /** This property defines the zoom type for the document.
+
+ @see com::sun::star::view::DocumentZoomType
+ */
+ [property] short ZoomType;
+
+ //-------------------------------------------------------------------------
+ /** Defines the zoom value to use.
+ Valid only if the ZoomType is set to
+ <member scope="com::sun::star::view::DocumentZoomType">BY_VALUE</member>.
+ */
+ [property] short ZoomValue;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/Spreadsheets.idl b/offapi/com/sun/star/sheet/Spreadsheets.idl
new file mode 100644
index 000000000000..0e04297f1a99
--- /dev/null
+++ b/offapi/com/sun/star/sheet/Spreadsheets.idl
@@ -0,0 +1,95 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_Spreadsheets_idl__
+#define __com_sun_star_sheet_Spreadsheets_idl__
+
+#ifndef __com_sun_star_sheet_XSpreadsheets_idl__
+#include <com/sun/star/sheet/XSpreadsheets.idl>
+#endif
+
+#ifndef __com_sun_star_container_XIndexAccess_idl__
+#include <com/sun/star/container/XIndexAccess.idl>
+#endif
+
+#ifndef __com_sun_star_container_XEnumerationAccess_idl__
+#include <com/sun/star/container/XEnumerationAccess.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XCellRangesAccess_idl__
+#include <com/sun/star/sheet/XCellRangesAccess.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents the collection of spreadsheets in a spreadsheet document.
+
+ @see com::sun::star::sheet::SpreadsheetDocument
+ */
+published service Spreadsheets
+{
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access the spreadsheets by name and to insert,
+ copy, remove and rearrange spreadsheets.
+
+ @see com::sun::star::sheet::Spreadsheet
+ */
+ interface com::sun::star::sheet::XSpreadsheets;
+
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access the spreadsheets by index.
+
+ @see com::sun::star::sheet::Spreadsheet
+ */
+ interface com::sun::star::container::XIndexAccess;
+
+ //-------------------------------------------------------------------------
+
+ /** creates an enumeration of all spreadsheets.
+
+ @see com::sun::star::sheet::SpreadsheetsEnumeration
+ */
+ interface com::sun::star::container::XEnumerationAccess;
+
+ //-------------------------------------------------------------------------
+
+ [optional] interface com::sun::star::sheet::XCellRangesAccess;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/SpreadsheetsEnumeration.idl b/offapi/com/sun/star/sheet/SpreadsheetsEnumeration.idl
new file mode 100644
index 000000000000..e42bb9d9d93b
--- /dev/null
+++ b/offapi/com/sun/star/sheet/SpreadsheetsEnumeration.idl
@@ -0,0 +1,62 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_SpreadsheetsEnumeration_idl__
+#define __com_sun_star_sheet_SpreadsheetsEnumeration_idl__
+
+#ifndef __com_sun_star_container_XEnumeration_idl__
+#include <com/sun/star/container/XEnumeration.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents an enumeration of spreadsheets in a spreadsheet document.
+
+ @see com::sun::star::sheet::Spreadsheets
+ */
+published service SpreadsheetsEnumeration
+{
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access the spreadsheets in the enumeration.
+
+ @see com::sun::star::sheet::Spreadsheet
+ */
+ interface com::sun::star::container::XEnumeration;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/StatusBarFunction.idl b/offapi/com/sun/star/sheet/StatusBarFunction.idl
new file mode 100644
index 000000000000..8d2fe522ede7
--- /dev/null
+++ b/offapi/com/sun/star/sheet/StatusBarFunction.idl
@@ -0,0 +1,91 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_StatusBarFunction_idl__
+#define __com_sun_star_sheet_StatusBarFunction_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** used to specify the function used to calculate a result in the
+ spreadsheet's status bar.
+ */
+published constants StatusBarFunction
+{
+ //-------------------------------------------------------------------------
+
+ /** nothing is calculated.
+ */
+ const short NONE = 0;
+
+ //-------------------------------------------------------------------------
+
+ /** average of all numerical values is calculated.
+ */
+ const short AVERAGE = 1;
+
+ //-------------------------------------------------------------------------
+
+ /** all values, including non-numerical values, are counted.
+ */
+ const short COUNTNUMS = 2;
+
+ //-------------------------------------------------------------------------
+
+ /** numerical values are counted.
+ */
+ const short COUNT = 3;
+
+ //-------------------------------------------------------------------------
+
+ /** maximum value of all numerical values is calculated.
+ */
+ const short MAX = 4;
+
+ //-------------------------------------------------------------------------
+
+ /** minimum value of all numerical values is calculated.
+ */
+ const short MIN = 5;
+
+ //-------------------------------------------------------------------------
+
+ /** sum of all numerical values is calculated.
+ */
+ const short SUM = 9;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/SubTotalColumn.idl b/offapi/com/sun/star/sheet/SubTotalColumn.idl
new file mode 100644
index 000000000000..45ebf2b9853e
--- /dev/null
+++ b/offapi/com/sun/star/sheet/SubTotalColumn.idl
@@ -0,0 +1,66 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_SubTotalColumn_idl__
+#define __com_sun_star_sheet_SubTotalColumn_idl__
+
+#ifndef __com_sun_star_sheet_GeneralFunction_idl__
+#include <com/sun/star/sheet/GeneralFunction.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** describes how a single data column is treated when creating subtotals.
+
+ @see com::sun::star::sheet::SubTotalDescriptor
+ */
+published struct SubTotalColumn
+{
+ //-------------------------------------------------------------------------
+
+ /** the index of the column inside the source data area.
+ */
+ long Column;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies what kind of subtotals are calculated.
+ */
+ com::sun::star::sheet::GeneralFunction Function;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/SubTotalDescriptor.idl b/offapi/com/sun/star/sheet/SubTotalDescriptor.idl
new file mode 100644
index 000000000000..399cb5b1d7d1
--- /dev/null
+++ b/offapi/com/sun/star/sheet/SubTotalDescriptor.idl
@@ -0,0 +1,150 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_SubTotalDescriptor_idl__
+#define __com_sun_star_sheet_SubTotalDescriptor_idl__
+
+#ifndef __com_sun_star_sheet_XSubTotalDescriptor_idl__
+#include <com/sun/star/sheet/XSubTotalDescriptor.idl>
+#endif
+
+#ifndef __com_sun_star_beans_XPropertySet_idl__
+#include <com/sun/star/beans/XPropertySet.idl>
+#endif
+#ifndef __com_sun_star_container_XEnumerationAccess_idl__
+#include <com/sun/star/container/XEnumerationAccess.idl>
+#endif
+#ifndef __com_sun_star_container_XIndexAccess_idl__
+#include <com/sun/star/container/XIndexAccess.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a description of how subtotals are created.
+
+ <p>The descriptor contains properties and a collection of subtotal fields
+ which control the behaviour of operation.</p>
+ */
+published service SubTotalDescriptor
+{
+ //-------------------------------------------------------------------------
+
+ /** provides access to the collection of subtotal fields.
+ */
+ interface com::sun::star::sheet::XSubTotalDescriptor;
+
+ //-------------------------------------------------------------------------
+
+ /** creates an enumeration of all sub total fields.
+
+ @see com::sun::star::sheet::SubTotalFieldsEnumeration
+ */
+ interface com::sun::star::container::XEnumerationAccess;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to the sub total fields in the collection via index.
+ */
+ interface com::sun::star::container::XIndexAccess;
+
+ //-------------------------------------------------------------------------
+
+//!published service PropertySet
+ /** procides access to the properties.
+ */
+ interface com::sun::star::beans::XPropertySet;
+
+ //=========================================================================
+
+ /** specifies if page breaks are inserted after each group change.
+ */
+ [property] boolean InsertPageBreaks;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies if the case of letters is important when comparing entries.
+ */
+ [property] boolean IsCaseSensitive;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies if a user defined sorting list is used.
+ */
+ [property] boolean EnableUserSortList;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies which user defined sorting list is used.
+
+ <p>This property is only used if
+ <member>SubTotalDescriptor::EnableUserSortList</member>
+ is <TRUE/>.</p>
+ */
+ [property] long UserSortListIndex;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies if cell formats are moved with the contents they belong to.
+ */
+ [property] boolean BindFormatsToContent;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies if the contents of the fields will be sorted to groups
+ while performing a subtotal operation.
+ */
+ [property] boolean EnableSort;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the sorting order if
+ <member>SubTotalDescriptor::EnableSort</member> is set to <TRUE/>.
+ */
+ [property] boolean SortAscending;
+
+ //-------------------------------------------------------------------------
+
+ /** returns the maximum number of subtotal fields the descriptor can
+ hold.
+
+ <p>This read-only property indicates the maximum count of fields the
+ current implementation supports.</p>
+ */
+ [readonly, property] long MaxFieldCount;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/SubTotalField.idl b/offapi/com/sun/star/sheet/SubTotalField.idl
new file mode 100644
index 000000000000..bbec0c9706e8
--- /dev/null
+++ b/offapi/com/sun/star/sheet/SubTotalField.idl
@@ -0,0 +1,63 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_SubTotalField_idl__
+#define __com_sun_star_sheet_SubTotalField_idl__
+
+#ifndef __com_sun_star_sheet_XSubTotalField_idl__
+#include <com/sun/star/sheet/XSubTotalField.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a single field in a subtotal descriptor.
+
+ <p>A subtotal field contains all columns for which subtotal values
+ will be calculated and the column used to create subtotal groups.
+
+ @see com::sun::star::sheet::SubTotalDescriptor
+ */
+published service SubTotalField
+{
+ //-------------------------------------------------------------------------
+
+ /** provides access to the settings of the subtotal field.
+ */
+ interface com::sun::star::sheet::XSubTotalField;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/SubTotalFieldsEnumeration.idl b/offapi/com/sun/star/sheet/SubTotalFieldsEnumeration.idl
new file mode 100644
index 000000000000..49d6523a9d93
--- /dev/null
+++ b/offapi/com/sun/star/sheet/SubTotalFieldsEnumeration.idl
@@ -0,0 +1,62 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_SubTotalFieldsEnumeration_idl__
+#define __com_sun_star_sheet_SubTotalFieldsEnumeration_idl__
+
+#ifndef __com_sun_star_container_XEnumeration_idl__
+#include <com/sun/star/container/XEnumeration.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents an enumeration of sub total fields.
+
+ @see com::sun::star::sheet::SubTotalField
+ */
+published service SubTotalFieldsEnumeration
+{
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access the sub total fields in the enumeration.
+
+ @see com::sun::star::sheet::SubTotalField
+ */
+ interface com::sun::star::container::XEnumeration;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/TableAutoFormat.idl b/offapi/com/sun/star/sheet/TableAutoFormat.idl
new file mode 100644
index 000000000000..8f9af3b41ef7
--- /dev/null
+++ b/offapi/com/sun/star/sheet/TableAutoFormat.idl
@@ -0,0 +1,141 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_TableAutoFormat_idl__
+#define __com_sun_star_sheet_TableAutoFormat_idl__
+
+#ifndef __com_sun_star_container_XIndexAccess_idl__
+#include <com/sun/star/container/XIndexAccess.idl>
+#endif
+
+#ifndef __com_sun_star_container_XEnumerationAccess_idl__
+#include <com/sun/star/container/XEnumerationAccess.idl>
+#endif
+
+#ifndef __com_sun_star_container_XNamed_idl__
+#include <com/sun/star/container/XNamed.idl>
+#endif
+
+#ifndef __com_sun_star_beans_XPropertySet_idl__
+#include <com/sun/star/beans/XPropertySet.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents an AutoFormat, containing exactly 16 AutoFormat fields.
+
+ <p>Each of the 16 fields contain formatting properties for a table
+ cell at a specific position in the AutoFormat range. The rows of the
+ range are divided into a header row, a footer row and 2 data rows
+ (repeated in turn between header and footer row). The columns are
+ divided similar. This results in 16 different types of cells in the
+ range. The AutoFormats are numbered row by row, then column by column.</p>
+
+ @see com::sun::star::sheet::TableAutoFormatField
+ */
+published service TableAutoFormat
+{
+ //-------------------------------------------------------------------------
+
+//! service com::sun::star::beans::PropertySet;
+ /** provides access to the properties.
+ */
+ interface com::sun::star::beans::XPropertySet;
+
+ //=========================================================================
+
+ /** provides methods to access the AutoFormat fields via index.
+
+ @see com::sun::star::sheet::TableAutoFormatField
+ */
+ interface com::sun::star::container::XIndexAccess;
+
+ //-------------------------------------------------------------------------
+
+ /** creates an enumeration of all 16 AutoFormat fields.
+
+ @see com::sun::star::sheet::TableAutoFormatEnumeration
+ */
+ interface com::sun::star::container::XEnumerationAccess;
+
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access the name of the AutoFormat.
+ */
+ interface com::sun::star::container::XNamed;
+
+ //=========================================================================
+
+ /** specifies whether the font settings from the fields are used.
+ */
+ [property] boolean IncludeFont;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether the justification settings from the fields
+ are used.
+ */
+ [property] boolean IncludeJustify;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether the border settings from the fields are used.
+ */
+ [property] boolean IncludeBorder;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether the background settings from the fields are used.
+ */
+ [property] boolean IncludeBackground;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether the number format settings from the fields
+ are used.
+ */
+ [property] boolean IncludeNumberFormat;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether the column widths and row heights should be
+ updated after applying the format.
+ */
+ [property] boolean IncludeWidthAndHeight;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/TableAutoFormatEnumeration.idl b/offapi/com/sun/star/sheet/TableAutoFormatEnumeration.idl
new file mode 100644
index 000000000000..636ca5d6e856
--- /dev/null
+++ b/offapi/com/sun/star/sheet/TableAutoFormatEnumeration.idl
@@ -0,0 +1,62 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_TableAutoFormatEnumeration_idl__
+#define __com_sun_star_sheet_TableAutoFormatEnumeration_idl__
+
+#ifndef __com_sun_star_container_XEnumeration_idl__
+#include <com/sun/star/container/XEnumeration.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents an enumeration of AutoFormat fields in an AutoFormat.
+
+ @see com::sun::star::sheet::TableAutoFormat
+ */
+published service TableAutoFormatEnumeration
+{
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access the AutoFormat fields in the enumeration.
+
+ @see com::sun::star::sheet::TableAutoFormatField
+ */
+ interface com::sun::star::container::XEnumeration;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/TableAutoFormatField.idl b/offapi/com/sun/star/sheet/TableAutoFormatField.idl
new file mode 100644
index 000000000000..90ae519a4c51
--- /dev/null
+++ b/offapi/com/sun/star/sheet/TableAutoFormatField.idl
@@ -0,0 +1,329 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_TableAutoFormatField_idl__
+#define __com_sun_star_sheet_TableAutoFormatField_idl__
+
+#ifndef __com_sun_star_beans_XPropertySet_idl__
+#include <com/sun/star/beans/XPropertySet.idl>
+#endif
+
+#ifndef __com_sun_star_util_Color_idl__
+#include <com/sun/star/util/Color.idl>
+#endif
+
+#ifndef __com_sun_star_lang_Locale_idl__
+#include <com/sun/star/lang/Locale.idl>
+#endif
+
+#ifndef __com_sun_star_awt_FontSlant_idl__
+#include <com/sun/star/awt/FontSlant.idl>
+#endif
+
+#ifndef __com_sun_star_table_ShadowFormat_idl__
+#include <com/sun/star/table/ShadowFormat.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellHoriJustify_idl__
+#include <com/sun/star/table/CellHoriJustify.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellVertJustify_idl__
+#include <com/sun/star/table/CellVertJustify.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellOrientation_idl__
+#include <com/sun/star/table/CellOrientation.idl>
+#endif
+
+#ifndef __com_sun_star_table_TableBorder_idl__
+#include <com/sun/star/table/TableBorder.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a field in an AutoFormat. A field contains all cell
+ properties for a specific position in an AutoFormat.
+ */
+published service TableAutoFormatField
+{
+ //-------------------------------------------------------------------------
+
+//! service com::sun::star::beans::PropertySet;
+ /** provides access to the properties.
+ */
+ interface com::sun::star::beans::XPropertySet;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the name of the western font.
+ */
+ [property] string CharFontName;
+
+ /** specifies the name of the asian font.
+ */
+ [optional, property] string CharFontNameAsian;
+
+ /** specifies the name of the complex font.
+ */
+ [optional, property] string CharFontNameComplex;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the name of the western font style.
+ */
+ [property] string CharFontStyleName;
+
+ /** specifies the name of the asian font style.
+ */
+ [optional, property] string CharFontStyleNameAsian;
+
+ /** specifies the name of the complex font style.
+ */
+ [optional, property] string CharFontStyleNameComplex;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the value of the character set of the western font.
+ */
+ [property] string CharFontCharSet;
+
+ /** contains the value of the character set of the asian font.
+ */
+ [optional, property] string CharFontCharSetAsian;
+
+ /** contains the value of the character set of the complex font.
+ */
+ [optional, property] string CharFontCharSetComplex;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the value of the western font family.
+ */
+ [property] string CharFontFamily;
+
+ /** contains the value of the asian font family.
+ */
+ [optional, property] string CharFontFamilyAsian;
+
+ /** contains the value of the complex font family.
+ */
+ [optional, property] string CharFontFamilyComplex;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the value of the pitch of the western font.
+ */
+ [property] string CharFontPitch;
+
+ /** contains the value of the pitch of the asian font.
+ */
+ [optional, property] string CharFontPitchAsian;
+
+ /** contains the value of the pitch of the complex font.
+ */
+ [optional, property] string CharFontPitchComplex;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the height of characters of the western font in point.
+ */
+ [property] float CharHeight;
+
+ /** contains the height of characters of the asian font in point.
+ */
+ [optional, property] float CharHeightAsian;
+
+ /** contains the height of characters of the complex font in point.
+ */
+ [optional, property] float CharHeightComplex;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the value for the weight of characters of the western font.
+ */
+ [property] float CharWeight;
+
+ /** contains the value for the weight of characters of the asian font.
+ */
+ [optional, property] float CharWeightAsian;
+
+ /** contains the value for the weight of characters of the complex font.
+ */
+ [optional, property] float CharWeightComplex;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the value of the posture of characters of the western font.
+ */
+ [property] com::sun::star::awt::FontSlant CharPosture;
+
+ /** contains the value of the posture of characters of the asian font.
+ */
+ [optional, property] com::sun::star::awt::FontSlant CharPostureAsian;
+
+ /** contains the value of the posture of characters of the comlex font.
+ */
+ [optional, property] com::sun::star::awt::FontSlant CharPostureComplex;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the value for the character underline.
+ */
+ [property] short CharUnderline;
+
+ //-------------------------------------------------------------------------
+
+ /** is <TRUE/> if the characters are crossed out.
+ */
+ [property] boolean CharCrossedOut;
+
+ //-------------------------------------------------------------------------
+
+ /** is <TRUE/> if the characters are contoured.
+ */
+ [property] boolean CharContoured;
+
+ //-------------------------------------------------------------------------
+
+ /** is <TRUE/> if the characters are shadowed.
+ */
+ [property] boolean CharShadowed;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the value of the text color.
+ */
+ [property] com::sun::star::util::Color CharColor;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the cell background color.
+ */
+ [property] com::sun::star::util::Color CellBackColor;
+
+ //-------------------------------------------------------------------------
+
+ /** is <TRUE/> if the cell background is transparent.
+
+ <p>In this case the <member>TableAutoFormatField::CellBackColor</member>
+ value is not used.</p>
+ */
+ [property] boolean IsCellBackgroundTransparent;
+
+ //-------------------------------------------------------------------------
+
+ /** contains a description of the shadow.
+ */
+ [optional, property] com::sun::star::table::ShadowFormat ShadowFormat;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the horizontal alignment of the cell contents.
+ */
+ [optional, property] com::sun::star::table::CellHoriJustify HoriJustify;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the vertical alignment of the cell contents.
+ */
+ [optional, property] com::sun::star::table::CellVertJustify VertJustify;
+
+ //-------------------------------------------------------------------------
+
+ /** is <TRUE/> if text breaks automatically at cell borders.
+ */
+ [optional, property] boolean IsTextWrapped;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the orientation of the cell contents
+ (i.e. top-to-bottom or stacked).
+ */
+ [optional, property] com::sun::star::table::CellOrientation Orientation;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the rotation angle of the cell contents.
+ */
+ [optional, property] long RotateAngle;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the reference egde of the cell rotation.
+ */
+ [optional, property] com::sun::star::table::CellVertJustify RotateReference;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the margin between cell contents and top border
+ (in 1/100 mm).
+ */
+ [optional, property] long ParaTopMargin;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the margin between cell contents and bottom border
+ (in 1/100 mm).
+ */
+ [optional, property] long ParaBottomMargin;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the margin between cell contents and left border
+ (in 1/100 mm).
+ */
+ [optional, property] long ParaLeftMargin;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the margin between cell contents and right border
+ (in 1/100 mm).
+ */
+ [optional, property] long ParaRightMargin;
+
+ //-------------------------------------------------------------------------
+
+ /** property containing a description of the cell border.
+
+ @since OOo 1.1.2
+ */
+ [optional, property] com::sun::star::table::TableBorder TableBorder;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+//=============================================================================
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/TableAutoFormats.idl b/offapi/com/sun/star/sheet/TableAutoFormats.idl
new file mode 100644
index 000000000000..bffc1cdccbb2
--- /dev/null
+++ b/offapi/com/sun/star/sheet/TableAutoFormats.idl
@@ -0,0 +1,85 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_TableAutoFormats_idl__
+#define __com_sun_star_sheet_TableAutoFormats_idl__
+
+#ifndef __com_sun_star_container_XNameContainer_idl__
+#include <com/sun/star/container/XNameContainer.idl>
+#endif
+#ifndef __com_sun_star_container_XIndexAccess_idl__
+#include <com/sun/star/container/XIndexAccess.idl>
+#endif
+#ifndef __com_sun_star_container_XEnumerationAccess_idl__
+#include <com/sun/star/container/XEnumerationAccess.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents the collection of AutoFormats.
+
+ <p>There is only one instance of this collection, containing all
+ AutoFormats usable in spreadsheet and text tables.</p>
+ */
+published service TableAutoFormats
+{
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access, insert and remove AutoFormats via name.
+
+ @see com::sun::star::sheet::TableAutoFormat
+ */
+ interface com::sun::star::container::XNameContainer;
+
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access AutoFormats via index.
+
+ @see com::sun::star::sheet::TableAutoFormat
+ */
+ interface com::sun::star::container::XIndexAccess;
+
+ //-------------------------------------------------------------------------
+
+ /** creates an enumeration of all AutoFormats.
+
+ @see com::sun::star::sheet::TableAutoFormatEnumeration
+ */
+ interface com::sun::star::container::XEnumerationAccess;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/TableAutoFormatsEnumeration.idl b/offapi/com/sun/star/sheet/TableAutoFormatsEnumeration.idl
new file mode 100644
index 000000000000..3d7b19ed411c
--- /dev/null
+++ b/offapi/com/sun/star/sheet/TableAutoFormatsEnumeration.idl
@@ -0,0 +1,62 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_TableAutoFormatsEnumeration_idl__
+#define __com_sun_star_sheet_TableAutoFormatsEnumeration_idl__
+
+#ifndef __com_sun_star_container_XEnumeration_idl__
+#include <com/sun/star/container/XEnumeration.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents an enumeration of AutoFormats.
+
+ @see com::sun::star::sheet::TableAutoFormats
+ */
+published service TableAutoFormatsEnumeration
+{
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access the AutoFormats in the enumeration.
+
+ @see com::sun::star::sheet::TableAutoFormat
+ */
+ interface com::sun::star::container::XEnumeration;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/TableCellStyle.idl b/offapi/com/sun/star/sheet/TableCellStyle.idl
new file mode 100644
index 000000000000..94559721145a
--- /dev/null
+++ b/offapi/com/sun/star/sheet/TableCellStyle.idl
@@ -0,0 +1,112 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_TableCellStyle_idl__
+#define __com_sun_star_sheet_TableCellStyle_idl__
+
+#ifndef __com_sun_star_table_CellProperties_idl__
+#include <com/sun/star/table/CellProperties.idl>
+#endif
+
+#ifndef __com_sun_star_style_CellStyle_idl__
+#include <com/sun/star/style/CellStyle.idl>
+#endif
+
+#ifndef __com_sun_star_style_CharacterProperties_idl__
+#include <com/sun/star/style/CharacterProperties.idl>
+#endif
+
+#ifndef __com_sun_star_style_CharacterPropertiesAsian_idl__
+#include <com/sun/star/style/CharacterPropertiesAsian.idl>
+#endif
+
+#ifndef __com_sun_star_style_CharacterPropertiesComplex_idl__
+#include <com/sun/star/style/CharacterPropertiesComplex.idl>
+#endif
+
+#ifndef __com_sun_star_style_ParagraphProperties_idl__
+#include <com/sun/star/style/ParagraphProperties.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** contains the properties of a table cell style.
+
+ <p>This service extends the service
+ <type scope="com::sun::star::style">CellStyle</type> with spreadsheet
+ specific properties.</p>
+ */
+published service TableCellStyle
+{
+ //-------------------------------------------------------------------------
+
+ /** contributes cell specific properties.
+ */
+ service com::sun::star::table::CellProperties;
+
+ //-------------------------------------------------------------------------
+
+ /** is the base service for table cells.
+ */
+ service com::sun::star::style::CellStyle;
+
+ //-------------------------------------------------------------------------
+
+ /** contributes properties for character formatting of Western text.
+ */
+ service com::sun::star::style::CharacterProperties;
+
+ //-------------------------------------------------------------------------
+
+ /** contributes properties for character formatting of Asian text.
+ */
+ service com::sun::star::style::CharacterPropertiesAsian;
+
+ //-------------------------------------------------------------------------
+
+ /** contributes properties for character formatting of Complex text.
+ */
+ service com::sun::star::style::CharacterPropertiesComplex;
+
+ //-------------------------------------------------------------------------
+
+ /** contributes properties for paragraph formatting.
+ */
+ service com::sun::star::style::ParagraphProperties;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/TableConditionalEntry.idl b/offapi/com/sun/star/sheet/TableConditionalEntry.idl
new file mode 100644
index 000000000000..d0a10cd8f4fc
--- /dev/null
+++ b/offapi/com/sun/star/sheet/TableConditionalEntry.idl
@@ -0,0 +1,70 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_TableConditionalEntry_idl__
+#define __com_sun_star_sheet_TableConditionalEntry_idl__
+
+#ifndef __com_sun_star_sheet_XSheetCondition_idl__
+#include <com/sun/star/sheet/XSheetCondition.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XSheetConditionalEntry_idl__
+#include <com/sun/star/sheet/XSheetConditionalEntry.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a single condition in a conditional format.
+
+ @see com::sun::star::sheet::TableConditionalFormat
+ */
+published service TableConditionalEntry
+{
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access the settings of this condition.
+ */
+ interface com::sun::star::sheet::XSheetCondition;
+
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access the cell style name for this condition.
+ */
+ interface com::sun::star::sheet::XSheetConditionalEntry;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/TableConditionalEntryEnumeration.idl b/offapi/com/sun/star/sheet/TableConditionalEntryEnumeration.idl
new file mode 100644
index 000000000000..815563a4aa93
--- /dev/null
+++ b/offapi/com/sun/star/sheet/TableConditionalEntryEnumeration.idl
@@ -0,0 +1,62 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_TableConditionalEntryEnumeration_idl__
+#define __com_sun_star_sheet_TableConditionalEntryEnumeration_idl__
+
+#ifndef __com_sun_star_container_XEnumeration_idl__
+#include <com/sun/star/container/XEnumeration.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents an enumeration of conditional entries.
+
+ @see com::sun::star::sheet::TableConditionalEntry
+ */
+published service TableConditionalEntryEnumeration
+{
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access the conditional entries in the enumeration.
+
+ @see com::sun::star::sheet::TableConditionalEntry
+ */
+ interface com::sun::star::container::XEnumeration;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/TableConditionalFormat.idl b/offapi/com/sun/star/sheet/TableConditionalFormat.idl
new file mode 100644
index 000000000000..4c21a61ce712
--- /dev/null
+++ b/offapi/com/sun/star/sheet/TableConditionalFormat.idl
@@ -0,0 +1,103 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_TableConditionalFormat_idl__
+#define __com_sun_star_sheet_TableConditionalFormat_idl__
+
+#ifndef __com_sun_star_sheet_XSheetConditionalEntries_idl__
+#include <com/sun/star/sheet/XSheetConditionalEntries.idl>
+#endif
+
+#ifndef __com_sun_star_container_XNameAccess_idl__
+#include <com/sun/star/container/XNameAccess.idl>
+#endif
+#ifndef __com_sun_star_container_XEnumerationAccess_idl__
+#include <com/sun/star/container/XEnumerationAccess.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a collection of conditional formatting settings for a
+ cell or cell range.
+
+ <p>The style of the first fulfilled condition (in index order) will
+ be applied to the cell(s).</p>
+
+ @see com::sun::star::sheet::SheetCell
+ @see com::sun::star::sheet::SheetCellRange
+ @see com::sun::star::sheet::SheetCellRanges
+ */
+published service TableConditionalFormat
+{
+ //-------------------------------------------------------------------------
+
+ /** provides methods to insert and remove conditions and to access
+ the condition via index.
+
+ @see com::sun::star::sheet::TableConditionalEntry
+ */
+ interface com::sun::star::sheet::XSheetConditionalEntries;
+
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access the condition via name.
+
+ <p>The name of a condition is "Entry", followed by its index
+ (i.e. Entry0, Entry1, ...).</p>
+
+ @see com::sun::star::sheet::TableConditionalEntry
+ */
+ interface com::sun::star::container::XNameAccess;
+
+ //-------------------------------------------------------------------------
+
+ /** creates an enumeration of all conditional entries.
+
+ @see com::sun::star::sheet::TableConditionalEntryEnumeration
+ */
+ interface com::sun::star::container::XEnumerationAccess;
+
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access the contained conditional entries by index.
+
+ @see com::sun::star::sheet::TableConditionalEntry
+ */
+ interface com::sun::star::container::XIndexAccess;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/TableFilterField.idl b/offapi/com/sun/star/sheet/TableFilterField.idl
new file mode 100644
index 000000000000..6000a1c0247e
--- /dev/null
+++ b/offapi/com/sun/star/sheet/TableFilterField.idl
@@ -0,0 +1,95 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_TableFilterField_idl__
+#define __com_sun_star_sheet_TableFilterField_idl__
+
+#ifndef __com_sun_star_sheet_FilterConnection_idl__
+#include <com/sun/star/sheet/FilterConnection.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_FilterOperator_idl__
+#include <com/sun/star/sheet/FilterOperator.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** describes a single condition in a filter descriptor.
+
+ @see com::sun::star::sheet::SheetFilterDescriptor
+ */
+published struct TableFilterField
+{
+ //-------------------------------------------------------------------------
+
+ /** specifies how the condition is connected to the previous condition.
+ */
+ com::sun::star::sheet::FilterConnection Connection;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies which field (column) is used for the condition.
+ */
+ long Field;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the type of the condition.
+ */
+ com::sun::star::sheet::FilterOperator Operator;
+
+ //-------------------------------------------------------------------------
+
+ /** selects whether the <member>TableFilterField::NumericValue</member>
+ or the <member>TableFilterField::StringValue</member> is used.
+ */
+ boolean IsNumeric;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies a numeric value for the condition.
+ */
+ double NumericValue;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies a string value for the condition.
+ */
+ string StringValue;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/TableFilterField2.idl b/offapi/com/sun/star/sheet/TableFilterField2.idl
new file mode 100644
index 000000000000..cfbcfa4d143c
--- /dev/null
+++ b/offapi/com/sun/star/sheet/TableFilterField2.idl
@@ -0,0 +1,103 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_TableFilterField2_idl__
+#define __com_sun_star_sheet_TableFilterField2_idl__
+
+
+#ifndef __com_sun_star_sheet_FilterConnection_idl__
+#include <com/sun/star/sheet/FilterConnection.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_FilterOperator2_idl__
+#include <com/sun/star/sheet/FilterOperator2.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** describes a single condition in a filter descriptor.
+
+ <p>This struct has the <type>FilterOperator2</type> constants group as
+ member, whereas the <type>TableFilterField</type> struct uses the
+ <type>FilterOperator</type> enum.</p>
+
+ @see com::sun::star::sheet::SheetFilterDescriptor
+ @since OOo 3.2
+ */
+published struct TableFilterField2
+{
+ //-------------------------------------------------------------------------
+
+ /** specifies how the condition is connected to the previous condition.
+ */
+ com::sun::star::sheet::FilterConnection Connection;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies which field (column) is used for the condition.
+ */
+ long Field;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the type of the condition as defined in
+ <type>FilterOperator2</type>.
+ */
+ long Operator;
+
+ //-------------------------------------------------------------------------
+
+ /** selects whether the <member>TableFilterField2::NumericValue</member>
+ or the <member>TableFilterField2::StringValue</member> is used.
+ */
+ boolean IsNumeric;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies a numeric value for the condition.
+ */
+ double NumericValue;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies a string value for the condition.
+ */
+ string StringValue;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/TableOperationMode.idl b/offapi/com/sun/star/sheet/TableOperationMode.idl
new file mode 100644
index 000000000000..bc7c610f40d0
--- /dev/null
+++ b/offapi/com/sun/star/sheet/TableOperationMode.idl
@@ -0,0 +1,76 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_TableOperationMode_idl__
+#define __com_sun_star_sheet_TableOperationMode_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** used to specify if a table operation is applied to
+ columns, rows, or both columns and rows.
+ */
+published enum TableOperationMode
+{
+ //-------------------------------------------------------------------------
+
+ /** is applied to the columns.
+
+ <p>In this mode, the column contains values and the row
+ contains formulas.</p>
+ */
+ COLUMN,
+
+ //-------------------------------------------------------------------------
+
+ /** is applied to the rows.
+
+ <p>In this mode, the row contains values and the column
+ contains formulas.</p>
+ */
+ ROW,
+
+ //-------------------------------------------------------------------------
+
+ /** is applied to rows and columns.
+
+ <p>In this mode, the row and the column contain values. A formula
+ using both row and column values is specified separately.</p>
+ */
+ BOTH
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/TablePageBreakData.idl b/offapi/com/sun/star/sheet/TablePageBreakData.idl
new file mode 100644
index 000000000000..5a80bfc19e2d
--- /dev/null
+++ b/offapi/com/sun/star/sheet/TablePageBreakData.idl
@@ -0,0 +1,62 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_TablePageBreakData_idl__
+#define __com_sun_star_sheet_TablePageBreakData_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** describes a page break in a spreadsheet.
+
+ @see com::sun::star::sheet::XSheetPageBreak
+ */
+published struct TablePageBreakData
+{
+ //-------------------------------------------------------------------------
+
+ /** the position (column or row index) of the page break.
+ */
+ long Position;
+
+ //-------------------------------------------------------------------------
+
+ /** is <TRUE/> for a manual page break, <FALSE/> for an automatic one.
+ */
+ boolean ManualBreak;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/TablePageStyle.idl b/offapi/com/sun/star/sheet/TablePageStyle.idl
new file mode 100644
index 000000000000..6673fb80f9de
--- /dev/null
+++ b/offapi/com/sun/star/sheet/TablePageStyle.idl
@@ -0,0 +1,221 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_TablePageStyle_idl__
+#define __com_sun_star_sheet_TablePageStyle_idl__
+
+#ifndef __com_sun_star_style_PageStyle_idl__
+#include <com/sun/star/style/PageStyle.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XHeaderFooterContent_idl__
+#include <com/sun/star/sheet/XHeaderFooterContent.idl>
+#endif
+
+//=============================================================================
+
+ module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a page style for a spreadsheet.
+
+ <p>This service extends the service
+ <type scope="com::sun::star::style">PageStyle</type> with spreadsheet
+ specific properties.</p>
+ */
+published service TablePageStyle
+{
+ //-------------------------------------------------------------------------
+
+ /** contains all common page style properties.
+ */
+ service com::sun::star::style::PageStyle;
+
+ //=========================================================================
+
+ /** determines whether the table is centered horizontally on the page.
+ */
+ [property] boolean CenterHorizontally;
+
+ //-------------------------------------------------------------------------
+
+ /** determines whether the table is centered vertically on the page.
+ */
+ [property] boolean CenterVertically;
+
+ //-------------------------------------------------------------------------
+
+ /** enables printing of cell annotations.
+ */
+ [property] boolean PrintAnnotations;
+
+ //-------------------------------------------------------------------------
+
+ /** enables printing of the cell grid.
+ */
+ [property] boolean PrintGrid;
+
+ //-------------------------------------------------------------------------
+
+ /** enables printing of column and row headers.
+ */
+ [property] boolean PrintHeaders;
+
+ //-------------------------------------------------------------------------
+
+ /** enables printing of charts.
+ */
+ [property] boolean PrintCharts;
+
+ //-------------------------------------------------------------------------
+
+ /** enables printing of embedded objects.
+ */
+ [property] boolean PrintObjects;
+
+ //-------------------------------------------------------------------------
+
+ /** enables printing of drawing objects.
+ */
+ [property] boolean PrintDrawing;
+
+ //-------------------------------------------------------------------------
+
+ /** enables printing of formulas instead of their results.
+ */
+ [property] boolean PrintFormulas;
+
+ //-------------------------------------------------------------------------
+
+ /** enables printing of zero-values.
+ */
+ [property] boolean PrintZeroValues;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the print order for the pages within each sheet.
+
+ <p>If <TRUE/>, the order for printing pages begins with
+ top-to-bottom, then continues with the next set of cell columns
+ to the right. If <FALSE/>, the order for printing pages begins
+ with left-to-right, then continues with the next set of cell
+ rows to the bottom.</p>
+ */
+ [property] boolean PrintDownFirst;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the content of the header for left pages.
+
+ <p>After changing the header text contents, this property has to be
+ reinserted into the property set.</p>
+
+ @see com::sun::star::sheet::HeaderFooterContent
+ */
+ [property] com::sun::star::sheet::XHeaderFooterContent LeftPageHeaderContent;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the content of the footer for left pages.
+
+ <p>After changing the footer text contents, this property has to be
+ reinserted into the property set.</p>
+
+ @see com::sun::star::sheet::HeaderFooterContent
+ */
+ [property] com::sun::star::sheet::XHeaderFooterContent LeftPageFooterContent;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the content of the header for right pages.
+
+ <p>After changing the header text contents, this property has to be
+ reinserted into the property set.</p>
+
+ @see com::sun::star::sheet::HeaderFooterContent
+ */
+ [property] com::sun::star::sheet::XHeaderFooterContent RightPageHeaderContent;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the content of the footer for right pages.
+
+ <p>After changing the footer text contents, this property has to be
+ reinserted into the property set.</p>
+
+ @see com::sun::star::sheet::HeaderFooterContent
+ */
+ [property] com::sun::star::sheet::XHeaderFooterContent RightPageFooterContent;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the page number applied to the first page for this sheet.
+
+ <p>The value 0 indicates that the page numbers are continued from
+ the previous sheet.</p>
+ */
+ [property] short FirstPageNumber;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the scaling factor (in percent) for printing the sheet.
+ */
+ [property] short PageScale;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the number of pages the sheet will printed.
+ */
+ [property] short ScaleToPages;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the number of horizontal pages the sheet will printed on.
+
+ @since OOo 2.0.0
+
+ */
+ [property, optional] short ScaleToPagesX;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the number of vertical pages the sheet will printed on.
+
+ @since OOo 2.0.0
+
+ */
+ [property, optional] short ScaleToPagesY;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/TableValidation.idl b/offapi/com/sun/star/sheet/TableValidation.idl
new file mode 100644
index 000000000000..f71ab2b1e6aa
--- /dev/null
+++ b/offapi/com/sun/star/sheet/TableValidation.idl
@@ -0,0 +1,148 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_TableValidation_idl__
+#define __com_sun_star_sheet_TableValidation_idl__
+
+#ifndef __com_sun_star_sheet_XSheetCondition_idl__
+#include <com/sun/star/sheet/XSheetCondition.idl>
+#endif
+
+#ifndef __com_sun_star_beans_XPropertySet_idl__
+#include <com/sun/star/beans/XPropertySet.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_ValidationType_idl__
+#include <com/sun/star/sheet/ValidationType.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_ValidationAlertStyle_idl__
+#include <com/sun/star/sheet/ValidationAlertStyle.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents the data validation settings for a cell or cell range.
+ */
+published service TableValidation
+{
+
+ interface com::sun::star::beans::XPropertySet;
+
+ interface com::sun::star::sheet::XSheetCondition;
+
+ //=========================================================================
+
+ /** specifies the type of validation.
+ */
+ [property] com::sun::star::sheet::ValidationType Type;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies if an input message is shown when the cursor is in a
+ cell with these validation settings.
+ */
+ [property] boolean ShowInputMessage;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the title of the window showing the input message.
+
+ <p>This is only used if <member>TableValidation::ShowInputMessage</member>
+ is set to <TRUE/>.</p>
+ */
+ [property] string InputTitle;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the text of the input message.
+
+ <p>This is only used if <member>TableValidation::ShowInputMessage</member>
+ is set to <TRUE/>.</p>
+ */
+ [property] string InputMessage;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies if an error message is displayed when invalid data
+ is entered.
+ */
+ [property] boolean ShowErrorMessage;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the title of the window showing the error message.
+
+ <p>This is only used if <member>TableValidation::ShowErrorMessage</member>
+ is set to <TRUE/>.</p>
+ */
+ [property] string ErrorTitle;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the text of the error message.
+
+ <p>This is only used if <member>TableValidation::ShowErrorMessage</member>
+ is set to <TRUE/>.</p>
+ */
+ [property] string ErrorMessage;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies if blank cells should be allowed.
+ */
+ [property] boolean IgnoreBlankCells;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the style of the error message.
+
+ <p>This is used only if <member>TableValidation::ShowErrorMessage</member>
+ is set to <TRUE/>.</p>
+ */
+ [property] com::sun::star::sheet::ValidationAlertStyle ErrorAlertStyle;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies if the list of possible values should be shown on the cell and how.
+
+ See also <type>TableValidationVisibility</type>
+ */
+ [optional,property] short ShowList;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/TableValidationVisibility.idl b/offapi/com/sun/star/sheet/TableValidationVisibility.idl
new file mode 100644
index 000000000000..3d122d13ba9f
--- /dev/null
+++ b/offapi/com/sun/star/sheet/TableValidationVisibility.idl
@@ -0,0 +1,67 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_TableValidationVisibility_idl__
+#define __com_sun_star_sheet_TableValidationVisibility_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** These constants specify whether and how a list of possible values
+ of a cell should be shown.
+ */
+constants TableValidationVisibility
+{
+ //-------------------------------------------------------------------------
+
+ /** The List is not shown.
+ */
+ const short INVISIBLE = 0;
+
+ //-------------------------------------------------------------------------
+
+ /** The List is shown unsorted.
+ */
+ const short UNSORTED = 1;
+
+ //-------------------------------------------------------------------------
+
+ /** The List is shown sorted ascending.
+ */
+ const short SORTEDASCENDING = 2;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/UniqueCellFormatRanges.idl b/offapi/com/sun/star/sheet/UniqueCellFormatRanges.idl
new file mode 100644
index 000000000000..d8edb544e2d9
--- /dev/null
+++ b/offapi/com/sun/star/sheet/UniqueCellFormatRanges.idl
@@ -0,0 +1,80 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_UniqueCellFormatRanges_idl__
+#define __com_sun_star_sheet_UniqueCellFormatRanges_idl__
+
+#ifndef __com_sun_star_container_XIndexAccess_idl__
+#include <com/sun/star/container/XIndexAccess.idl>
+#endif
+
+#ifndef __com_sun_star_container_XEnumerationAccess_idl__
+#include <com/sun/star/container/XEnumerationAccess.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a collection of equal-formatted cell range collections.
+
+ <p>All cells inside a cell range collection (a member of this
+ collection) have the same formatting attributes.</p>
+
+ @see com::sun::star::sheet::SheetCellRange
+ @see com::sun::star::sheet::SheetCellRanges
+ @see com::sun::star::sheet::CellFormatRanges
+ */
+published service UniqueCellFormatRanges
+{
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access the contained cell range
+ collections by index.
+
+ @see com::sun::star::sheet::SheetCellRanges
+ */
+ interface com::sun::star::container::XIndexAccess;
+
+ //-------------------------------------------------------------------------
+
+ /** creates an enumeration of all cell range collections.
+
+ @see com::sun::star::sheet::UniqueCellFormatRangesEnumeration
+ */
+ interface com::sun::star::container::XEnumerationAccess;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/UniqueCellFormatRangesEnumeration.idl b/offapi/com/sun/star/sheet/UniqueCellFormatRangesEnumeration.idl
new file mode 100644
index 000000000000..ebfda93bf203
--- /dev/null
+++ b/offapi/com/sun/star/sheet/UniqueCellFormatRangesEnumeration.idl
@@ -0,0 +1,63 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_UniqueCellFormatRangesEnumeration_idl__
+#define __com_sun_star_sheet_UniqueCellFormatRangesEnumeration_idl__
+
+#ifndef __com_sun_star_container_XEnumeration_idl__
+#include <com/sun/star/container/XEnumeration.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents an enumeration of equal-formatted cell range collections.
+
+ @see com::sun::star::sheet::UniqueCellFormatRanges
+ */
+published service UniqueCellFormatRangesEnumeration
+{
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access the cell range collections
+ in the enumeration.
+
+ @see com::sun::star::sheet::SheetCellRanges
+ */
+ interface com::sun::star::container::XEnumeration;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/ValidationAlertStyle.idl b/offapi/com/sun/star/sheet/ValidationAlertStyle.idl
new file mode 100644
index 000000000000..3afbd65372df
--- /dev/null
+++ b/offapi/com/sun/star/sheet/ValidationAlertStyle.idl
@@ -0,0 +1,74 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_ValidationAlertStyle_idl__
+#define __com_sun_star_sheet_ValidationAlertStyle_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** used to specify how invalid cell contents are treated.
+ */
+published enum ValidationAlertStyle
+{
+ //-------------------------------------------------------------------------
+
+ /** error message is shown and the change is rejected.
+ */
+ STOP,
+
+ //-------------------------------------------------------------------------
+
+ /** warning message is shown and the user is asked whether the
+ change will be accepted (defaulted to "No").
+ */
+ WARNING,
+
+ //-------------------------------------------------------------------------
+
+ /** information message is shown and the user is asked whether the
+ change will be accepted (defaulted to "Yes").
+ */
+ INFO,
+
+ //-------------------------------------------------------------------------
+
+ /** macro is executed.
+ */
+ MACRO
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/ValidationType.idl b/offapi/com/sun/star/sheet/ValidationType.idl
new file mode 100644
index 000000000000..0c6d7a433570
--- /dev/null
+++ b/offapi/com/sun/star/sheet/ValidationType.idl
@@ -0,0 +1,96 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_ValidationType_idl__
+#define __com_sun_star_sheet_ValidationType_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** used to specify which cell contents are treated as valid.
+ */
+published enum ValidationType
+{
+ //-------------------------------------------------------------------------
+
+ /** any cell content is valid; no conditions are used.
+ */
+ ANY,
+
+ //-------------------------------------------------------------------------
+
+ /** any whole number matching the specified condition is valid.
+ */
+ WHOLE,
+
+ //-------------------------------------------------------------------------
+
+ /** any number matching the specified condition is valid.
+ */
+ DECIMAL,
+
+ //-------------------------------------------------------------------------
+
+ /** any date value matching the specified condition is valid.
+ */
+ DATE,
+
+ //-------------------------------------------------------------------------
+
+ /** any time value matching the specified condition is valid.
+ */
+ TIME,
+
+ //-------------------------------------------------------------------------
+
+ /** string is valid if its length matches the specified condition.
+ */
+ TEXT_LEN,
+
+ //-------------------------------------------------------------------------
+
+ /** Only strings from a specified list are valid.
+ */
+ LIST,
+
+ //-------------------------------------------------------------------------
+
+ /** The specified formula detemines which contents are valid.
+ */
+ CUSTOM
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/VolatileResult.idl b/offapi/com/sun/star/sheet/VolatileResult.idl
new file mode 100644
index 000000000000..791416855998
--- /dev/null
+++ b/offapi/com/sun/star/sheet/VolatileResult.idl
@@ -0,0 +1,64 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_VolatileResult_idl__
+#define __com_sun_star_sheet_VolatileResult_idl__
+
+#ifndef __com_sun_star_sheet_XVolatileResult_idl__
+#include <com/sun/star/sheet/XVolatileResult.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a volatile function result.
+
+ <p>A volatile function result can change its value over time. The
+ <type>XVolatileResult</type> interface allows the addition of
+ listeners which are notified when the value changes.</p>
+
+ @see com::sun::star::sheet::AddIn
+ */
+published service VolatileResult
+{
+ // ------------------------------------------------------------------------
+
+ /** porovides handling with a volatile function result.
+ */
+ interface com::sun::star::sheet::XVolatileResult;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XActivationBroadcaster.idl b/offapi/com/sun/star/sheet/XActivationBroadcaster.idl
new file mode 100644
index 000000000000..7c57ab280508
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XActivationBroadcaster.idl
@@ -0,0 +1,85 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XActivationBroadcaster_idl__
+#define __com_sun_star_sheet_XActivationBroadcaster_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XActivationEventListener_idl__
+#include <com/sun/star/sheet/XActivationEventListener.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides methods to add and remove XActivationEventListener
+
+ @since OOo 2.0.0
+
+ */
+published interface XActivationBroadcaster: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** allows a component supporting the
+ <type>XActivationEventListener</type> interface to
+ register as listener. The component will be notified with a
+ <type>ActivationEvent</type> every time the active sheet
+ changes.</p>
+
+ @param aListener
+ the component that is to be added as listener
+
+ @see XActivationEventListener
+ @see ActivationEvent
+ */
+ void addActivationEventListener([in] com::sun::star::sheet::XActivationEventListener aListener);
+
+ //-------------------------------------------------------------------------
+
+ /** removes a previously registered listener.
+
+ @param aListener
+ the component that is to be removed
+ */
+ void removeActivationEventListener( [in] com::sun::star::sheet::XActivationEventListener aListener );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XActivationEventListener.idl b/offapi/com/sun/star/sheet/XActivationEventListener.idl
new file mode 100644
index 000000000000..ede31cf591d0
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XActivationEventListener.idl
@@ -0,0 +1,74 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_sheet_XActivationEventListener_idl__
+#define __com_sun_star_sheet_XActivationEventListener_idl__
+
+#ifndef __com_sun_star_lang_XEventListener_idl__
+#include <com/sun/star/lang/XEventListener.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_ActivationEvent_idl__
+#include <com/sun/star/sheet/ActivationEvent.idl>
+#endif
+
+
+//=============================================================================
+
+ module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** makes it possible to receive events when the active spreadsheet changes.
+ */
+published interface XActivationEventListener: com::sun::star::lang::XEventListener
+{
+ //-------------------------------------------------------------------------
+
+ /** is called whenever data or a selection changed.
+
+ <p>This interface must be implemented by components that wish
+ to get notified of changes of the active Spreadsheet.
+ They can be registered at an <type>XSpreadsheetViewEventProvider</type> component.</p>
+
+ @param aEvent
+ the event that gives further information on which Spreadsheet is active now.
+
+ @see ActivationEvent
+ @see XSpreadsheetViewEventProvieder
+
+ @since OOo 2.0.0
+
+ */
+ void activeSpreadsheetChanged( [in] com::sun::star::sheet::ActivationEvent aEvent );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/sheet/XAddIn.idl b/offapi/com/sun/star/sheet/XAddIn.idl
new file mode 100644
index 000000000000..f506de2e5587
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XAddIn.idl
@@ -0,0 +1,218 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XAddIn_idl__
+#define __com_sun_star_sheet_XAddIn_idl__
+
+#ifndef __com_sun_star_lang_XLocalizable_idl__
+#include <com/sun/star/lang/XLocalizable.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** gives access to function descriptions and user-visible names.
+ */
+published interface XAddIn: com::sun::star::lang::XLocalizable
+{
+ //-------------------------------------------------------------------------
+
+ /** returns the internal function name for an user-visible name.
+
+ <p>The user-visible name of a function is the name shown to the
+ user. It may be translated to the current language of the AddIn,
+ so it is never stored in files. It should be a single word and is
+ used when entering or displaying formulas.</p>
+
+ <p>Attention: The method name contains a spelling error. Due to
+ compatibility reasons the name cannot be changed.</p>
+
+ @param aDisplayName
+ the user-visible name of a function.
+
+ @returns
+ the exact name of the method within its interface.
+
+ */
+ string getProgrammaticFuntionName( [in] string aDisplayName );
+
+ //-------------------------------------------------------------------------
+
+ /** returns the user-visible function name for an internal name.
+
+ <p>The user-visible name of a function is the name shown to the
+ user. It may be translated to the current language of the AddIn,
+ so it is never stored in files. It should be a single word and is
+ used when entering or displaying formulas.</p>
+
+ @param aProgrammaticName
+ is the exact name of a method within its interface.
+
+ @returns
+ the user-visible name of the specified function.
+ */
+ string getDisplayFunctionName( [in] string aProgrammaticName );
+
+ //-------------------------------------------------------------------------
+
+ /** returns the description of a function.
+
+ <p>The description is shown to the user when selecting functions.
+ It may be translated to the current language of the AddIn.</p>
+
+ @param aProgrammaticName
+ is the exact name of a method within its interface.
+
+ @returns
+ the description of the specified function.
+ */
+ string getFunctionDescription( [in] string aProgrammaticName );
+
+ //-------------------------------------------------------------------------
+
+ /** returns the user-visible name of the specified argument.
+
+ <p>The argument name is shown to the user when prompting for
+ arguments. It should be a single word and may be translated
+ to the current language of the AddIn.</p>
+
+ @param aProgrammaticFunctionName
+ is the exact name of a method within its interface.
+
+ @param nArgument
+ the index of the argument (0-based).
+
+ @returns
+ the user-visible name of the specified argument.
+ */
+ string getDisplayArgumentName(
+ [in] string aProgrammaticFunctionName,
+ [in] long nArgument );
+
+ //-------------------------------------------------------------------------
+
+ /** returns the description of the specified argument.
+
+ <p>The argument description is shown to the user when prompting
+ for arguments. It may be translated to the current language of
+ the AddIn.</p>
+
+ @param aProgrammaticFunctionName
+ is the exact name of a method within its interface.
+
+ @param nArgument
+ the index of the argument (0-based).
+
+ @returns
+ the description of the specified argument.
+ */
+ string getArgumentDescription(
+ [in] string aProgrammaticFunctionName,
+ [in] long nArgument );
+
+ //-------------------------------------------------------------------------
+
+ /** returns the programmatic name of the category the function
+ belongs to.
+
+ <p>The category name is used to group similar functions together.
+ The programmatic category name should always be in English, it is
+ never shown to the user.
+ It should be one of the following names if the function falls into
+ the corresponding category.</p>
+
+ <dl>
+ <dt>Database</dt>
+ <dd>for functions that operate with data organized in tabular form
+ like databases.</dd>
+
+ <dt>Date&amp;Time</dt>
+ <dd>for functions that deal with date or time values.</dd>
+
+ <dt>Financial</dt>
+ <dd>for functions that solve financial problems.</dd>
+
+ <dt>Information</dt>
+ <dd>for functions that provide information about cells.</dd>
+
+ <dt>Logical</dt>
+ <dd>for functions that deal with logical expressions.</dd>
+
+ <dt>Mathematical</dt>
+ <dd>for mathematical functions.</dd>
+
+ <dt>Matrix</dt>
+ <dd>for matrix functions.</dd>
+
+ <dt>Statistical</dt>
+ <dd>for statistical functions.</dd>
+
+ <dt>Spreadsheet</dt>
+ <dd>for functions that deal with cell ranges.</dd>
+
+ <dt>Text</dt>
+ <dd>for functions that deal with text strings.</dd>
+
+ <dt>Add-In</dt>
+ <dd>for additional functions.</dd>
+ </dl>
+
+ @param aProgrammaticFunctionName
+ is the exact name of a method within its interface.
+
+ @returns
+ the category name the specified function belongs to.
+ */
+ string getProgrammaticCategoryName( [in] string aProgrammaticFunctionName );
+
+ //-------------------------------------------------------------------------
+
+ /** returns the user-visible name of the category the function
+ belongs to.
+
+ <p>This is used when category names are shown to the user.</p>
+
+ @param aProgrammaticFunctionName
+ is the exact name of a method within its interface.
+
+ @returns
+ the user-visible category name the specified function
+ belongs to.
+ */
+ string getDisplayCategoryName( [in] string aProgrammaticFunctionName );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XAreaLink.idl b/offapi/com/sun/star/sheet/XAreaLink.idl
new file mode 100644
index 000000000000..9d92564945c0
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XAreaLink.idl
@@ -0,0 +1,89 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XAreaLink_idl__
+#define __com_sun_star_sheet_XAreaLink_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellRangeAddress_idl__
+#include <com/sun/star/table/CellRangeAddress.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides methods to change the settings of a linked cell range.
+
+ @see com::sun::star::sheet::CellAreaLink
+ */
+published interface XAreaLink: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** returns the source of the range within the source document.
+
+ <p>This can be the address of a cell or range in the form
+ "Sheet1.A1:C5", or the name of a named range or database range.</p>
+ */
+ string getSourceArea();
+
+ //-------------------------------------------------------------------------
+
+ /** sets the source of the range within the source document.
+
+ <p>This can be the address of a cell or range in the form
+ "Sheet1.A1:C5", or the name of a named range or database range.</p>
+ */
+ void setSourceArea( [in] string aSourceArea );
+
+ //-------------------------------------------------------------------------
+
+ /** returns the position of the linked range in the destination
+ document.
+ */
+ com::sun::star::table::CellRangeAddress getDestArea();
+
+ //-------------------------------------------------------------------------
+
+ /** sets the position of the linked range in the destination document.
+ */
+ void setDestArea( [in] com::sun::star::table::CellRangeAddress aDestArea );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XAreaLinks.idl b/offapi/com/sun/star/sheet/XAreaLinks.idl
new file mode 100644
index 000000000000..aca3f2ac57ed
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XAreaLinks.idl
@@ -0,0 +1,95 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XAreaLinks_idl__
+#define __com_sun_star_sheet_XAreaLinks_idl__
+
+#ifndef __com_sun_star_container_XIndexAccess_idl__
+#include <com/sun/star/container/XIndexAccess.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellAddress_idl__
+#include <com/sun/star/table/CellAddress.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides access via index to a collection of area links and inserting
+ and removing area links.
+
+ @see com::sun::star::sheet::CellAreaLinks
+ @see com::sun::star::sheet::CellAreaLink
+ */
+published interface XAreaLinks: com::sun::star::container::XIndexAccess
+{
+ //-------------------------------------------------------------------------
+
+ /** creates an area link and adds it to the collection.
+
+ @param aDestPos
+ the address of the first cell of the range inside the current
+ document.
+
+ @param aFileName
+ the URL of the source document.
+
+ @param aSourceArea
+ the name of the range in the source document.
+
+ <p>This can be the address of a cell or range in the form
+ "Sheet1.A1:C5", or the name of a named range or database range.</p>
+
+ @param aFilter
+ the name of the filter used to load the source document.
+
+ @param aFilterOptions
+ optional filter options for the specified filter.
+ */
+ void insertAtPosition( [in] com::sun::star::table::CellAddress aDestPos,
+ [in] string aFileName,
+ [in] string aSourceArea,
+ [in] string aFilter,
+ [in] string aFilterOptions );
+
+ //-------------------------------------------------------------------------
+
+ /** removes an area link from the collection.
+ */
+ void removeByIndex( [in] long nIndex );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XArrayFormulaRange.idl b/offapi/com/sun/star/sheet/XArrayFormulaRange.idl
new file mode 100644
index 000000000000..6941b8c5808d
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XArrayFormulaRange.idl
@@ -0,0 +1,69 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XArrayFormulaRange_idl__
+#define __com_sun_star_sheet_XArrayFormulaRange_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides handling of array formulas in a cell range.
+ */
+published interface XArrayFormulaRange: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** returns the array formula of the range or an empty string, if the
+ range does not contain an array formula.
+ */
+ string getArrayFormula();
+
+ //-------------------------------------------------------------------------
+
+ /** applies the array formula to the entire cell range.
+
+ @param aFormula
+ the formula that will be applied as array formula. Passing an
+ empty string erases an existing array formula.
+ */
+ void setArrayFormula( [in] string aFormula );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XArrayFormulaTokens.idl b/offapi/com/sun/star/sheet/XArrayFormulaTokens.idl
new file mode 100644
index 000000000000..6761606bc4dd
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XArrayFormulaTokens.idl
@@ -0,0 +1,68 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XArrayFormulaTokens_idl__
+#define __com_sun_star_sheet_XArrayFormulaTokens_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_FormulaToken_idl__
+#include <com/sun/star/sheet/FormulaToken.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** gives access to an array formula as token sequence.
+ */
+interface XArrayFormulaTokens
+{
+ //-------------------------------------------------------------------------
+
+ /** returns the array formula as sequence of tokens.
+ */
+ sequence< FormulaToken > getArrayTokens();
+
+ //-------------------------------------------------------------------------
+
+ /** sets the array formula as sequence of tokens.
+ */
+ void setArrayTokens( [in] sequence< FormulaToken > aTokens );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XCalculatable.idl b/offapi/com/sun/star/sheet/XCalculatable.idl
new file mode 100644
index 000000000000..4c46f8b5829a
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XCalculatable.idl
@@ -0,0 +1,95 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XCalculatable_idl__
+#define __com_sun_star_sheet_XCalculatable_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents something that can recalculate.
+ */
+published interface XCalculatable: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** recalculates all dirty cells.
+
+ <p>This calculates all formula cells which have not yet been
+ calculated after their precedents have changed.</p>
+ */
+ void calculate();
+
+ //-------------------------------------------------------------------------
+
+ /** recalculates all cells.
+ */
+ void calculateAll();
+
+ //-------------------------------------------------------------------------
+
+ /** returns whether automatic calculation is enabled.
+
+ <p>With automatic calculation, each formula cell is recalculated
+ whenever its value is needed after its precedents have changed.
+ The value is needed if the cell is displayed or used in another
+ calculation.</p>
+
+ @returns
+ <TRUE/>, if automatic calculation is enabled.
+ */
+ boolean isAutomaticCalculationEnabled();
+
+ //-------------------------------------------------------------------------
+
+ /** enables automatic calculation.
+
+ <p>With automatic calculation, each formula cell is recalculated
+ whenever its value is needed after its precedents have changed.
+ The value is needed if the cell is displayed or used in another
+ calculation.</p>
+
+ @param bEnabled
+ <TRUE/> to enable automatic calculation, <FALSE/> to disable.
+ */
+ [oneway] void enableAutomaticCalculation( [in] boolean bEnabled );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XCellAddressable.idl b/offapi/com/sun/star/sheet/XCellAddressable.idl
new file mode 100644
index 000000000000..b057301da9fd
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XCellAddressable.idl
@@ -0,0 +1,66 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XCellAddressable_idl__
+#define __com_sun_star_sheet_XCellAddressable_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellAddress_idl__
+#include <com/sun/star/table/CellAddress.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a cell which can be addressed with a
+ <type scope="com::sun::star::table">CellAddress</type>.
+ */
+published interface XCellAddressable: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** returns the address of the cell in the spreadsheet document.
+
+ <p>The <type scope="com::sun::star::table">CellAddress</type>
+ can be used to address the cell within its document.</p>
+ */
+ com::sun::star::table::CellAddress getCellAddress();
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XCellFormatRangesSupplier.idl b/offapi/com/sun/star/sheet/XCellFormatRangesSupplier.idl
new file mode 100644
index 000000000000..f2c660513fdd
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XCellFormatRangesSupplier.idl
@@ -0,0 +1,75 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XCellFormatRangesSupplier_idl__
+#define __com_sun_star_sheet_XCellFormatRangesSupplier_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_container_XIndexAccess_idl__
+#include <com/sun/star/container/XIndexAccess.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides access to a collection of equal-formatted cell ranges.
+
+ @see com::sun::star::sheet::SheetCellRange
+ @see com::sun::star::sheet::SheetCellRanges
+ */
+published interface XCellFormatRangesSupplier: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** returns a collection of equal-formatted cell ranges.
+
+ <p>Each cell of the original range is contained in one of the
+ ranges (even unformatted cells). If there is a non-rectangular
+ equal-formatted cell area, it will be split into several
+ rectangular ranges.</p>
+
+ @returns
+ the collection of equal-formatted cell ranges.
+
+ @see com::sun::star::sheet::CellFormatRanges
+ */
+ com::sun::star::container::XIndexAccess getCellFormatRanges();
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XCellRangeAddressable.idl b/offapi/com/sun/star/sheet/XCellRangeAddressable.idl
new file mode 100644
index 000000000000..f0391fafd856
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XCellRangeAddressable.idl
@@ -0,0 +1,66 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XCellRangeAddressable_idl__
+#define __com_sun_star_sheet_XCellRangeAddressable_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellRangeAddress_idl__
+#include <com/sun/star/table/CellRangeAddress.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a cell which can be addressed with a
+ <type scope="com::sun::star::table">CellRangeAddress</type>.
+ */
+published interface XCellRangeAddressable: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** returns the address of the cell range in the spreadsheet document.
+
+ <p>The <type scope="com::sun::star::table">CellRangeAddress</type>
+ can be used to address the range within its document.</p>
+ */
+ com::sun::star::table::CellRangeAddress getRangeAddress();
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XCellRangeData.idl b/offapi/com/sun/star/sheet/XCellRangeData.idl
new file mode 100644
index 000000000000..3e08587a3aa3
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XCellRangeData.idl
@@ -0,0 +1,69 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_sheet_XCellRangeData_idl__
+#define __com_sun_star_sheet_XCellRangeData_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+//=============================================================================
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** allows to get and set an array of data from a cell range.
+ <p>The outer sequence represents the rows and the inner sequence
+ the columns of the array.</p>
+ */
+
+published interface XCellRangeData: com::sun::star::uno::XInterface
+{
+ /** gets an array from the contents of the cell range.
+
+ <p>Each element of the result contains a <atom>double</atom>
+ or a <atom>string</atom>.</p>
+ */
+ sequence< sequence< any > > getDataArray();
+
+ /** fills the cell range with values from an array.
+
+ <p>The size of the array must be the same as the size of the cell
+ range. Each element of the array must contain a <atom>double</atom>
+ or a <atom>string</atom>.</p>
+
+ @throws <type scope="com::sun::star::uno">RuntimeException</type>
+ If the size of the array is different from the current size.
+ */
+ void setDataArray( [in] sequence< sequence< any > > aArray );
+};
+
+//=============================================================================
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XCellRangeFormula.idl b/offapi/com/sun/star/sheet/XCellRangeFormula.idl
new file mode 100644
index 000000000000..3de2eba0ddde
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XCellRangeFormula.idl
@@ -0,0 +1,79 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XCellRangeFormula_idl__
+#define __com_sun_star_sheet_XCellRangeFormula_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** allows to get and set cell contents (values, text or formulas)
+ for a cell range.
+
+ <p>The outer sequence represents the rows and the inner sequence
+ the columns of the array.</p>
+
+ @since OOo 1.1.2
+ */
+
+published interface XCellRangeFormula: com::sun::star::uno::XInterface
+{
+ /** gets an array from the contents of the cell range.
+
+ <p>Each element of the result contains the same string that
+ would be returned by
+ <member scope="com::sun::star::table">XCell::getFormula()</member>
+ for the corresponding cell.</p>
+ */
+ sequence< sequence< string > > getFormulaArray();
+
+ /** fills the cell range with values from an array.
+
+ <p>The size of the array must be the same as the size of the cell
+ range. Each element of the array is interpreted the same way as
+ the argument to a
+ <member scope="com::sun::star::table">XCell::setFormula()</member>
+ call for the corresponding cell.</p>
+
+ @throws <type scope="com::sun::star::uno">RuntimeException</type>
+ If the size of the array is different from the current size.
+ */
+ void setFormulaArray( [in] sequence< sequence< string > > aArray );
+};
+
+//=============================================================================
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XCellRangeMovement.idl b/offapi/com/sun/star/sheet/XCellRangeMovement.idl
new file mode 100644
index 000000000000..230c3606b845
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XCellRangeMovement.idl
@@ -0,0 +1,131 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XCellRangeMovement_idl__
+#define __com_sun_star_sheet_XCellRangeMovement_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellRangeAddress_idl__
+#include <com/sun/star/table/CellRangeAddress.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_CellInsertMode_idl__
+#include <com/sun/star/sheet/CellInsertMode.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_CellDeleteMode_idl__
+#include <com/sun/star/sheet/CellDeleteMode.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellAddress_idl__
+#include <com/sun/star/table/CellAddress.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides methods for moving ranges of cells in a sheet.
+ */
+published interface XCellRangeMovement: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** inserts cells, moving other cells down or right.
+
+ <p>Non-empty cells cannot be moved off the sheet.</p>
+
+ @param aRange
+ the cell range in which empty cells will be inserted.
+
+ @param nMode
+ describes how to move existing cells.
+ */
+ void insertCells(
+ [in] com::sun::star::table::CellRangeAddress aRange,
+ [in] com::sun::star::sheet::CellInsertMode nMode );
+
+ //-------------------------------------------------------------------------
+
+ /** deletes cells, moving other cells up or left.
+
+ @param aRange
+ the cell range to remove.
+
+ @param nMode
+ describes how to move following cells.
+ */
+ void removeRange(
+ [in] com::sun::star::table::CellRangeAddress aRange,
+ [in] com::sun::star::sheet::CellDeleteMode nMode );
+
+ //-------------------------------------------------------------------------
+
+ /** moves a cell range to another position in the document.
+
+ <p>After copying the contents of the cell range, all cells
+ will be cleared.</p>
+
+ @param aDestination
+ the address of the top left cell of the destination range.
+
+ @param aSource
+ the cell range which will be copied.
+ */
+ void moveRange(
+ [in] com::sun::star::table::CellAddress aDestination,
+ [in] com::sun::star::table::CellRangeAddress aSource );
+
+ //-------------------------------------------------------------------------
+
+ /** copies a cell range to another position in the document.
+
+ <p>The source cell range keeps unchanged.</p>
+
+ @param aDestination
+ the address of the top left cell of the destination range.
+
+ @param aSource
+ the cell range which will be copied.
+ */
+ void copyRange(
+ [in] com::sun::star::table::CellAddress aDestination,
+ [in] com::sun::star::table::CellRangeAddress aSource );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XCellRangeReferrer.idl b/offapi/com/sun/star/sheet/XCellRangeReferrer.idl
new file mode 100644
index 000000000000..95ba302b90fe
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XCellRangeReferrer.idl
@@ -0,0 +1,68 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XCellRangeReferrer_idl__
+#define __com_sun_star_sheet_XCellRangeReferrer_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_table_XCellRange_idl__
+#include <com/sun/star/table/XCellRange.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** allows direct access to the cells in a named range or to the cells
+ which are visible in a view, without the need to get the document
+ object first.
+
+ @see com::sun::star::sheet::NamedRange
+ @see com::sun::star::sheet::DatabaseRange
+ @see com::sun::star::sheet::SpreadsheetViewPane
+ */
+published interface XCellRangeReferrer: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** returns the cell range object that is represented.
+ */
+ com::sun::star::table::XCellRange getReferredCells();
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XCellRangesAccess.idl b/offapi/com/sun/star/sheet/XCellRangesAccess.idl
new file mode 100644
index 000000000000..d22d2a4c6e6e
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XCellRangesAccess.idl
@@ -0,0 +1,152 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XCellRangesAccess_idl__
+#define __com_sun_star_sheet_XCellRangesAccess_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_lang_IndexOutOfBoundsException_idl__
+#include <com/sun/star/lang/IndexOutOfBoundsException.idl>
+#endif
+
+#ifndef __com_sun_star_lang_IllegalArgumentException_idl__
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+#endif
+
+#ifndef __com_sun_star_table_XCell_idl__
+#include <com/sun/star/table/XCell.idl>
+#endif
+
+#ifndef __com_sun_star_table_XCellRange_idl__
+#include <com/sun/star/table/XCellRange.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides access to the cells or to sub-ranges of all sheets.
+
+ @see com::sun::star::sheet::Spreadsheets
+ */
+published interface XCellRangesAccess: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** Returns a single cell within the range.
+
+ @param nColumn
+ is the column index of the cell inside the sheet.
+
+ @param nRow
+ is the row index of the cell inside the sheet.
+
+ @param nSheet
+ is the sheet index of the sheet inside the document.
+
+ @returns
+ the specified cell.
+
+ @throws <type scope="com::sun::star::lang">IndexOutOfBoundsException</type>
+ if an index is outside the dimensions of this range.
+
+ @see com::sun::star::table::Cell
+ */
+ com::sun::star::table::XCell getCellByPosition(
+ [in] long nColumn,
+ [in] long nRow,
+ [in] long nSheet )
+ raises( com::sun::star::lang::IndexOutOfBoundsException );
+
+ //-------------------------------------------------------------------------
+
+ /** Returns a sub-range of cells within the range.
+
+ @param nLeft
+ is the column index of the first cell inside the range.
+
+ @param nTop
+ is the row index of the first cell inside the range.
+
+ @param nRight
+ is the column index of the last cell inside the range.
+
+ @param nBottom
+ is the row index of the last cell inside the range.
+
+ @param nSheet
+ is the sheet index of the sheet inside the document.
+
+ @returns
+ the specified cell range.
+
+ @throws <type scope="com::sun::star::lang">IndexOutOfBoundsException</type>
+ if an index is outside the dimensions of this range.
+
+ @see com::sun::star::table::CellRange
+ */
+ com::sun::star::table::XCellRange getCellRangeByPosition(
+ [in] long nLeft,
+ [in] long nTop,
+ [in] long nRight,
+ [in] long nBottom,
+ [in] long nSheet )
+ raises( com::sun::star::lang::IndexOutOfBoundsException );
+
+ //-------------------------------------------------------------------------
+
+ /** Returns a sub-range of cells within the range.
+
+ <p>The sub-range is specified by its name. The format of the range
+ name is dependent of the context of the table. In spreadsheets valid
+ names may be "Sheet1.A1:C5" or "$Sheet1.$B$2" or even defined names for cell ranges
+ such as "MySpecialCell".</p>
+
+ @param aRange
+ the name of the sub-range.
+
+ @returns
+ the specified cell ranges.
+
+ @see com::sun::star::table::CellRange
+ */
+ sequence <com::sun::star::table::XCellRange> getCellRangesByName( [in] string aRange )
+ raises( com::sun::star::lang::IllegalArgumentException );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XCellRangesQuery.idl b/offapi/com/sun/star/sheet/XCellRangesQuery.idl
new file mode 100644
index 000000000000..44c9b8b4053b
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XCellRangesQuery.idl
@@ -0,0 +1,172 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XCellRangesQuery_idl__
+#define __com_sun_star_sheet_XCellRangesQuery_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XSheetCellRanges_idl__
+#include <com/sun/star/sheet/XSheetCellRanges.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellAddress_idl__
+#include <com/sun/star/table/CellAddress.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellRangeAddress_idl__
+#include <com/sun/star/table/CellRangeAddress.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides methods to query for cell ranges with specific contents.
+
+ <p>All methods return a collection of cell ranges.</p>
+
+ @see com::sun::star::sheet::SheetRangesQuery
+ @see com::sun::star::sheet::SheetCellRanges
+ */
+published interface XCellRangesQuery: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** queries all visible cells.
+
+ @returns
+ the visible (not hidden) cells of the current cell range(s).
+ */
+ com::sun::star::sheet::XSheetCellRanges queryVisibleCells();
+
+ //-------------------------------------------------------------------------
+
+ /** queries all empty cells.
+
+ @returns
+ the empty cells of the current cell range(s).
+ */
+ com::sun::star::sheet::XSheetCellRanges queryEmptyCells();
+
+ //-------------------------------------------------------------------------
+
+ /** queries all cells with the specified content type(s).
+
+ @param nContentFlags
+ a combination of <type>CellFlags</type> flags.
+
+ <p>Attention: Despite the <type>CellFlags</type> flags are
+ <atom>long</atom> values, this method expects a <atom>short</atom>
+ parameter.
+
+ @returns
+ all cells of the current cell range(s) with the specified
+ content type(s).
+ */
+ com::sun::star::sheet::XSheetCellRanges queryContentCells(
+ [in] short nContentFlags );
+
+ //-------------------------------------------------------------------------
+
+ /** queries all formula cells with the specified result type.
+
+ @param nResultFlags
+ a combination of <type>FormulaResult</type> flags.
+
+ @returns
+ all formula cells of the current cell range(s) with the
+ specified result type(s).
+ */
+ com::sun::star::sheet::XSheetCellRanges queryFormulaCells(
+ [in] long nResultFlags );
+
+ //-------------------------------------------------------------------------
+
+ /** queries all cells with different values in a specified row.
+
+ <p>This method takes each column of the current cell range(s) and
+ compares all cells with the cell in the specified row. All cells
+ which are different to this comparison cell will be returned.</p>
+
+ @param aCompare
+ contains a cell address with the row index used for comparison.
+ Only this row index is of interest.
+
+ @returns
+ all cells of the current cell range(s) which are different
+ to the comparison cell of each column.
+ */
+ com::sun::star::sheet::XSheetCellRanges queryColumnDifferences(
+ [in] com::sun::star::table::CellAddress aCompare );
+
+ //-------------------------------------------------------------------------
+
+ /** queries all cells with different values in a specified column.
+
+ <p>This method takes each row of the current cell range(s) and
+ compares all cells with the cell in the specified column. All cells
+ which are different to this comparison cell will be returned.</p>
+
+ @param aCompare
+ contains a cell address with the column index used for
+ comparison. Only this column index is of interest.
+
+ @returns
+ all cells of the current cell range(s) which are different
+ to the comparison cell of each row.
+ */
+ com::sun::star::sheet::XSheetCellRanges queryRowDifferences(
+ [in] com::sun::star::table::CellAddress aCompare );
+
+ //-------------------------------------------------------------------------
+
+ /** intersects the current cell range(s) with the specified cell range.
+
+ @param aRange
+ contains the cell range for intersection.
+
+ @return
+ all cells of the current cell range(s) which are contained
+ in the passed cell range.
+
+ */
+ com::sun::star::sheet::XSheetCellRanges queryIntersection(
+ [in] com::sun::star::table::CellRangeAddress aRange );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XCellSeries.idl b/offapi/com/sun/star/sheet/XCellSeries.idl
new file mode 100644
index 000000000000..27e6794b6eec
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XCellSeries.idl
@@ -0,0 +1,110 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XCellSeries_idl__
+#define __com_sun_star_sheet_XCellSeries_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_FillDirection_idl__
+#include <com/sun/star/sheet/FillDirection.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_FillMode_idl__
+#include <com/sun/star/sheet/FillMode.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_FillDateMode_idl__
+#include <com/sun/star/sheet/FillDateMode.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides methods to fill out a cell range automatically with values
+ based on a start value, step count and fill mode.
+
+ @see com::sun::star::sheet::SheetCellRange
+ */
+published interface XCellSeries: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** fills all cells in the range based on the specified settings.
+
+ @param nFillDirection
+ specifies the direction to fill the rows/columns of the range.
+
+ @param nFillMode
+ specifies the type of the series.
+
+ @param nFillDateMode
+ specifies the calculation mode for date values.
+
+ @param fStep
+ contains the value used to increase/decrease the series values.
+
+ @param fEndValue
+ contains the threshold value on which the calculation of the
+ current series stops.
+ */
+ void fillSeries(
+ [in] com::sun::star::sheet::FillDirection nFillDirection,
+ [in] com::sun::star::sheet::FillMode nFillMode,
+ [in] com::sun::star::sheet::FillDateMode nFillDateMode,
+ [in] double fStep,
+ [in] double fEndValue );
+
+ //-------------------------------------------------------------------------
+
+ /** fills all cells in the range in a way that is specified by the
+ first cell(s) in the range.
+
+ @param nFillDirection
+ specifies the direction to fill the rows/columns of the range.
+
+ @param nSourceCount
+ contains the number of cells in each row/column used to
+ constitute the fill algorithm.
+ */
+ void fillAuto(
+ [in] com::sun::star::sheet::FillDirection nFillDirection,
+ [in] long nSourceCount );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XCompatibilityNames.idl b/offapi/com/sun/star/sheet/XCompatibilityNames.idl
new file mode 100644
index 000000000000..28170f8eadc8
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XCompatibilityNames.idl
@@ -0,0 +1,82 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XCompatibilityNames_idl__
+#define __com_sun_star_sheet_XCompatibilityNames_idl__
+
+#ifndef __com_sun_star_sheet_LocalizedName_idl__
+#include <com/sun/star/sheet/LocalizedName.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** gives access to the sequence of compatibility names for an Addin
+ function.
+ */
+published interface XCompatibilityNames: com::sun::star::uno::XInterface
+{
+ /** returns the compatibility names of the specified function.
+
+ <p>Compatibility names are localized names of AddIn functions that
+ are used to import files from other applications.</p>
+
+ <p>If on import a localized function name is read, this list of
+ compatibility names is used to find the internal name of the
+ function. The current locale may differ from the locale used in
+ the imported file, so the method
+ <member>XAddIn::getProgrammaticFuntionName</member> cannot be used
+ here.</p>
+
+ <p>The order inside the sequence of compatibility names is used to
+ prioritize the names. Initially the first compatibility name of
+ each function is compared to the imported name (each function may
+ provide a sequence of compatibility names - the first entry of all
+ sequences is used). If no entry is equal, the second entry of each
+ sequence is used and so on.</p>
+
+ <p>If a locale is not present in the sequence of compatibility names,
+ the first entry of the sequence is used. So the method should return
+ a sequence which contains first the entry representing the current
+ locale.<TRUE/></p>
+
+ @param aProgrammaticName
+ is the exact name of a method within its interface.
+ */
+ sequence< com::sun::star::sheet::LocalizedName >
+ getCompatibilityNames( [in] string aProgrammaticName );
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XConsolidatable.idl b/offapi/com/sun/star/sheet/XConsolidatable.idl
new file mode 100644
index 000000000000..ba02e0741480
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XConsolidatable.idl
@@ -0,0 +1,87 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XConsolidatable_idl__
+#define __com_sun_star_sheet_XConsolidatable_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XConsolidationDescriptor_idl__
+#include <com/sun/star/sheet/XConsolidationDescriptor.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides methods to consolidate ranges in a spreadsheet document.
+
+ <p>Consolidation combines the cells of multiple cell ranges, using a
+ specific function.</p>
+
+ @deprecated
+ */
+published interface XConsolidatable: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** creates a consolidation descriptor.
+
+ @param bEmpty
+ <TRUE/> leaves the descriptor empty, <FALSE/> fills it with
+ the settings from the last consolidation action.
+
+ @see com::sun::star::sheet::ConsolidationDescriptor
+ */
+ com::sun::star::sheet::XConsolidationDescriptor createConsolidationDescriptor(
+ [in] boolean bEmpty );
+
+ //-------------------------------------------------------------------------
+
+ /** consolidates data from several cell ranges, using the settings
+ in the passed descriptor.
+
+ @param xDescriptor
+ the descriptor used to perform the consolidation.
+
+ @see com::sun::star::sheet::ConsolidationDescriptor
+ */
+ void consolidate(
+ [in] com::sun::star::sheet::XConsolidationDescriptor xDescriptor );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XConsolidationDescriptor.idl b/offapi/com/sun/star/sheet/XConsolidationDescriptor.idl
new file mode 100644
index 000000000000..e23069c57a84
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XConsolidationDescriptor.idl
@@ -0,0 +1,150 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XConsolidationDescriptor_idl__
+#define __com_sun_star_sheet_XConsolidationDescriptor_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_GeneralFunction_idl__
+#include <com/sun/star/sheet/GeneralFunction.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellRangeAddress_idl__
+#include <com/sun/star/table/CellRangeAddress.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellAddress_idl__
+#include <com/sun/star/table/CellAddress.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides access to the settings of a consolidation descriptor.
+
+ @deprecated
+
+ @see com::sun::star::sheet::ConsolidationDescriptor
+ */
+published interface XConsolidationDescriptor: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** returns the function by which the ranges are consolidated.
+ */
+ com::sun::star::sheet::GeneralFunction getFunction();
+
+ //-------------------------------------------------------------------------
+
+ /** sets the function by which the ranges are consolidated.
+ */
+ void setFunction( [in] com::sun::star::sheet::GeneralFunction nFunction );
+
+ //-------------------------------------------------------------------------
+
+ /** returns the cell ranges which are consolidated.
+ */
+ sequence< com::sun::star::table::CellRangeAddress > getSources();
+
+ //-------------------------------------------------------------------------
+
+ /** sets the cell ranges which are consolidated.
+ */
+ void setSources(
+ [in] sequence< com::sun::star::table::CellRangeAddress > aSources );
+
+ //-------------------------------------------------------------------------
+
+ /** returns the position of the top left cell of the cell range where
+ the consolidated data are copied.
+ */
+ com::sun::star::table::CellAddress getStartOutputPosition();
+
+ //-------------------------------------------------------------------------
+
+ /** sets the position of the top left cell of the cell range
+ where the consolidated data are copied.
+ */
+ void setStartOutputPosition(
+ [in] com::sun::star::table::CellAddress aStartOutputPosition );
+
+ //-------------------------------------------------------------------------
+
+ /** returns, whether column headers from the cell ranges are used to
+ find matching data or not.
+ */
+ boolean getUseColumnHeaders();
+
+ //-------------------------------------------------------------------------
+
+ /** specifies if column headers from the cell ranges are used to find
+ matching data.
+ */
+ void setUseColumnHeaders( [in] boolean bUseColumnHeaders );
+
+ //-------------------------------------------------------------------------
+
+ /** returns, whether row headers from the cell ranges are used to
+ find matching data or not.
+ */
+ boolean getUseRowHeaders();
+
+ //-------------------------------------------------------------------------
+
+ /** specifies if row headers from the cell ranges are used to find
+ matching data.
+ */
+ void setUseRowHeaders( [in] boolean bUseRowHeaders );
+
+ //-------------------------------------------------------------------------
+
+ /** returns, whether links to the original data are inserted in the
+ output area or not.
+ */
+ boolean getInsertLinks();
+
+ //-------------------------------------------------------------------------
+
+ /** specifies if links to the original data are inserted in the
+ output area.
+ */
+ void setInsertLinks( [in] boolean bInsertLinks );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XDDELink.idl b/offapi/com/sun/star/sheet/XDDELink.idl
new file mode 100644
index 000000000000..3f2a71ed4cbd
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XDDELink.idl
@@ -0,0 +1,75 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XDDELink_idl__
+#define __com_sun_star_sheet_XDDELink_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides methods to change the settings of a DDE link.
+
+ @deprecated
+
+ @see com::sun::star::sheet::DDELink
+ */
+published interface XDDELink: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** returns the application from which data are requested
+ (the DDE server application).
+ */
+ string getApplication();
+
+ //-------------------------------------------------------------------------
+
+ /** returns the DDE topic from which data are requested.
+ */
+ string getTopic();
+
+ //-------------------------------------------------------------------------
+
+ /** returns the DDE item from which data are requested.
+ */
+ string getItem();
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XDDELinkResults.idl b/offapi/com/sun/star/sheet/XDDELinkResults.idl
new file mode 100644
index 000000000000..b0ca1afd5205
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XDDELinkResults.idl
@@ -0,0 +1,77 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XDDELinkResults_idl__
+#define __com_sun_star_sheet_XDDELinkResults_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides access to the DDE link results.
+
+ @see com::sun::star::sheet::DDELink
+
+ @since OOo 3.0
+ */
+published interface XDDELinkResults: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** returns the DDE link results.
+
+ @returns
+ the DDE link results. The outer sequence contains the value rows.
+ The inner sequences contain the result values for one row.
+ */
+ sequence< sequence< any > > getResults();
+
+ //-------------------------------------------------------------------------
+
+ /** sets the DDE link results.
+
+ @param aResults
+ the DDE link results. The outer sequence contains the value rows.
+ The inner sequences contain the result values for one row.
+ If the outer sequence is empty, the existing DDE link results are
+ cleared.
+ */
+ void setResults( [in] sequence< sequence< any > > aResults );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/sheet/XDDELinks.idl b/offapi/com/sun/star/sheet/XDDELinks.idl
new file mode 100644
index 000000000000..6863a4432c8c
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XDDELinks.idl
@@ -0,0 +1,92 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XDDELinks_idl__
+#define __com_sun_star_sheet_XDDELinks_idl__
+
+#ifndef __com_sun_star_container_XNameAccess_idl__
+#include <com/sun/star/container/XNameAccess.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XDDELink_idl__
+#include <com/sun/star/sheet/XDDELink.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_DDELinkMode_idl__
+#include <com/sun/star/sheet/DDELinkMode.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides a method to add a DDE link to a spreadsheet.
+
+ @see com::sun::star::sheet::DDELinks
+
+ @since OOo 3.0
+ */
+published interface XDDELinks: com::sun::star::container::XNameAccess
+{
+ //-------------------------------------------------------------------------
+
+ /** adds a DDE link to the spreadsheet without updating it.
+
+ <p>If a DDE link with the specified parameters already exists, the
+ existing DDE link will be returned. Otherwise a new DDE link will be
+ created.</p>
+
+ @param aApplication
+ the DDE server application from which data are requested.
+
+ @param aTopic
+ the DDE topic from which data are requested.
+
+ @param aItem
+ the DDE item from which data are requested.
+
+ @param nMode
+ the DDE link mode.
+
+ @returns
+ the DDE link.
+ */
+ com::sun::star::sheet::XDDELink addDDELink(
+ [in] string aApplication,
+ [in] string aTopic,
+ [in] string aItem,
+ [in] com::sun::star::sheet::DDELinkMode nMode );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/sheet/XDataPilotDataLayoutFieldSupplier.idl b/offapi/com/sun/star/sheet/XDataPilotDataLayoutFieldSupplier.idl
new file mode 100644
index 000000000000..06d74a921077
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XDataPilotDataLayoutFieldSupplier.idl
@@ -0,0 +1,74 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XDataPilotDataLayoutFieldSupplier_idl__
+#define __com_sun_star_sheet_XDataPilotDataLayoutFieldSupplier_idl__
+
+#ifndef __com_sun_star_sheet_XDataPilotField_idl__
+#include <com/sun/star/sheet/XDataPilotField.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** Provides access to the <type>DataPilotField</type> used to layout
+ multiple data fields.
+
+ <p>This data field can be inserted into the rows dimension or columns
+ dimension by changing its <member scope="DataPilotField">Orientation</member>
+ property. This interface can be used to access the data layout field
+ before multiple data fields are inserted into the DataPilot table. It
+ remains invisible as long as the DataPilot table contains at most one data
+ field.</p>
+
+ @see com::sun::star::sheet::DataPilotDescriptor
+ @see com::sun::star::sheet::DataPilotTable
+ */
+published interface XDataPilotDataLayoutFieldSupplier
+{
+ //-------------------------------------------------------------------------
+
+ /** Returns the <type>DataPilotField</type> used to layout multiple data
+ fields.
+
+ <p>If the field does not exist yet, it will be created. It is possible
+ to insert this field into the rows or columns dimension by changing
+ its <member scope="DataPilotField">Orientation</member> property.</p>
+ */
+ XDataPilotField getDataLayoutField();
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XDataPilotDescriptor.idl b/offapi/com/sun/star/sheet/XDataPilotDescriptor.idl
new file mode 100644
index 000000000000..ab86bf29e05a
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XDataPilotDescriptor.idl
@@ -0,0 +1,150 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XDataPilotDescriptor_idl__
+#define __com_sun_star_sheet_XDataPilotDescriptor_idl__
+
+#ifndef __com_sun_star_container_XNamed_idl__
+#include <com/sun/star/container/XNamed.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellRangeAddress_idl__
+#include <com/sun/star/table/CellRangeAddress.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XSheetFilterDescriptor_idl__
+#include <com/sun/star/sheet/XSheetFilterDescriptor.idl>
+#endif
+
+#ifndef __com_sun_star_container_XIndexAccess_idl__
+#include <com/sun/star/container/XIndexAccess.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides access to the layout settings of a data pilot table.
+
+ <p>This interface extends the interface
+ <type scope="com::sun::star::container">XNamed</type> which provides
+ access to the name of the data pilot table used e.g. in collections.</p>
+
+ @see com::sun::star::sheet::DataPilotDescriptor
+ @see com::sun::star::sheet::DataPilotTable
+ */
+published interface XDataPilotDescriptor: com::sun::star::container::XNamed
+{
+ //-------------------------------------------------------------------------
+
+ /** returns an additional string stored in the data pilot table.
+ */
+ string getTag();
+
+ //-------------------------------------------------------------------------
+
+ /** sets an additional string stored in the data pilot table.
+ */
+ void setTag( [in] string aTag );
+
+ //-------------------------------------------------------------------------
+
+ /** returns the cell range containing the data for the data pilot table.
+ */
+ com::sun::star::table::CellRangeAddress getSourceRange();
+
+ //-------------------------------------------------------------------------
+
+ /** sets the cell range containing the data for the data pilot table.
+ */
+ void setSourceRange(
+ [in] com::sun::star::table::CellRangeAddress aSourceRange );
+
+ //-------------------------------------------------------------------------
+
+ /** returns the filter descriptor specifying which data from the
+ source cell range are used for the data pilot table.
+ */
+ com::sun::star::sheet::XSheetFilterDescriptor getFilterDescriptor();
+
+ //-------------------------------------------------------------------------
+
+ /** returns the collection of all the data pilot fields.
+ */
+ com::sun::star::container::XIndexAccess getDataPilotFields();
+
+ //-------------------------------------------------------------------------
+
+ /** returns the collection of the data pilot fields used as column fields.
+
+ @see com::sun::star::sheet::DataPilotFields
+ */
+ com::sun::star::container::XIndexAccess getColumnFields();
+
+ //-------------------------------------------------------------------------
+
+ /** returns the collection of the data pilot fields used as row fields.
+
+ @see com::sun::star::sheet::DataPilotFields
+ */
+ com::sun::star::container::XIndexAccess getRowFields();
+
+ //-------------------------------------------------------------------------
+
+ /** returns the collection of the data pilot fields used as page fields.
+
+ @see com::sun::star::sheet::DataPilotFields
+ */
+ com::sun::star::container::XIndexAccess getPageFields();
+
+ //-------------------------------------------------------------------------
+
+ /** returns the collection of the data pilot fields used as data fields.
+
+ @see com::sun::star::sheet::DataPilotFields
+ */
+ com::sun::star::container::XIndexAccess getDataFields();
+
+ //-------------------------------------------------------------------------
+
+ /** returns the collection of the data pilot fields not used as
+ column, row, page, or data fields.
+
+ @see com::sun::star::sheet::DataPilotFields
+ */
+ com::sun::star::container::XIndexAccess getHiddenFields();
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XDataPilotField.idl b/offapi/com/sun/star/sheet/XDataPilotField.idl
new file mode 100644
index 000000000000..43f98d55f029
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XDataPilotField.idl
@@ -0,0 +1,67 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XDataPilotField_idl__
+#define __com_sun_star_sheet_XDataPilotField_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_container_XIndexAccess_idl__
+#include <com/sun/star/container/XIndexAccess.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides methods to control a data pilot field which has already
+ been created.
+
+ @see com::sun::star::sheet::DataPilotField
+ */
+published interface XDataPilotField: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** returns the collection of the data pilot items.
+
+ @see com::sun::star::sheet::DataPilotItems
+ */
+ com::sun::star::container::XIndexAccess getItems();
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XDataPilotFieldGrouping.idl b/offapi/com/sun/star/sheet/XDataPilotFieldGrouping.idl
new file mode 100644
index 000000000000..43ab69bb99d5
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XDataPilotFieldGrouping.idl
@@ -0,0 +1,174 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XDataPilotFieldGrouping_idl__
+#define __com_sun_star_sheet_XDataPilotFieldGrouping_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_DataPilotFieldGroupInfo_idl__
+#include <com/sun/star/sheet/DataPilotFieldGroupInfo.idl>
+#endif
+#ifndef __com_sun_star_lang_IllegalArgumentException_idl__
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** Provides methods to create new DataPilot fields where some or all items of
+ this DataPilot field are grouped in some way.
+
+ @see DataPilotField
+ */
+published interface XDataPilotFieldGrouping: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** Creates a new DataPilot field which contains a group containing the
+ given DataPilot field items (members).
+
+ <p>It is possible to create multiple groups by calling this method
+ several times at the same DataPilot field. On subsequent calls, the
+ DataPilot field created at the first call is used to insert the new
+ groups.</p>
+
+ <p>The collection of groups can be accessed via the
+ <member>DataPilotField::GroupInfo</member> property. The returned
+ struct contains the sequence of groups in its member
+ <member>DataPilotFieldGroupInfo::Groups</member>.</p>
+
+ @param aItems
+ a sequence containing the names of the items (members) which will
+ be part of the new group. Must be names of items contained in the
+ current field.
+
+ @returns
+ the new created field if there is one created on the first call of
+ this method. <NULL/> is returned on subsequent calls.
+
+ @see DataPilotField
+ @see DataPilotFieldGroupInfo
+ */
+ XDataPilotField createNameGroup([in] sequence< string > aItems)
+ raises( com::sun::star::lang::IllegalArgumentException );
+
+ //-------------------------------------------------------------------------
+
+ /** Groups the members of this field by dates, according to the passed
+ settings.
+
+ <p>If this field is already grouped by dates, a new DataPilot field
+ will be created and returned. If this field is not grouped at all, the
+ date grouping is perfomed inside of this field (no new field will be
+ created). There must not be any other grouping (by member names or by
+ numeric ranges), otherwise an exception is thrown.</p>
+
+ @param aInfo
+ contains the information how to group the items of the field. The
+ members of this struct have to fulfill the following requirements:
+
+ <ul>
+ <li>If the member <member>DataPilotFieldGroupInfo::HasAutoStart
+ </member> is set to <FALSE/>, then the value of <member>
+ DataPilotFieldGroupInfo::Start</member> must be a floating-point
+ value representing a valid date/time value (if <member>
+ DataPilotFieldGroupInfo::HasAutoStart</member> is set to <TRUE/>,
+ the value of <member>DataPilotFieldGroupInfo::Start</member> will
+ be ignored).</li>
+
+ <li>If the member <member>DataPilotFieldGroupInfo::HasAutoEnd
+ </member> is set to <FALSE/>, then the value of <member>
+ DataPilotFieldGroupInfo::End</member> must be a floating-point
+ value representing a valid date/time value( if <member>
+ DataPilotFieldGroupInfo::HasAutoEnd</member> is set to <TRUE/>,
+ the value of <member>DataPilotFieldGroupInfo::End</member> will be
+ ignored).</li>
+
+ <li>If the members <member>DataPilotFieldGroupInfo::HasAutoStart
+ </member> and <member>DataPilotFieldGroupInfo::HasAutoEnd</member>
+ are set to <FALSE/> both, then the value of <member>
+ DataPilotFieldGroupInfo::Start</member> must be less than or equal
+ to the value of <member>DataPilotFieldGroupInfo::End</member>.</li>
+
+ <li>The member <member>DataPilotFieldGroupInfo::HasDateValues</member>
+ must be set to <TRUE/>.</li>
+
+ <li>The member <member>DataPilotFieldGroupInfo::Step</member> must
+ be zero, unless ranges of days have to be grouped (see the
+ description of the member GroupBy below), in that case the value
+ must be greater than or equal to 1 and less than or equal to 32767.
+ The fractional part of the value will be ignored.</li>
+
+ <li>The member <member>DataPilotFieldGroupInfo::GroupBy</member>
+ must contain exactly one of the flags from <type>DataPilotFieldGroupBy</type>.
+ A combination of several flags will not be accepted. If
+ <const>DataPilotFieldGroupBy::DAYS</const> is specified, the
+ value of the member <member>DataPilotFieldGroupInfo::Step</member>
+ will specify the type of day grouping (see above). If that value
+ is zero, grouping is performed on all days of the year (e.g. the
+ members containing the 1st of January of any year are grouped
+ together). If that value is greater than zero, grouping is done on
+ ranges of days, and the value specifies the number of days grouped
+ into one range (e.g. a value of 7 groups the members of a week
+ into a range).</li>
+
+ <li>The contents of the member <member>
+ DataPilotFieldGroupInfo::SourceField</member> will be ignored.</li>
+
+ <li>The contents of the member <member>
+ DataPilotFieldGroupInfo::Groups</member> will be ignored.</li>
+ </ul>
+
+ @returns
+ the new created field if there is one created. <NULL/> is returned,
+ if date grouping is performed inside this field (i.e. this field
+ was not grouped by dates before).
+
+ @throws com::sun::star::lang::IllegalArgumentException
+ if the passed struct does not contain valid settings as described,
+ or if this field is already grouped by member names or numeric
+ ranges.
+
+ @see DataPilotField
+ */
+ XDataPilotField createDateGroup([in] DataPilotFieldGroupInfo aInfo)
+ raises( com::sun::star::lang::IllegalArgumentException );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XDataPilotMemberResults.idl b/offapi/com/sun/star/sheet/XDataPilotMemberResults.idl
new file mode 100644
index 000000000000..b8f51d27cfcd
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XDataPilotMemberResults.idl
@@ -0,0 +1,70 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XDataPilotMemberResults_idl__
+#define __com_sun_star_sheet_XDataPilotMemberResults_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_MemberResult_idl__
+#include <com/sun/star/sheet/MemberResult.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides access to a sequence of results of a data pilot source level.
+
+ <p>These results are used to fill the data area for the level in a data
+ pilot table.</p>
+
+ @see com::sun::star::sheet::DataPilotSourceLevel
+ @see com::sun::star::sheet::DataPilotSource
+ @see com::sun::star::sheet::XDataPilotResults
+ */
+published interface XDataPilotMemberResults: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** returns the sequence of results for the regarding data pilot
+ source level.
+ */
+ sequence< com::sun::star::sheet::MemberResult > getResults();
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XDataPilotResults.idl b/offapi/com/sun/star/sheet/XDataPilotResults.idl
new file mode 100644
index 000000000000..38e4c2ec6886
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XDataPilotResults.idl
@@ -0,0 +1,70 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XDataPilotResults_idl__
+#define __com_sun_star_sheet_XDataPilotResults_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_DataResult_idl__
+#include <com/sun/star/sheet/DataResult.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides access to a table of results of a data pilot source.
+
+ <p>These results are used to fill the data area of a data pilot table.</p>
+
+ @see com::sun::star::sheet::DataPilotSource
+ @see com::sun::star::sheet::XDataPilotMemberResults
+ */
+published interface XDataPilotResults: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** returns the result array.
+
+ <p>The outer sequence contains the value rows. The inner sequences
+ contain the values for one row.</p>
+ */
+ sequence< sequence< DataResult > > getResults();
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XDataPilotTable.idl b/offapi/com/sun/star/sheet/XDataPilotTable.idl
new file mode 100644
index 000000000000..00aae3780bd9
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XDataPilotTable.idl
@@ -0,0 +1,73 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XDataPilotTable_idl__
+#define __com_sun_star_sheet_XDataPilotTable_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellRangeAddress_idl__
+#include <com/sun/star/table/CellRangeAddress.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides methods to control a data pilot table which has already
+ been created.
+
+ @see com::sun::star::sheet::DataPilotTable
+ */
+published interface XDataPilotTable: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** returns the address of the cell range that contains the data
+ pilot table.
+ */
+ com::sun::star::table::CellRangeAddress getOutputRange();
+
+ //-------------------------------------------------------------------------
+
+ /** recreates the data pilot table with current data from the source
+ cell range.
+ */
+ void refresh();
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XDataPilotTable2.idl b/offapi/com/sun/star/sheet/XDataPilotTable2.idl
new file mode 100644
index 000000000000..df7ec30041a8
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XDataPilotTable2.idl
@@ -0,0 +1,131 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XDataPilotTable2_idl__
+#define __com_sun_star_sheet_XDataPilotTable2_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellAddress_idl__
+#include <com/sun/star/table/CellAddress.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellRangeAddress_idl__
+#include <com/sun/star/table/CellRangeAddress.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XDataPilotTable_idl__
+#include <com/sun/star/sheet/XDataPilotTable.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_DataPilotOutputRangeType_idl__
+#include <com/sun/star/sheet/DataPilotOutputRangeType.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_DataPilotFieldFilter_idl__
+#include <com/sun/star/sheet/DataPilotFieldFilter.idl>
+#endif
+
+#include <com/sun/star/sheet/DataPilotTablePositionData.idl>
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+
+module com { module sun { module star { module sheet {
+
+/** additional methods to extend <type scope="com::sun::star::sheet">XDataPilotTable</type>.
+
+ <type scope="com::sun::star::sheet">XDataPilotTable2</type> extends the old
+ <type scope="com::sun::star::sheet">XDataPilotTable</type> interface with
+ additional methods.
+
+ @see com::sun::star::sheet::XDataPilotTable
+
+ @since OOo 3.0.0
+ */
+interface XDataPilotTable2: com::sun::star::sheet::XDataPilotTable
+{
+ /** When the address of a cell within the result area is given,
+ <method>XDataPilotTable2::getDrillDownData</method> returns its drill-down
+ output table that includes only those rows that contribute to the value of
+ that cell.
+
+ @param aAddr cell address within the result area of a DataPilot table.
+
+ @returns drill-down output as 2-dimensional sequence, including the header row.
+
+ @see <method>XDataPilotTable2::insertDrillDownSheet</method>
+ */
+ sequence< sequence< any > > getDrillDownData( [in] com::sun::star::table::CellAddress aAddr );
+
+ /** Given a cell address, it returns the information about that cell. The
+ type of information returned depends upon whether the cell is within
+ the result area or column/row header area.
+
+ @param aAddr address of the cell whose information is to be returned.
+
+ @returns <type>DataPilotTablePositionData</type> which contains the
+ position type and the information for that cell position.
+
+ @see com::sun::star::sheet::DataPilotTablePositionData
+ @see com::sun::star::sheet::DataPilotTableHeaderData
+ @see com::sun::star::sheet::DataPilotTableResultData
+ */
+ DataPilotTablePositionData getPositionData( [in] com::sun::star::table::CellAddress aAddr );
+
+ /** <p>This method inserts a new sheet to display the drill-down data for a
+ specified result cell. A drill-down data for a result cell consists
+ of a subset of rows from the original data source that contribute to
+ the value displayed in that cell.</p>
+
+ <p>The new sheet is always inserted to the immediate left of the current
+ sheet where the DataPilot table is. Note that when the drill-down data
+ is empty, no new sheet is inserted.</p>
+
+ @param aAddr address of a result cell
+
+ @returns <void/>
+ */
+ void insertDrillDownSheet( [in] com::sun::star::table::CellAddress aAddr );
+
+ /** <p>This method returns a different output range of a DataPilot table
+ per specified output range type.</p>
+
+ @returns <type scope="com::sun::star::table">CellRangeAddress</type> depicting
+ the range specified. See <type>DataPilotOutputRangeType</type> for a set
+ of possible output range types.
+
+ @see com::sun::star::sheet::DataPilotOutputRangeType
+ */
+ com::sun::star::table::CellRangeAddress getOutputRangeByType( [in] long nType )
+ raises (com::sun::star::lang::IllegalArgumentException);
+};
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XDataPilotTables.idl b/offapi/com/sun/star/sheet/XDataPilotTables.idl
new file mode 100644
index 000000000000..f4706cdb223c
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XDataPilotTables.idl
@@ -0,0 +1,106 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XDataPilotTables_idl__
+#define __com_sun_star_sheet_XDataPilotTables_idl__
+
+#ifndef __com_sun_star_container_XNameAccess_idl__
+#include <com/sun/star/container/XNameAccess.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XDataPilotDescriptor_idl__
+#include <com/sun/star/sheet/XDataPilotDescriptor.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellAddress_idl__
+#include <com/sun/star/table/CellAddress.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides access to the data pilot tables via name and inserting and
+ removing data pilot tables.
+
+ <p>This interface extends the interface
+ <type scope="com::sun::star::container">XNameAccess</type> which provides
+ access to existing data pilot tables in the collection.</p>
+
+ @see com::sun::star::sheet::DataPilotTables
+ @see com::sun::star::sheet::DataPilotTable
+ */
+published interface XDataPilotTables: com::sun::star::container::XNameAccess
+{
+ //-------------------------------------------------------------------------
+
+ /** creates a data pilot descriptor.
+
+ <p>This descriptor can be used with
+ <member>XDataPilotTables::addTable</member>.</p>
+
+ @see com::sun::star::sheet::DataPilotDescriptor
+ */
+ com::sun::star::sheet::XDataPilotDescriptor createDataPilotDescriptor();
+
+ //-------------------------------------------------------------------------
+
+ /** creates a new data pilot table and adds it to the collection.
+
+ @param aName
+ the name of the data pilot table used in the collection.
+
+ @param aAoutputAddress
+ the top left cell of the location of the data pilot table in
+ the spreadsheet document.
+
+ @param xDescriptor
+ the descriptor containing the settings of the data pilot table.
+
+ @see com::sun::star::sheet::DataPilotDescriptor
+ */
+ void insertNewByName(
+ [in] string aName,
+ [in] com::sun::star::table::CellAddress aOutputAddress,
+ [in] com::sun::star::sheet::XDataPilotDescriptor xDescriptor );
+
+ //-------------------------------------------------------------------------
+
+ /** deletes a data pilot table from the collection.
+ */
+ void removeByName( [in] string aName );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XDataPilotTablesSupplier.idl b/offapi/com/sun/star/sheet/XDataPilotTablesSupplier.idl
new file mode 100644
index 000000000000..1df209f6d669
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XDataPilotTablesSupplier.idl
@@ -0,0 +1,66 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XDataPilotTablesSupplier_idl__
+#define __com_sun_star_sheet_XDataPilotTablesSupplier_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XDataPilotTables_idl__
+#include <com/sun/star/sheet/XDataPilotTables.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** grants access to a collection of data pilot tables.
+
+ @see com::sun::star::sheet::Spreadsheet
+ */
+published interface XDataPilotTablesSupplier: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** Returns the collection of data pilot tables.
+
+ @see com::sun::star::sheet::DataPilotTables
+ */
+ com::sun::star::sheet::XDataPilotTables getDataPilotTables();
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XDatabaseRange.idl b/offapi/com/sun/star/sheet/XDatabaseRange.idl
new file mode 100644
index 000000000000..573578f0c355
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XDatabaseRange.idl
@@ -0,0 +1,127 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XDatabaseRange_idl__
+#define __com_sun_star_sheet_XDatabaseRange_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellRangeAddress_idl__
+#include <com/sun/star/table/CellRangeAddress.idl>
+#endif
+
+#ifndef __com_sun_star_beans_PropertyValue_idl__
+#include <com/sun/star/beans/PropertyValue.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XSheetFilterDescriptor_idl__
+#include <com/sun/star/sheet/XSheetFilterDescriptor.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XSubTotalDescriptor_idl__
+#include <com/sun/star/sheet/XSubTotalDescriptor.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides access to the settings and options of a database range.
+
+ @see com::sun::star::sheet::DatabaseRange
+ */
+published interface XDatabaseRange: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** returns the data area of the database range in the
+ spreadsheet document.
+ */
+ com::sun::star::table::CellRangeAddress getDataArea();
+
+ //-------------------------------------------------------------------------
+
+ /** sets the data area of the database range.
+ */
+ void setDataArea( [in] com::sun::star::table::CellRangeAddress aDataArea );
+
+ //-------------------------------------------------------------------------
+
+ /** returns the sort descriptor stored with the database range.
+
+ @see com::sun::star::sheet::SheetSortDescriptor2
+ */
+ sequence< com::sun::star::beans::PropertyValue > getSortDescriptor();
+
+ //-------------------------------------------------------------------------
+
+ /** returns the filter descriptor stored with the database range.
+
+ <p>If the filter descriptor is modified, the new filtering is
+ carried out when <member>XDatabaseRange::refresh()</member> is
+ called.</p>
+ */
+ com::sun::star::sheet::XSheetFilterDescriptor getFilterDescriptor();
+
+ //-------------------------------------------------------------------------
+
+ /** returns the subtotal descriptor stored with the database range.
+
+ <p>If the subtotal descriptor is modified, the new subtotals are
+ inserted when <member>XDatabaseRange::refresh()</member> is
+ called.</p>
+ */
+ com::sun::star::sheet::XSubTotalDescriptor getSubTotalDescriptor();
+
+ //-------------------------------------------------------------------------
+
+ /** returns the database import descriptor stored with this database
+ range.
+
+ @see com::sun::star::sheet::DatabaseImportDescriptor
+ */
+ sequence< com::sun::star::beans::PropertyValue > getImportDescriptor();
+
+ //-------------------------------------------------------------------------
+
+ /** executes the stored import, filter, sorting, and subtotals
+ descriptors again.
+ */
+ void refresh();
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XDatabaseRanges.idl b/offapi/com/sun/star/sheet/XDatabaseRanges.idl
new file mode 100644
index 000000000000..1794f3c7eb42
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XDatabaseRanges.idl
@@ -0,0 +1,72 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XDatabaseRanges_idl__
+#define __com_sun_star_sheet_XDatabaseRanges_idl__
+
+#ifndef __com_sun_star_container_XNameAccess_idl__
+#include <com/sun/star/container/XNameAccess.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellRangeAddress_idl__
+#include <com/sun/star/table/CellRangeAddress.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides functions to manage a collection of database ranges.
+
+ @see com::sun::star::sheet::DatabaseRanges
+ */
+published interface XDatabaseRanges: com::sun::star::container::XNameAccess
+{
+ //-------------------------------------------------------------------------
+
+ /** adds a new database range to the collection.
+ */
+ void addNewByName(
+ [in] string aName,
+ [in] com::sun::star::table::CellRangeAddress aRange );
+
+ //-------------------------------------------------------------------------
+
+ /** removes a database range from the collection.
+ */
+ void removeByName( [in] string aName );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XDimensionsSupplier.idl b/offapi/com/sun/star/sheet/XDimensionsSupplier.idl
new file mode 100644
index 000000000000..309fdee4c522
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XDimensionsSupplier.idl
@@ -0,0 +1,66 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XDimensionsSupplier_idl__
+#define __com_sun_star_sheet_XDimensionsSupplier_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_container_XNameAccess_idl__
+#include <com/sun/star/container/XNameAccess.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides access to the collection of dimensions of a data pilot source.
+
+ @see com::sun::star::sheet::DataPilotSource
+ */
+published interface XDimensionsSupplier: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** returns the collection of dimensions.
+
+ @see com::sun::star::sheet::DataPilotSourceDimensions
+ */
+ com::sun::star::container::XNameAccess getDimensions();
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XDocumentAuditing.idl b/offapi/com/sun/star/sheet/XDocumentAuditing.idl
new file mode 100644
index 000000000000..25a82ffb6970
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XDocumentAuditing.idl
@@ -0,0 +1,62 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XDocumentAuditing_idl__
+#define __com_sun_star_sheet_XDocumentAuditing_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides auditing functions of a document.
+ */
+published interface XDocumentAuditing: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** refreshes all existing auditing arrows on all sheets of the
+ document.
+
+ <p>Dependencies are marked for all the cells that were marked
+ before, but using current formulas.</p>
+ */
+ void refreshArrows();
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XDrillDownDataSupplier.idl b/offapi/com/sun/star/sheet/XDrillDownDataSupplier.idl
new file mode 100644
index 000000000000..ec5e6e2cb9c7
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XDrillDownDataSupplier.idl
@@ -0,0 +1,87 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XDrillDownDataSupplier_idl__
+#define __com_sun_star_sheet_XDrillDownDataSupplier_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_DataPilotFieldFilter_idl__
+#include <com/sun/star/sheet/DataPilotFieldFilter.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellAddress_idl__
+#include <com/sun/star/table/CellAddress.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** supplies a filtered subset of the original data source based on filtering criteria.
+
+ A service that acts as a DataPilot data source can optionally implement this
+ interface to allow drill-down of result data. The method this interface provides
+ is used internally when calling <method>XDataPilotTable2::getDrillDownData</method>
+ or <method>XDataPilotTable2::insertDrillDownSheet</method>. If the data source
+ service does not implement this interface, then the aformentioned two methods
+ will have no effect.
+
+ @see com::sun::star::sheet::DataPilotSource
+
+ @since OOo 3.0.0
+ */
+interface XDrillDownDataSupplier: com::sun::star::uno::XInterface
+{
+ /** This method returns filtered subset of the original source data based on
+ a given set of filtering criteria.
+
+ @param aFilters filtering criteria
+
+ @returns a filtered subset of the origintal source data as 2-dimensional
+ sequences of <type scope="com::sun::star::uno">Any</any>. The first row
+ must be the header row. Each <type scope="com::sun::star::uno">Any</type>
+ instance must contain either <type>double</type> value for a numeric cell, or
+ a <type>string</type> value for a string cell.
+
+ @see com::sun::star::sheet::DataPilotFieldFilter
+ @see com::sun::star::sheet::XDataPilotTable2
+ */
+ sequence< sequence< any > > getDrillDownData(
+ [in] sequence< com::sun::star::sheet::DataPilotFieldFilter > aFilters );
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XEnhancedMouseClickBroadcaster.idl b/offapi/com/sun/star/sheet/XEnhancedMouseClickBroadcaster.idl
new file mode 100644
index 000000000000..58461f90296a
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XEnhancedMouseClickBroadcaster.idl
@@ -0,0 +1,91 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XEnhancedMouseClickBroadcaster_idl__
+#define __com_sun_star_sheet_XEnhancedMouseClickBroadcaster_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_awt_XEnhancedMouseClickHandler_idl__
+#include <com/sun/star/awt/XEnhancedMouseClickHandler.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides methods to add and remove EnhancedMouseClickHandler
+
+ @since OOo 2.0.0
+
+ */
+published interface XEnhancedMouseClickBroadcaster: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** allows a component supporting the
+ <type>XEnhancedMouseClickHandler</type> interface to
+ register as listener. The component will be notified with a
+ <type>EnhancedMouseEvent</type> every time the mouse is clicked
+ in the spreadsheet</p>
+
+ @param aListener
+ the component that is to be added as listener
+
+ @see XEnhancedMouseClickHandler
+ @see EnhancedMouseEvent
+
+ The interfaces in the EnhancedMouseEvent can be XCell or XShape
+
+ @see XShape
+ @see XCell
+
+ */
+ void addEnhancedMouseClickHandler([in] com::sun::star::awt::XEnhancedMouseClickHandler aListener);
+
+ //-------------------------------------------------------------------------
+
+ /** removes a previously registered listener.
+
+ @param aListener
+ the component that is to be removed
+ */
+ void removeEnhancedMouseClickHandler( [in] com::sun::star::awt::XEnhancedMouseClickHandler aListener );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XExternalDocLink.idl b/offapi/com/sun/star/sheet/XExternalDocLink.idl
new file mode 100644
index 000000000000..1a9662dbeed7
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XExternalDocLink.idl
@@ -0,0 +1,98 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XExternalDocLink_idl__
+#define __com_sun_star_sheet_XExternalDocLink_idl__
+
+#include <com/sun/star/container/XEnumerationAccess.idl>
+#include <com/sun/star/container/XIndexAccess.idl>
+#include <com/sun/star/container/XNameAccess.idl>
+#include <com/sun/star/sheet/XExternalSheetCache.idl>
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** Primary interface for the <type scope="com::sun::star::sheet">ExternalDocLink</type> service.
+
+ @see com::sun::star::sheet::ExternalDocLink
+
+ @since OOo 3.1.0
+ */
+interface XExternalDocLink
+{
+ interface com::sun::star::container::XNameAccess;
+ interface com::sun::star::container::XIndexAccess;
+ interface com::sun::star::container::XEnumerationAccess;
+
+ //-------------------------------------------------------------------------
+
+ /** <p>This method adds a new sheet cache instance to the external document
+ link for a specified sheet name. If a sheet cache instance already
+ exists for the specified name, then the existing instance is returned.</p>
+
+ <p>Note that a sheet name lookup is performed in a case-insensitive
+ fashion.</p>
+
+ @param aSheetName sheet name
+
+ @param DynamicCache specify whether or not the cache can grow when
+ non-cached regions are queried. If <true/>, querying a non-cached
+ cell in this sheet cache will allow Calc to try to access the source
+ document to fetch the value in first access. If <false/>, the source
+ document will not be accessed, and the non-cached regions are treated
+ as empty cells.
+
+ @return com::sun::star::sheet::XExternalSheetCache sheet cache instance
+ */
+ com::sun::star::sheet::XExternalSheetCache addSheetCache( [in] string aSheetName, [in] boolean DynamicCache );
+
+ //-------------------------------------------------------------------------
+
+ /** Index corresponding to the external document link.
+
+ <p>This index value corresponds with the external document
+ represented by an instance of
+ <type scope="com::sun::star::sheet">ExternalDocLink</type>. This
+ value is stored within a formula token instance.</p>
+
+ <p>Each external document cache instance has a unique index value, and this
+ index value can be used to retrieve the corresponding external document cache
+ from the parent <type scope="com::sun::star::sheet">ExternalDocLinks</type> instance.</p>
+
+ @see com::sun::star::sheet::ExternalDocLinks
+ @see com::sun::star::sheet::FormulaToken
+ @see com::sun::star::sheet::ExternalReference
+ */
+ [attribute, readonly] long TokenIndex;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/sheet/XExternalDocLinks.idl b/offapi/com/sun/star/sheet/XExternalDocLinks.idl
new file mode 100644
index 000000000000..642b3c57eb14
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XExternalDocLinks.idl
@@ -0,0 +1,63 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XExternalDocLinks_idl__
+#define __com_sun_star_sheet_XExternalDocLinks_idl__
+
+#include <com/sun/star/sheet/XExternalDocLink.idl>
+#include <com/sun/star/container/XNameAccess.idl>
+#include <com/sun/star/container/XIndexAccess.idl>
+#include <com/sun/star/container/XEnumerationAccess.idl>
+
+module com { module sun { module star { module sheet {
+
+/** Primary interface for the <type scope="com::sun::star::sheet">ExternalDocLinks</type> service.
+
+ @see com::sun::star::sheet::ExternalDocLinks
+
+ @since OOo 3.1.0
+ */
+interface XExternalDocLinks
+{
+ interface com::sun::star::container::XNameAccess;
+ interface com::sun::star::container::XIndexAccess;
+ interface com::sun::star::container::XEnumerationAccess;
+
+ /** This method adds a new external document link by its URL, and returns
+ its instance. If a document instance already exists for the specified URL,
+ then that instance gets returned instead of creating a new one.
+
+ @param aDocName document URL (e.g. file:///path/to/document.ods)
+
+ @return com::sun::star::sheet::XExternalDocLink external document link instance
+ */
+ com::sun::star::sheet::XExternalDocLink addDocLink( [in] string aDocName );
+};
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/sheet/XExternalSheetCache.idl b/offapi/com/sun/star/sheet/XExternalSheetCache.idl
new file mode 100644
index 000000000000..23827d7a04e2
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XExternalSheetCache.idl
@@ -0,0 +1,99 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XExternalSheetCache_idl__
+#define __com_sun_star_sheet_XExternalSheetCache_idl__
+
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+
+module com { module sun { module star { module sheet {
+
+/** Primary interface for the <type scope="com::sun::star::sheet">ExternalSheetCache</type> service.
+
+ @see com::sun::star::sheet::ExternalSheetCache
+
+ @since OOo 3.1.0
+ */
+interface XExternalSheetCache
+{
+ /** It sets a cached value for a specified cell position. The value is expected
+ to be either of type <type>string</type> or of type <type>double</type>. No
+ other data types are supported.
+
+ @param nRow row position (0-based)
+ @param nColumn column position (0-based)
+ @param aValue cell value to be cached
+ */
+ void setCellValue( [in] long nColumn, [in] long nRow, [in] any aValue )
+ raises (com::sun::star::lang::IllegalArgumentException);
+
+ /** It retrieves a cached value from a specified cell position. The cached
+ value can be either <type>string</type> or <type>double</type>.
+
+ @return any cached cell value
+ */
+ any getCellValue( [in] long nColumn, [in] long nRow )
+ raises (com::sun::star::lang::IllegalArgumentException);
+
+ /** It returns a list of all row numbers where a cached cell or cells exist.
+ The row numbers are sorted in ascending order.
+
+ @return sequence<long> list of all row numbers with cached cell(s)
+ */
+ sequence< long > getAllRows();
+
+ /** Given a row number, this method returns a list of all columns numbers
+ that store cached cell values in that row. The column numbers are
+ sorted in ascending order.
+
+ @return sequence<long> list of all columns numbers with cached cell values
+ */
+ sequence< long > getAllColumns( [in] long nRow )
+ raises (com::sun::star::lang::IllegalArgumentException);
+
+ //-------------------------------------------------------------------------
+
+ /** Index corresponding to this instance of an external sheet cache for
+ usage in formula tokens.
+
+ <p>This index to the external sheet cache is expected in the
+ <member>SingleReference::Sheet</member> member if it is part of an
+ external reference token.
+
+ <p>Each external sheet cache has a unique index value inside the
+ <type>ExternalDocLink</type> instance.</p>
+
+ @see FormulaToken
+ @see ExternalReference
+ */
+ [attribute, readonly] long TokenIndex;
+
+};
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/sheet/XExternalSheetName.idl b/offapi/com/sun/star/sheet/XExternalSheetName.idl
new file mode 100644
index 000000000000..dd0cc73c67ec
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XExternalSheetName.idl
@@ -0,0 +1,82 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XExternalSheetName_idl__
+#define __com_sun_star_sheet_XExternalSheetName_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_container_ElementExistException_idl__
+#include <com/sun/star/container/ElementExistException.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides a method to set an external name at the sheet.
+
+ <p>An external reference in a cell formula is implemented using a
+ hidden sheet which is linked to the sheet in the external document.
+ The name of the hidden sheet is composed of the URL of the external
+ document and the external sheet name.</p>
+
+ @since OOo 3.0
+ */
+interface XExternalSheetName: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** sets an external name at the sheet.
+
+ <p>This method allows to compose the sheet name from the URL of the
+ external document and the name of the external sheet.</p>
+
+ @param aUrl
+ the URL of the external document.
+
+ @param aSheetName
+ the name of the sheet in the external document.
+
+ @throws ::com::sun::star::container::ElementExistException
+ a sheet with that external name already exists in this document
+ */
+ void setExternalName( [in] string aUrl, [in] string aSheetName )
+ raises (com::sun::star::container::ElementExistException);
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XFillAcrossSheet.idl b/offapi/com/sun/star/sheet/XFillAcrossSheet.idl
new file mode 100644
index 000000000000..b00ccb8158c6
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XFillAcrossSheet.idl
@@ -0,0 +1,60 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XFillAcrossSheet_idl__
+#define __com_sun_star_sheet_XFillAcrossSheet_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+
+//=============================================================================
+
+ module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** @deprecated
+ */
+published interface XFillAcrossSheet: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** copies data between ranges onto different sheets in
+ the document.
+ */
+ void fillAcrossSheets( [in] long nContentFlags );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XFilterFormulaParser.idl b/offapi/com/sun/star/sheet/XFilterFormulaParser.idl
new file mode 100644
index 000000000000..e78c01d75876
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XFilterFormulaParser.idl
@@ -0,0 +1,59 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XFilterFormulaParser_idl__
+#define __com_sun_star_sheet_XFilterFormulaParser_idl__
+
+#include <com/sun/star/sheet/XFormulaParser.idl>
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** Extends the interface <type>XFormulaParser</type> by an attribute that
+ specifies the namespace URL of the supported formula language.
+ */
+interface XFilterFormulaParser : XFormulaParser
+{
+ //-------------------------------------------------------------------------
+
+ /** Specifies the namespace URL of the formula language supported by this
+ implementation.
+ */
+ [attribute, readonly] string SupportedNamespace;
+
+ //-------------------------------------------------------------------------
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XFormulaOpCodeMapper.idl b/offapi/com/sun/star/sheet/XFormulaOpCodeMapper.idl
new file mode 100644
index 000000000000..e0ca0655d3e3
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XFormulaOpCodeMapper.idl
@@ -0,0 +1,155 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XFormulaOpCodeMapper_idl__
+#define __com_sun_star_sheet_XFormulaOpCodeMapper_idl__
+
+#ifndef __com_sun_star_sheet_FormulaOpCodeMapEntry_idl__
+#include <com/sun/star/sheet/FormulaOpCodeMapEntry.idl>
+#endif
+
+#ifndef __com_sun_star_lang_IllegalArgumentException_idl__
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** gives access to spreadsheet compiler token interns.
+ */
+interface XFormulaOpCodeMapper
+{
+ //-------------------------------------------------------------------------
+
+ /** OpCode value used for external Add-In functions.
+
+ <p>Needed to be able to identify which of the function names map to an
+ Add-In implementation where this OpCode is used in the returned
+ mapping and the programmatical name is available as additional
+ information.</p>
+ */
+ [attribute, readonly] long OpCodeExternal;
+
+ //-------------------------------------------------------------------------
+
+ /** OpCode value used for unknown functions.
+
+ <p>Used to identify which of the function names queried with
+ <member>getMappings</member> are unknown to the implementation.</p>
+ */
+ [attribute, readonly] long OpCodeUnknown;
+
+ //-------------------------------------------------------------------------
+
+ /** returns a sequence of tokens matching the input sequence of
+ strings in order.
+
+ @param Names
+ Sequence of names to be mapped. These can be function names,
+ operators, separators and other symbols the formula compiler
+ knows.
+
+ @param Language
+ Formula language to be used, one of <type>FormulaLanguage</type>
+ constants. If a constant unknown to the implementation is passed,
+ <type scope="com::sun::star::lang">IllegalArgumentException</type>
+ is thrown.
+
+ @returns
+ a sequence of <type>FormulaToken</type> matching the input
+ sequence in order.
+
+ <p>Each string element in parameter Names according to the formula
+ language in parameter Language is mapped to a <type>FormulaToken
+ </type> containing the internal OpCode used by the spreadsheet
+ application in <member>FormulaToken::OpCode</member> and by
+ contract maybe additional information in <member>
+ FormulaToken::Data</member>.</p>
+
+ <p>The order of the FormulaToken sequence returned matches the
+ input order of the string sequence.</p>
+
+ <p>An unknown Name string gets the OpCode value of <member>
+ OpCodeUnknown</member> assigned.</p>
+
+ <p>Additional information in <member>FormulaToken::Data</member>
+ is returned for:
+ <ul>
+ <li>Add-in names: the programmatical name. The OpCode value used
+ for add-ins can be queried with the <member>OpCodeExternal</member>
+ getter method.</li>
+ </ul></p>
+ */
+ sequence< FormulaToken > getMappings(
+ [in] sequence< string > Names,
+ [in] long Language )
+ raises( com::sun::star::lang::IllegalArgumentException );
+
+ //-------------------------------------------------------------------------
+
+ /** returns a sequence of map entries for all available elements of
+ a given formula language.
+
+ @param Language
+ Formula language to be used, one of <type>FormulaLanguage</type>
+ constants. If a constant unknown to the implementation is passed,
+ <type scope="com::sun::star::lang">IllegalArgumentException</type>
+ is thrown.
+
+ @param Groups
+ Group of mappings to be returned, a bit mask of <type>
+ FormulaMapGroup</type> constants.
+
+ @returns
+ Sequence of <type>FormulaOpCodeMapEntry</type>.
+
+ <p>Each element of the formula language in parameter Language is
+ mapped to a <type>FormulaToken</type> containing the internal
+ OpCode used by the spreadsheet application in <member>
+ FormulaToken::OpCode</member> and by contract maybe additional
+ information in <member>FormulaToken::Data</member>. See <member>
+ getMappings</member> for more details.</p>
+ */
+ sequence< FormulaOpCodeMapEntry > getAvailableMappings(
+ [in] long Language, [in] long Groups )
+ raises( com::sun::star::lang::IllegalArgumentException );
+
+};
+
+//=============================================================================
+
+service FormulaOpCodeMapper : XFormulaOpCodeMapper;
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XFormulaParser.idl b/offapi/com/sun/star/sheet/XFormulaParser.idl
new file mode 100644
index 000000000000..73b317e7f848
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XFormulaParser.idl
@@ -0,0 +1,68 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XFormulaParser_idl__
+#define __com_sun_star_sheet_XFormulaParser_idl__
+
+#include <com/sun/star/uno/XInterface.idl>
+#include <com/sun/star/sheet/FormulaToken.idl>
+#include <com/sun/star/table/CellAddress.idl>
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** converts between text and token representations of formulas.
+ */
+interface XFormulaParser
+{
+ //-------------------------------------------------------------------------
+
+ /** parses a formula into a sequence of tokens.
+ */
+ sequence< FormulaToken > parseFormula(
+ [in] string aFormula,
+ [in] ::com::sun::star::table::CellAddress aReferencePos );
+
+ //-------------------------------------------------------------------------
+
+ /** converts a formula into a string.
+ */
+ string printFormula(
+ [in] sequence< FormulaToken > aTokens,
+ [in] ::com::sun::star::table::CellAddress aReferencePos );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XFormulaQuery.idl b/offapi/com/sun/star/sheet/XFormulaQuery.idl
new file mode 100644
index 000000000000..9188332dd184
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XFormulaQuery.idl
@@ -0,0 +1,100 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XFormulaQuery_idl__
+#define __com_sun_star_sheet_XFormulaQuery_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XSheetCellRanges_idl__
+#include <com/sun/star/sheet/XSheetCellRanges.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides methods to query cells for dependencies
+ in formulas.
+
+ <p>All methods return a collection of cell ranges.</p>
+
+ @see com::sun::star::sheet::SheetRangesQuery
+ @see com::sun::star::sheet::SheetCellRanges
+ */
+published interface XFormulaQuery: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** queries all dependent formula cells.
+
+ <p>Dependent cells are cells containing formulas with references to
+ the original cell.</p>
+
+ @param bRecursive
+ <FALSE/> = queries cells dependent from the original range(s),
+ <TRUE/> = repeates query with all found cells
+ (finds dependents of dependents, and so on).
+
+ @return
+ all dependent cells of any formula cell of the current
+ cell range(s).
+ */
+ com::sun::star::sheet::XSheetCellRanges queryDependents(
+ [in] boolean bRecursive );
+
+ //-------------------------------------------------------------------------
+
+ /** queries all precedent cells.
+
+ <p>Precedent cells are cells which are referenced from a formula
+ cell.</p>
+
+ @param bRecursive
+ <FALSE/> = queries precedent cells of the original range(s),
+ <TRUE/> = repeates query with all found cells
+ (finds precedents of precedents, and so on).
+
+ @return
+ all precedent cells of any formula cell of the current cell
+ range(s).
+ */
+ com::sun::star::sheet::XSheetCellRanges queryPrecedents(
+ [in] boolean bRecursive );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XFormulaTokens.idl b/offapi/com/sun/star/sheet/XFormulaTokens.idl
new file mode 100644
index 000000000000..5edfe0b9840d
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XFormulaTokens.idl
@@ -0,0 +1,68 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XFormulaTokens_idl__
+#define __com_sun_star_sheet_XFormulaTokens_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_FormulaToken_idl__
+#include <com/sun/star/sheet/FormulaToken.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** gives access to a formula as token sequence.
+ */
+interface XFormulaTokens
+{
+ //-------------------------------------------------------------------------
+
+ /** returns the formula as sequence of tokens.
+ */
+ sequence< FormulaToken > getTokens();
+
+ //-------------------------------------------------------------------------
+
+ /** sets the formula as sequence of tokens.
+ */
+ void setTokens( [in] sequence< FormulaToken > aTokens );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XFunctionAccess.idl b/offapi/com/sun/star/sheet/XFunctionAccess.idl
new file mode 100644
index 000000000000..c12401421b35
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XFunctionAccess.idl
@@ -0,0 +1,125 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XFunctionAccess_idl__
+#define __com_sun_star_sheet_XFunctionAccess_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_container_NoSuchElementException_idl__
+#include <com/sun/star/container/NoSuchElementException.idl>
+#endif
+
+#ifndef __com_sun_star_lang_IllegalArgumentException_idl__
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** allows generic access to all spreadsheet functions.
+
+ @see com::sun::star::sheet::FunctionAccess
+ */
+published interface XFunctionAccess: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** calls a function and returns the result of the call.
+
+ @param aName
+ the (programmatic) name of the function.
+
+ @param aArguments
+ the arguments for the function call.
+ <p>Each element must be of one of the following types:</p>
+
+ <dl>
+ <dt><atom>long</atom> or <atom>double</atom></dt>
+ <dd>for a numeric value.</dd>
+
+ <dt><atom>string</atom></dt>
+ <dd>for a textual value.</dd>
+
+ <dt><atom>long[][]</atom> or <atom>double[][]</atom></dt>
+ <dd>for an array of numeric values.</dd>
+
+ <dt><atom>string[][]</atom></dt>
+ <dd>for an array of textual values.</dd>
+
+ <dt><atom>any[][]</atom></dt>
+ <dd>for a mixed array, where each element must be of <void/>,
+ <atom>long</atom>, <atom>double</atom> or <atom>string</atom>
+ type.</dd>
+
+ <dt><type scope="com::sun::star::table">XCellRange</type></dt>
+ <dd>for a <type>SheetCellRange</type> object that contains the
+ data.</dd>
+ </dl>
+
+ @returns
+ the result of the function call.
+
+ <p>Possible types for the result are:</p>
+
+ <dl>
+ <dt><void/></dt>
+ <dd>if no result is available.</dd>
+
+ <dt><atom>double</atom></dt>
+ <dd>for a numeric result.</dd>
+
+ <dt><atom>string</atom></dt>
+ <dd>for a textual result.</dd>
+
+ <dt><atom>any[][]</atom></dt>
+ <dd>for an array result, containing <atom>double</atom> and
+ <atom>string</atom> values.</dd>
+ </dl>
+
+ @throws <type scope="com::sun::star::container">NoSuchElementException</type>
+ if the named function does not exist.
+
+ @throws <type scope="com::sun::star::lang">IllegalArgumentException</type>
+ if the function can not be called with these arguments.
+ */
+ any callFunction( [in] string aName, [in] sequence< any > aArguments )
+ raises( com::sun::star::container::NoSuchElementException,
+ com::sun::star::lang::IllegalArgumentException );
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XFunctionDescriptions.idl b/offapi/com/sun/star/sheet/XFunctionDescriptions.idl
new file mode 100644
index 000000000000..6346de137820
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XFunctionDescriptions.idl
@@ -0,0 +1,83 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XFunctionDescriptions_idl__
+#define __com_sun_star_sheet_XFunctionDescriptions_idl__
+
+#ifndef __com_sun_star_container_XIndexAccess_idl__
+#include <com/sun/star/container/XIndexAccess.idl>
+#endif
+
+#ifndef __com_sun_star_beans_PropertyValue_idl__
+#include <com/sun/star/beans/PropertyValue.idl>
+#endif
+
+#ifndef __com_sun_star_lang_IllegalArgumentException_idl__
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides access to the property sequence of a function description
+ via function index or identifier.
+
+ <p>The container access methods return a sequence of
+ <type scope="com::sun::star::beans">PropertyValue</type> structs.
+ The properties contained in the sequence are collected in the service
+ <type>FunctionDescription</type>.</p>
+
+ @see com::sun::star::sheet::FunctionDescriptions
+ */
+published interface XFunctionDescriptions: com::sun::star::container::XIndexAccess
+{
+ //-------------------------------------------------------------------------
+
+ /** finds a function description by the identifier of the function.
+
+ @param nId
+ is the identifier of the function description (the same that
+ is used in the service <type>RecentFunctions</type>.</p>
+
+ @returns
+ the sequence of property values (described in
+ <type>FunctionDescription</type>).
+ */
+ sequence< com::sun::star::beans::PropertyValue > getById( [in] long nId )
+ raises( com::sun::star::lang::IllegalArgumentException );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XGoalSeek.idl b/offapi/com/sun/star/sheet/XGoalSeek.idl
new file mode 100644
index 000000000000..a6e627574f88
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XGoalSeek.idl
@@ -0,0 +1,83 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XGoalSeek_idl__
+#define __com_sun_star_sheet_XGoalSeek_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_GoalResult_idl__
+#include <com/sun/star/sheet/GoalResult.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellAddress_idl__
+#include <com/sun/star/table/CellAddress.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides seeking a goal value for a cell.
+ */
+published interface XGoalSeek: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** calculates a value which gives a specified result in a formula.
+
+ @param aFormulaPosition
+ is the address of the formula cell used for the calculation.
+
+ @param aVariablePosition
+ is the address of the cell that is used in the formula as
+ variable.
+
+ @param aGoalValue
+ is the value which should be reached during the goal seek.
+
+ @returns
+ the result of the goal seek, including the value that results
+ in the specified goal, using the specified formula.
+ */
+ com::sun::star::sheet::GoalResult seekGoal(
+ [in] com::sun::star::table::CellAddress aFormulaPosition,
+ [in] com::sun::star::table::CellAddress aVariablePosition,
+ [in] string aGoalValue );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XHeaderFooterContent.idl b/offapi/com/sun/star/sheet/XHeaderFooterContent.idl
new file mode 100644
index 000000000000..6b491fadabf0
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XHeaderFooterContent.idl
@@ -0,0 +1,86 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XHeaderFooterContent_idl__
+#define __com_sun_star_sheet_XHeaderFooterContent_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_text_XText_idl__
+#include <com/sun/star/text/XText.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides access to the text contents of a header or footer on a page.
+
+ @see com::sun::star::sheet::HeaderFooterContent
+ @see com::sun::star::sheet::TablePageStyle
+ */
+published interface XHeaderFooterContent: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** returns the text which is printed in the left part of the
+ header or footer.
+
+ @see com::sun::star::text::Text
+ */
+ com::sun::star::text::XText getLeftText();
+
+ //-------------------------------------------------------------------------
+
+ /** returns the text which is printed in the center part of the
+ header or footer.
+
+ @see com::sun::star::text::Text
+ */
+ com::sun::star::text::XText getCenterText();
+
+ //-------------------------------------------------------------------------
+
+ /** returns the text which is printed in the right part of the
+ header or footer.
+
+ @see com::sun::star::text::Text
+ */
+ com::sun::star::text::XText getRightText();
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XHierarchiesSupplier.idl b/offapi/com/sun/star/sheet/XHierarchiesSupplier.idl
new file mode 100644
index 000000000000..8b96a2888a04
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XHierarchiesSupplier.idl
@@ -0,0 +1,68 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XHierarchiesSupplier_idl__
+#define __com_sun_star_sheet_XHierarchiesSupplier_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_container_XNameAccess_idl__
+#include <com/sun/star/container/XNameAccess.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides access to the collection of hierarchies of a data pilot source
+ dimension.
+
+ @see com::sun::star::sheet::DataPilotSourceDimension
+ @see com::sun::star::sheet::DataPilotSource
+ */
+published interface XHierarchiesSupplier: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** returns the collection of hierarchies.
+
+ @see com::sun::star::sheet::DataPilotSourceHierarchies
+ */
+ com::sun::star::container::XNameAccess getHierarchies();
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XLabelRange.idl b/offapi/com/sun/star/sheet/XLabelRange.idl
new file mode 100644
index 000000000000..0fc837e8d244
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XLabelRange.idl
@@ -0,0 +1,87 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XLabelRange_idl__
+#define __com_sun_star_sheet_XLabelRange_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellRangeAddress_idl__
+#include <com/sun/star/table/CellRangeAddress.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides access to the settings of a label range in a spreadsheet
+ document.
+
+ <p>These can be column or row labels, depending on where they are used.</p>
+
+ @see com::sun::star::sheet::LabelRange
+ */
+published interface XLabelRange: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** returns the cell range address that contains the labels.
+ */
+ com::sun::star::table::CellRangeAddress getLabelArea();
+
+ //-------------------------------------------------------------------------
+
+ /** sets the cell range address that contains the labels.
+ */
+ void setLabelArea(
+ [in] com::sun::star::table::CellRangeAddress aLabelArea );
+
+ //-------------------------------------------------------------------------
+
+ /** returns the cell range address for which the labels are valid.
+ */
+ com::sun::star::table::CellRangeAddress getDataArea();
+
+ //-------------------------------------------------------------------------
+
+ /** sets the cell range address for which the labels are valid.
+ */
+ void setDataArea(
+ [in] com::sun::star::table::CellRangeAddress aDataArea );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XLabelRanges.idl b/offapi/com/sun/star/sheet/XLabelRanges.idl
new file mode 100644
index 000000000000..b1cf0aaeac09
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XLabelRanges.idl
@@ -0,0 +1,80 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XLabelRanges_idl__
+#define __com_sun_star_sheet_XLabelRanges_idl__
+
+#ifndef __com_sun_star_container_XIndexAccess_idl__
+#include <com/sun/star/container/XIndexAccess.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellRangeAddress_idl__
+#include <com/sun/star/table/CellRangeAddress.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides methods to access the members of a label range collection
+ and to insert and remove them.
+
+ @see com::sun::star::sheet::LabelRanges
+ @see com::sun::star::sheet::LabelRange
+ */
+published interface XLabelRanges: com::sun::star::container::XIndexAccess
+{
+ //-------------------------------------------------------------------------
+
+ /** adds a new label range to the collection.
+
+ @param aLabelArea
+ the cell range containing the titles of the label range.
+
+ @param aDataArea
+ the cell range containing the values of the label range.
+ */
+ void addNew(
+ [in] com::sun::star::table::CellRangeAddress aLabelArea,
+ [in] com::sun::star::table::CellRangeAddress aDataArea );
+
+ //-------------------------------------------------------------------------
+
+ /** removes a label range from the collection.
+ */
+ void removeByIndex( [in] long nIndex );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XLevelsSupplier.idl b/offapi/com/sun/star/sheet/XLevelsSupplier.idl
new file mode 100644
index 000000000000..ec867a5ecf94
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XLevelsSupplier.idl
@@ -0,0 +1,68 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XLevelsSupplier_idl__
+#define __com_sun_star_sheet_XLevelsSupplier_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_container_XNameAccess_idl__
+#include <com/sun/star/container/XNameAccess.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides access to the collection of levels of a data pilot source
+ hierarchy.
+
+ @see com::sun::star::sheet::DataPilotSourceHierarchy
+ @see com::sun::star::sheet::DataPilotSource
+ */
+published interface XLevelsSupplier: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** returns the collection of levels.
+
+ @see com::sun::star::sheet::DataPilotSourceLevels
+ */
+ com::sun::star::container::XNameAccess getLevels();
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XMembersSupplier.idl b/offapi/com/sun/star/sheet/XMembersSupplier.idl
new file mode 100644
index 000000000000..44c9669bc247
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XMembersSupplier.idl
@@ -0,0 +1,68 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XMembersSupplier_idl__
+#define __com_sun_star_sheet_XMembersSupplier_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_container_XNameAccess_idl__
+#include <com/sun/star/container/XNameAccess.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides access to the collection of members of a data pilot source
+ level.
+
+ @see com::sun::star::sheet::DataPilotSourceLevel
+ @see com::sun::star::sheet::DataPilotSource
+ */
+published interface XMembersSupplier: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** returns the collection of members.
+
+ @see com::sun::star::sheet::DataPilotSourceMembers
+ */
+ com::sun::star::container::XNameAccess getMembers();
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XMultiFormulaTokens.idl b/offapi/com/sun/star/sheet/XMultiFormulaTokens.idl
new file mode 100644
index 000000000000..eb6ade5c3883
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XMultiFormulaTokens.idl
@@ -0,0 +1,99 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XMultiFormulaTokens_idl__
+#define __com_sun_star_sheet_XMultiFormulaTokens_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_FormulaToken_idl__
+#include <com/sun/star/sheet/FormulaToken.idl>
+#endif
+
+#ifndef __com_sun_star_lang_IndexOutOfBoundsException_idl__
+#include <com/sun/star/lang/IndexOutOfBoundsException.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** gives access to multiple sets of formula tokens.
+
+ A service implementing this interface can internally set an arbitrary
+ number of formula token sequences. The number of allowed formula token
+ sequences must be returned by the
+ <member scope="com::sun::star::sheet">XMultiFormulaTokens::getCount</member>
+ method. When the client code tries to access formula tokens at index that
+ is outside the allowed index range, the implementation shall return an
+ <type scope="com::sun::star::lang">IndexOutOfBoundsException</member>.
+ */
+interface XMultiFormulaTokens
+{
+ //-------------------------------------------------------------------------
+
+ /** returns the formula at specified index as sequence of tokens.
+
+ @throws IndexOutOfBoundsException
+ If the given index lies not in the valid range then an
+ <type scope="com::sun::star::lang">IndexOutOfBoundsException</type>
+ exception is thrown.
+ */
+ sequence< FormulaToken > getTokens( [in] long nIndex )
+ raises (::com::sun::star::lang::IndexOutOfBoundsException);
+
+ //-------------------------------------------------------------------------
+
+ /** sets the formula at specified index as sequence of tokens.
+
+ @throws IndexOutOfBoundsException
+ If the given index lies not in the valid range then an
+ <type scope="com::sun::star::lang">IndexOutOfBoundsException</type>
+ exception is thrown.
+ */
+ void setTokens( [in] long nIndex, [in] sequence< FormulaToken > aTokens )
+ raises (::com::sun::star::lang::IndexOutOfBoundsException);
+
+ //-------------------------------------------------------------------------
+
+ /** returns the number of formulas allowed in this formula token set.
+
+ @return the number of formulas the implementation supports.
+ */
+ long getCount();
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XMultipleOperation.idl b/offapi/com/sun/star/sheet/XMultipleOperation.idl
new file mode 100644
index 000000000000..c0ba09d28674
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XMultipleOperation.idl
@@ -0,0 +1,102 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XMultipleOperation_idl__
+#define __com_sun_star_sheet_XMultipleOperation_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellRangeAddress_idl__
+#include <com/sun/star/table/CellRangeAddress.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_TableOperationMode_idl__
+#include <com/sun/star/sheet/TableOperationMode.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellAddress_idl__
+#include <com/sun/star/table/CellAddress.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides a method to apply a Multiple Operations Table to the
+ cell range.
+ */
+published interface XMultipleOperation: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** creates a table of formulas (a "Multiple Operations Table").
+
+ <p>The specified formulas are repeated, with references to the
+ specified cells replaced by references to values in the first
+ column and/or row of the range.</p>
+
+ @param aFormulaRange
+ the range that contains formula cells (modes
+ <const>TableOperationMode::ROW</const> or
+ <const>TableOperationMode::COLUMN</const>) or a single formula
+ cell (mode <const>TableOperationMode::BOTH</const>).
+
+ @param nMode
+ specifies the calculation mode to fill the cells.
+
+ @param aColumnCell
+ contains the address of the cell that is referenced by
+ formulas in a row (mode <const>TableOperationMode::ROW</const>)
+ or by the formula cell used for two value series (mode
+ <const>TableOperationMode::BOTH</const>). This parameter is not
+ used if mode is <const>TableOperationMode::COLUMN</const>.
+
+ @param aRowCell
+ contains the address of the cell that is referenced by
+ formulas in a column (mode <const>TableOperationMode::COLUMN</const>)
+ or by the formula cell used for two value series (mode
+ <const>TableOperationMode::BOTH</const>). This parameter is not
+ used if mode is <const>TableOperationMode::ROW</const>.
+ */
+ void setTableOperation(
+ [in] com::sun::star::table::CellRangeAddress aFormulaRange,
+ [in] com::sun::star::sheet::TableOperationMode nMode,
+ [in] com::sun::star::table::CellAddress aColumnCell,
+ [in] com::sun::star::table::CellAddress aRowCell );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XNamedRange.idl b/offapi/com/sun/star/sheet/XNamedRange.idl
new file mode 100644
index 000000000000..678594c41d15
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XNamedRange.idl
@@ -0,0 +1,111 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XNamedRange_idl__
+#define __com_sun_star_sheet_XNamedRange_idl__
+
+#ifndef __com_sun_star_container_XNamed_idl__
+#include <com/sun/star/container/XNamed.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellAddress_idl__
+#include <com/sun/star/table/CellAddress.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides access to the settings of a named range in a spreadsheet
+ document.
+
+ @see com::sun::star::sheet::NamedRange
+ */
+published interface XNamedRange: com::sun::star::container::XNamed
+{
+ //-------------------------------------------------------------------------
+
+ /** returns the content of the named range.
+
+ <p>The content can be a reference to a cell or cell range
+ or any formula expression.</p>
+ */
+ string getContent();
+
+ //-------------------------------------------------------------------------
+
+ /** sets the content of the named range.
+
+ <p>The content can be a reference to a cell or cell range
+ or any formula expression.</p>
+ */
+ void setContent( [in] string aContent );
+
+ //-------------------------------------------------------------------------
+
+ /** returns the position in the document which is used as a
+ base for relative references in the content.
+ */
+ com::sun::star::table::CellAddress getReferencePosition();
+
+ //-------------------------------------------------------------------------
+
+ /** sets the position in the document which is used as a
+ base for relative references in the content.
+ */
+ void setReferencePosition(
+ [in] com::sun::star::table::CellAddress aReferencePosition );
+
+ //-------------------------------------------------------------------------
+
+ /** returns the type of the named range.
+
+ <p>This is a combination of flags as defined in
+ <type>NamedRangeFlag</type>.</p>
+ */
+ long getType();
+
+ //-------------------------------------------------------------------------
+
+ /** sets the type of the named range.
+
+ @param nType
+ a combination of flags that specify the type of a named range,
+ as defined in <type>NamedRangeFlag</type>.
+ */
+ void setType( [in] long nType );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XNamedRanges.idl b/offapi/com/sun/star/sheet/XNamedRanges.idl
new file mode 100644
index 000000000000..36fb40485ce6
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XNamedRanges.idl
@@ -0,0 +1,142 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XNamedRanges_idl__
+#define __com_sun_star_sheet_XNamedRanges_idl__
+
+#ifndef __com_sun_star_container_XNameAccess_idl__
+#include <com/sun/star/container/XNameAccess.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellAddress_idl__
+#include <com/sun/star/table/CellAddress.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellRangeAddress_idl__
+#include <com/sun/star/table/CellRangeAddress.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_Border_idl__
+#include <com/sun/star/sheet/Border.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides access to the members in a collection of named ranges and to
+ insert and remove them.
+
+ @see com::sun::star::sheet::NamedRanges
+ @see com::sun::star::sheet::NamedRange
+ */
+published interface XNamedRanges: com::sun::star::container::XNameAccess
+{
+ //-------------------------------------------------------------------------
+
+ /** adds a new named range to the collection.
+
+ @param aName
+ the new name of the named range.
+
+ @param aContent
+ the formula expression.
+
+ <p>A cell range address is one possible content of a named
+ range.</p>
+
+ @param aPosition
+ specifies the base address for relative cell references.
+
+ @param nType
+ a combination of flags that specify the type of a named range,
+ as defined in <type>NamedRangeFlag</type>.
+
+ <p>This parameter will be zero for any common named range.</p>
+ */
+ void addNewByName(
+ [in] string aName,
+ [in] string aContent,
+ [in] com::sun::star::table::CellAddress aPosition,
+ [in] long nType );
+
+ //-------------------------------------------------------------------------
+
+ /** creates named cell ranges from titles in a cell range.
+
+ <p>The names for the named ranges are taken from title cells in the
+ top or bottom row, or from the cells of the left or right column
+ of the range (depending on the parameter <const>aBorder</const>.
+ The named ranges refer to single columns or rows in the inner
+ part of the original range, excluding the labels.</p>
+
+ <p>Example: The source range is A1:B3. The named ranges shall be
+ created using row titles. This requires <member>Border::TOP</member>
+ for the second parameter. The method creates two named ranges. The
+ name of the first is equal to the content of cell A1 and contains the
+ range $Sheet.$A$2:$A$3 (excluding the title cell). The latter named
+ range is named using cell B1 and contains the cell range address
+ $Sheet.$B$2:$B$3.</p>
+
+ @param aSource
+ the cell range used to create the named ranges.
+
+ @param aBorder
+ specifies the location of the title cells.
+ */
+ void addNewFromTitles(
+ [in] com::sun::star::table::CellRangeAddress aSource,
+ [in] com::sun::star::sheet::Border aBorder );
+
+ //-------------------------------------------------------------------------
+
+ /** removes a named range from the collection.
+ */
+ void removeByName( [in] string aName );
+
+ //-------------------------------------------------------------------------
+
+ /** writes a list of all named ranges into the document.
+
+ <p>The first column of the list contains the names. The second
+ column contains the contents of the named ranges.</p>
+
+ @param aOutputPosition
+ specifies the top left cell of the output range.
+ */
+ void outputList( [in] com::sun::star::table::CellAddress aOutputPosition );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XPrintAreas.idl b/offapi/com/sun/star/sheet/XPrintAreas.idl
new file mode 100644
index 000000000000..78a0bf352512
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XPrintAreas.idl
@@ -0,0 +1,165 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XPrintAreas_idl__
+#define __com_sun_star_sheet_XPrintAreas_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellRangeAddress_idl__
+#include <com/sun/star/table/CellRangeAddress.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a sheet which has print areas.
+ */
+published interface XPrintAreas: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** returns a sequence containing all print areas of the sheet.
+ */
+ sequence< com::sun::star::table::CellRangeAddress > getPrintAreas();
+
+ //-------------------------------------------------------------------------
+
+ /** sets the print areas of the sheet.
+
+ <p>If none of the sheets in a document have print areas,
+ the whole sheets are printed. If any sheet contains print areas,
+ other sheets without print areas are not printed.</p>
+
+ @param aPrintAreas
+ a sequence containing all print areas for this sheet.
+ */
+ void setPrintAreas( [in] sequence< com::sun::star::table::CellRangeAddress > aPrintAreas );
+
+ //-------------------------------------------------------------------------
+
+ /** returns, whether the title columns are repeated on all subsequent
+ print pages to the right.
+ */
+ boolean getPrintTitleColumns();
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether the title columns are repeated on all subsequent
+ print pages to the right.
+
+ @param bPrintTitleColumns
+ if <TRUE/>, title columns are repeated on each page.
+ */
+ void setPrintTitleColumns( [in] boolean bPrintTitleColumns );
+
+ //-------------------------------------------------------------------------
+
+ /** returns the range that is specified as title columns range.
+
+ <p>Title columns can be automatically repeated on all subsequent
+ print pages to the right, using
+ <member>XPrintAreas::setPrintTitleColumns</member>.</p>
+
+ @returns
+ the range of columns that is specified as title columns range.
+ */
+ com::sun::star::table::CellRangeAddress getTitleColumns();
+
+ //-------------------------------------------------------------------------
+
+ /** specifies a range of columns as title columns range.
+
+ <p>The rows of the passed range are ignored.</p>
+
+ <p>Title columns can be automatically repeated on all subsequent
+ print pages to the right, using
+ <member>XPrintAreas::setPrintTitleColumns</member>.</p>
+
+ @param aTitleColumns
+ the title columns range.
+ */
+ void setTitleColumns( [in] com::sun::star::table::CellRangeAddress aTitleColumns );
+
+ //-------------------------------------------------------------------------
+
+ /** returns, whether the title rows are repeated on all subsequent
+ print pages to the bottom.
+ */
+ boolean getPrintTitleRows();
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether the title rows are repeated on all subsequent
+ print pages to the bottom.
+
+ @param bPrintTitleRows
+ if <TRUE/>, title rows are repeated on each page.
+ */
+ void setPrintTitleRows( [in] boolean bPrintTitleRows );
+
+ //-------------------------------------------------------------------------
+
+ /** returns the range that is specified as title rows range.
+
+ <p>Title rows can be automatically repeated on all subsequent
+ print pages to the bootom, using
+ <member>XPrintAreas::setPrintTitleRows</member>.</p>
+
+ @returns
+ the range of rows that is specified as title rows range.
+ */
+ com::sun::star::table::CellRangeAddress getTitleRows();
+
+ //-------------------------------------------------------------------------
+
+ /** specifies a range of rows as title rows range.
+
+ <p>The columns of the passed range are ignored.</p>
+
+ <p>Title rows can be automatically repeated on all subsequent
+ print pages to the bottom, using
+ <member>XPrintAreas::setPrintTitleRows</member>.</p>
+
+ @param aTitleRows
+ the title rows range.
+ */
+ void setTitleRows( [in] com::sun::star::table::CellRangeAddress aTitleRows );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XRangeSelection.idl b/offapi/com/sun/star/sheet/XRangeSelection.idl
new file mode 100644
index 000000000000..e5a43d211a15
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XRangeSelection.idl
@@ -0,0 +1,94 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_sheet_XRangeSelection_idl__
+#define __com_sun_star_sheet_XRangeSelection_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_beans_PropertyValue_idl__
+#include <com/sun/star/beans/PropertyValue.idl>
+#endif
+
+//=============================================================================
+
+ module com { module sun { module star { module sheet {
+
+ published interface XRangeSelectionListener;
+ published interface XRangeSelectionChangeListener;
+
+//=============================================================================
+
+/** allows to let the user to select a cell range.
+
+ @see com::sun::star::sheet::SpreadsheetView
+ */
+published interface XRangeSelection: com::sun::star::uno::XInterface
+{
+ /** starts the range selection.
+
+ @param aArguments
+ the <type>RangeSelectionArguments</type> that specify how the
+ range selection is done.
+ */
+ void startRangeSelection(
+ [in] sequence<com::sun::star::beans::PropertyValue> aArguments );
+
+ /** aborts the range selection.
+ */
+ void abortRangeSelection();
+
+ /** adds a listener that is notified when range selection is completed
+ or aborted.
+ */
+ void addRangeSelectionListener(
+ [in] com::sun::star::sheet::XRangeSelectionListener aListener );
+
+ /** removes the specified listener.
+ */
+ void removeRangeSelectionListener(
+ [in] com::sun::star::sheet::XRangeSelectionListener aListener );
+
+ /** adds a listener that is notified when the selected range is changed.
+ */
+ void addRangeSelectionChangeListener(
+ [in] com::sun::star::sheet::XRangeSelectionChangeListener aListener );
+
+ /** removes the specified listener.
+ */
+ void removeRangeSelectionChangeListener(
+ [in] com::sun::star::sheet::XRangeSelectionChangeListener aListener );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XRangeSelectionChangeListener.idl b/offapi/com/sun/star/sheet/XRangeSelectionChangeListener.idl
new file mode 100644
index 000000000000..b67d55f72728
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XRangeSelectionChangeListener.idl
@@ -0,0 +1,64 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_sheet_XRangeSelectionChangeListener_idl__
+#define __com_sun_star_sheet_XRangeSelectionChangeListener_idl__
+
+#ifndef __com_sun_star_lang_XEventListener_idl__
+#include <com/sun/star/lang/XEventListener.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_RangeSelectionEvent_idl__
+#include <com/sun/star/sheet/RangeSelectionEvent.idl>
+#endif
+
+
+//=============================================================================
+
+ module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** allows notification when the selected range is changed.
+
+ @see com::sun::star::sheet::XRangeSelection
+ */
+published interface XRangeSelectionChangeListener: com::sun::star::lang::XEventListener
+{
+ /** is called when the selected range is changed while
+ range selection is active.
+ */
+ void descriptorChanged( [in] com::sun::star::sheet::RangeSelectionEvent aEvent );
+};
+
+//=============================================================================
+
+}; }; }; };
+
+
+#endif
+
+
diff --git a/offapi/com/sun/star/sheet/XRangeSelectionListener.idl b/offapi/com/sun/star/sheet/XRangeSelectionListener.idl
new file mode 100644
index 000000000000..41e9755127e2
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XRangeSelectionListener.idl
@@ -0,0 +1,67 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_sheet_XRangeSelectionListener_idl__
+#define __com_sun_star_sheet_XRangeSelectionListener_idl__
+
+#ifndef __com_sun_star_lang_XEventListener_idl__
+#include <com/sun/star/lang/XEventListener.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_RangeSelectionEvent_idl__
+#include <com/sun/star/sheet/RangeSelectionEvent.idl>
+#endif
+
+
+//=============================================================================
+
+ module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** allows notification when range selection is completed or aborted.
+
+ @see com::sun::star::sheet::XRangeSelection
+ */
+published interface XRangeSelectionListener: com::sun::star::lang::XEventListener
+{
+ /** is called when range selection is completed.
+ */
+ void done( [in] com::sun::star::sheet::RangeSelectionEvent aEvent );
+
+ /** is called when range selection is aborted.
+ */
+ void aborted( [in] com::sun::star::sheet::RangeSelectionEvent aEvent );
+};
+
+//=============================================================================
+
+}; }; }; };
+
+
+#endif
+
+
diff --git a/offapi/com/sun/star/sheet/XRecentFunctions.idl b/offapi/com/sun/star/sheet/XRecentFunctions.idl
new file mode 100644
index 000000000000..91a3436f9bb9
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XRecentFunctions.idl
@@ -0,0 +1,83 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XRecentFunctions_idl__
+#define __com_sun_star_sheet_XRecentFunctions_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides access to a list of recently used functions.
+
+ @see com::sun::star::sheet::RecentFunctions
+ */
+published interface XRecentFunctions: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** returns a sequence of those functions that were most recently used.
+
+ <P>The functions are represented by their identifiers.</P>
+
+ @returns
+ the sequence of function identifiers most recently used.
+ */
+ sequence< long > getRecentFunctionIds();
+
+ //-------------------------------------------------------------------------
+
+ /** sets the list of those functions that were most recently used.
+
+ <p>The functions are represented by their identifiers.</p>
+
+ @param aRecentFunctionIds
+ the sequence of function identifiers most recently used.
+ */
+ void setRecentFunctionIds( [in] sequence< long > aRecentFunctionIds );
+
+ //-------------------------------------------------------------------------
+
+ /** returns the maximum number of entries that will be stored as
+ recently used functions.
+ */
+ long getMaxRecentFunctions();
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XResultListener.idl b/offapi/com/sun/star/sheet/XResultListener.idl
new file mode 100644
index 000000000000..7f72f0fd0a35
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XResultListener.idl
@@ -0,0 +1,64 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XResultListener_idl__
+#define __com_sun_star_sheet_XResultListener_idl__
+
+#ifndef __com_sun_star_lang_XEventListener_idl__
+#include <com/sun/star/lang/XEventListener.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_ResultEvent_idl__
+#include <com/sun/star/sheet/ResultEvent.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** allows notification when a new volatile function result is available.
+
+ @see com::sun::star::sheet::XVolatileResult
+ */
+published interface XResultListener: com::sun::star::lang::XEventListener
+{
+ //-------------------------------------------------------------------------
+
+ /** is called when a new value is available.
+ */
+ void modified( [in] com::sun::star::sheet::ResultEvent aEvent );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XScenario.idl b/offapi/com/sun/star/sheet/XScenario.idl
new file mode 100644
index 000000000000..4ff1ad532d6a
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XScenario.idl
@@ -0,0 +1,93 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_sheet_XScenario_idl__
+#define __com_sun_star_sheet_XScenario_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellRangeAddress_idl__
+#include <com/sun/star/table/CellRangeAddress.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides access to the settings of a scenario sheet.
+
+ @see com::sun::star::sheet::Spreadsheet
+ */
+published interface XScenario: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** returns <TRUE/> if the current object is a scenario.
+ */
+ boolean getIsScenario();
+
+ //-------------------------------------------------------------------------
+
+ /** returns the comment for the scenario.
+ */
+ string getScenarioComment();
+
+ //-------------------------------------------------------------------------
+
+ /** sets a new comment for the scenario.
+ */
+ void setScenarioComment( [in] string aScenarioComment );
+
+ //-------------------------------------------------------------------------
+
+ /** adds more ranges to the scenario.
+ */
+ void addRanges(
+ [in] sequence< com::sun::star::table::CellRangeAddress > aRanges );
+
+ //-------------------------------------------------------------------------
+
+ /** applies the scenario.
+
+ <p>The contents of the scenario ranges are copied into the first
+ non-scenario sheet which is in front of the sheet containing
+ the scenario by itself.</p>
+ */
+ void apply();
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XScenarioEnhanced.idl b/offapi/com/sun/star/sheet/XScenarioEnhanced.idl
new file mode 100644
index 000000000000..cd4b895f1258
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XScenarioEnhanced.idl
@@ -0,0 +1,72 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_sheet_XScenarioEnhanced_idl__
+#define __com_sun_star_sheet_XScenarioEnhanced_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellRangeAddress_idl__
+#include <com/sun/star/table/CellRangeAddress.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides enhanced access to the settings of a scenario sheet.
+
+ @see com::sun::star::sheet::Spreadsheet
+
+ @see com::sun::star::sheet::Scenario
+
+ @see com::sun::star::sheet::XScenario
+
+ @since OOo 2.0.0
+
+ */
+interface XScenarioEnhanced: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** gets the ranges to the scenario.
+ */
+ sequence< com::sun::star::table::CellRangeAddress > getRanges();
+
+ //-------------------------------------------------------------------------
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XScenarios.idl b/offapi/com/sun/star/sheet/XScenarios.idl
new file mode 100644
index 000000000000..d294bdf72b42
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XScenarios.idl
@@ -0,0 +1,84 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XScenarios_idl__
+#define __com_sun_star_sheet_XScenarios_idl__
+
+#ifndef __com_sun_star_container_XNameAccess_idl__
+#include <com/sun/star/container/XNameAccess.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellRangeAddress_idl__
+#include <com/sun/star/table/CellRangeAddress.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides access via name to the scenarios in a collection and inserting
+ and removing scenarios.
+
+ @see com::sun::star::sheet::Scenarios
+ @see com::sun::star::sheet::Spreadsheet
+ */
+published interface XScenarios: com::sun::star::container::XNameAccess
+{
+ //-------------------------------------------------------------------------
+
+ /** creates a new scenario and adds it to the collection.
+
+ @param aName
+ the name of the scenario (used i.e. for collection access).
+
+ @param aRanges
+ the cell ranges contained in the scenario.
+
+ @param aComment
+ the user defined comment for the scenario.
+ */
+ void addNewByName(
+ [in] string aName,
+ [in] sequence< com::sun::star::table::CellRangeAddress > aRanges,
+ [in] string aComment );
+
+ //-------------------------------------------------------------------------
+
+ /** removes a scenario from the collection.
+ */
+ void removeByName( [in] string aName );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XScenariosSupplier.idl b/offapi/com/sun/star/sheet/XScenariosSupplier.idl
new file mode 100644
index 000000000000..f04770fe08aa
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XScenariosSupplier.idl
@@ -0,0 +1,64 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XScenariosSupplier_idl__
+#define __com_sun_star_sheet_XScenariosSupplier_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XScenarios_idl__
+#include <com/sun/star/sheet/XScenarios.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides access to a collection of scenarios.
+ */
+published interface XScenariosSupplier: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** returns the collection of scenarios.
+
+ @see com::sun::star::sheet::Scenarios
+ */
+ com::sun::star::sheet::XScenarios getScenarios();
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XSheetAnnotation.idl b/offapi/com/sun/star/sheet/XSheetAnnotation.idl
new file mode 100644
index 000000000000..a999cf8f32b8
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XSheetAnnotation.idl
@@ -0,0 +1,91 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XSheetAnnotation_idl__
+#define __com_sun_star_sheet_XSheetAnnotation_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellAddress_idl__
+#include <com/sun/star/table/CellAddress.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides methods to query data of the annotation and to show and
+ hide it.
+
+ @see com::sun::star::sheet::CellAnnotation
+ */
+published interface XSheetAnnotation: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** returns the position of cell in the spreadsheet document that
+ contains this annotation.
+ */
+ com::sun::star::table::CellAddress getPosition();
+
+ //-------------------------------------------------------------------------
+
+ /** returns the name of the user who last changed the annotation.
+ */
+ string getAuthor();
+
+ //-------------------------------------------------------------------------
+
+ /** returns a formatted string representing the date when the
+ annotation was last changed.
+ */
+ string getDate();
+
+ //-------------------------------------------------------------------------
+
+ /** returns, whether the annotation is permanently visible.
+ */
+ boolean getIsVisible();
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether the annotation is permanently visible.
+ */
+ void setIsVisible( [in] boolean bIsVisible );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XSheetAnnotationAnchor.idl b/offapi/com/sun/star/sheet/XSheetAnnotationAnchor.idl
new file mode 100644
index 000000000000..e53477080bea
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XSheetAnnotationAnchor.idl
@@ -0,0 +1,65 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XSheetAnnotationAnchor_idl__
+#define __com_sun_star_sheet_XSheetAnnotationAnchor_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XSheetAnnotation_idl__
+#include <com/sun/star/sheet/XSheetAnnotation.idl>
+#endif
+
+//=============================================================================
+
+ module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides access to a cell annotation attached to a spreadsheet cell.
+
+ @see com::sun::star::sheet::SheetCell
+ @see com::sun::star::sheet::CellAnnotation
+ */
+published interface XSheetAnnotationAnchor: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** returns the annotation at this anchor.
+ */
+ com::sun::star::sheet::XSheetAnnotation getAnnotation();
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XSheetAnnotationShapeSupplier.idl b/offapi/com/sun/star/sheet/XSheetAnnotationShapeSupplier.idl
new file mode 100644
index 000000000000..5075cc2f52b4
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XSheetAnnotationShapeSupplier.idl
@@ -0,0 +1,66 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XSheetAnnotationShapeSupplier_idl__
+#define __com_sun_star_sheet_XSheetAnnotationShapeSupplier_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_drawing_XShape_idl__
+#include <com/sun/star/drawing/XShape.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides methods to get the shape of o annotation
+
+ @see com::sun::star::sheet::CellAnnotation
+
+ @see com::sun::star::sheet::CellAnnotationShape
+ */
+published interface XSheetAnnotationShapeSupplier: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** returns the shape of the annotation
+ */
+ com::sun::star::drawing::XShape getAnnotationShape();
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XSheetAnnotations.idl b/offapi/com/sun/star/sheet/XSheetAnnotations.idl
new file mode 100644
index 000000000000..c3fa31ac674e
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XSheetAnnotations.idl
@@ -0,0 +1,90 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XSheetAnnotations_idl__
+#define __com_sun_star_sheet_XSheetAnnotations_idl__
+
+#ifndef __com_sun_star_container_XIndexAccess_idl__
+#include <com/sun/star/container/XIndexAccess.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellAddress_idl__
+#include <com/sun/star/table/CellAddress.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides methods to access cell annotations via index and to
+ insert and remove annotations.
+
+ @see com::sun::star::sheet::CellAnnotation
+ @see com::sun::star::sheet::SheetCell
+ */
+published interface XSheetAnnotations: com::sun::star::container::XIndexAccess
+{
+ //-------------------------------------------------------------------------
+
+ /** creates a new annotation.
+
+ <p>This method creates a new annotation object, attaches it to the
+ specified cell and inserts it into the collection.</p>
+
+ @param aPosition
+ contains the address of the cell thta will contain the
+ annotation.
+
+ @param aText
+ contains the annotation text.
+ */
+ void insertNew(
+ [in] com::sun::star::table::CellAddress aPosition,
+ [in] string aText );
+
+ //-------------------------------------------------------------------------
+
+ /** removes a cell annotation from the collection.
+
+ <p>This method removes the annotation from its cell and from the
+ collection.</p>
+
+ @param nIndex
+ is the index of the annotation in the collection.
+ */
+ void removeByIndex( [in] long nIndex );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XSheetAnnotationsSupplier.idl b/offapi/com/sun/star/sheet/XSheetAnnotationsSupplier.idl
new file mode 100644
index 000000000000..9b696060a977
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XSheetAnnotationsSupplier.idl
@@ -0,0 +1,64 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XSheetAnnotationsSupplier_idl__
+#define __com_sun_star_sheet_XSheetAnnotationsSupplier_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XSheetAnnotations_idl__
+#include <com/sun/star/sheet/XSheetAnnotations.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides access to a collection of cell annotations.
+ */
+published interface XSheetAnnotationsSupplier: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** returns the collection of cell annotations.
+
+ @see com::sun::star::sheet::CellAnnotations
+ */
+ com::sun::star::sheet::XSheetAnnotations getAnnotations();
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XSheetAuditing.idl b/offapi/com/sun/star/sheet/XSheetAuditing.idl
new file mode 100644
index 000000000000..43342f5a6f6b
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XSheetAuditing.idl
@@ -0,0 +1,124 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XSheetAuditing_idl__
+#define __com_sun_star_sheet_XSheetAuditing_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellAddress_idl__
+#include <com/sun/star/table/CellAddress.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides methods to access auditing (detective) features in a
+ spreadsheet.
+ */
+published interface XSheetAuditing: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** removes arrows for one level of dependents of a formula cell.
+
+ <p>If the method is executed again for the same cell, the previous
+ level of dependent cells is removed.</p>
+
+ @param aPosition
+ the address of the formula cell.
+ */
+ boolean hideDependents( [in] com::sun::star::table::CellAddress aPosition );
+
+ //-------------------------------------------------------------------------
+
+ /** removes arrows for one level of precedents of a formula cell.
+
+ <p>If the method is executed again for the same cell, the previous
+ level of dependent cells is removed.</p>
+
+ @param aPosition
+ the address of the formula cell.
+ */
+ boolean hidePrecedents( [in] com::sun::star::table::CellAddress aPosition );
+
+ //-------------------------------------------------------------------------
+
+ /** draws arrows between a formula cell and its dependents.
+
+ <p>If the method is executed again for the same cell, the next
+ level of dependent cells is marked.</p>
+
+ @param aPosition
+ the address of the formula cell.
+ */
+ boolean showDependents( [in] com::sun::star::table::CellAddress aPosition );
+
+ //-------------------------------------------------------------------------
+
+ /** draws arrows between a formula cell and its precedents.
+
+ <p>If the method is executed again for the same cell, the next
+ level of dependent cells is marked.</p>
+
+ @param aPosition
+ the address of the formula cell.
+ */
+ boolean showPrecedents( [in] com::sun::star::table::CellAddress aPosition );
+
+ //-------------------------------------------------------------------------
+
+ /** draws arrows between a formula cell containing an error
+ and the cells causing the error.
+ */
+ boolean showErrors( [in] com::sun::star::table::CellAddress aPosition );
+
+ //-------------------------------------------------------------------------
+
+ /** marks all cells containing invalid values.
+ */
+ boolean showInvalid();
+
+ //-------------------------------------------------------------------------
+
+ /** removes all auditing arrows from the spreadsheet.
+ */
+ void clearArrows();
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XSheetCellCursor.idl b/offapi/com/sun/star/sheet/XSheetCellCursor.idl
new file mode 100644
index 000000000000..3141231437cd
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XSheetCellCursor.idl
@@ -0,0 +1,113 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XSheetCellCursor_idl__
+#define __com_sun_star_sheet_XSheetCellCursor_idl__
+
+#ifndef __com_sun_star_sheet_XSheetCellRange_idl__
+#include <com/sun/star/sheet/XSheetCellRange.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides advanced methods to control the position of a cursor in a
+ spreadsheet.
+
+ @see com::sun::star::sheet::SheetCellCursor
+ */
+published interface XSheetCellCursor: com::sun::star::sheet::XSheetCellRange
+{
+ //-------------------------------------------------------------------------
+
+ /** expands the cursor into the region containing the cells to which
+ it currently points.
+
+ <p>A region is a cell range bounded by empty cells.</p>
+ */
+ void collapseToCurrentRegion();
+
+ //-------------------------------------------------------------------------
+
+ /** collapses the cursor into the range of the array formula to which
+ it is currently pointing.
+
+ <p>To get the correct result, the top left cell of the original
+ cursor must point to any cell containing an array formula.
+ If not, the cursor is left unchanged.</p>
+ */
+ void collapseToCurrentArray();
+
+ //-------------------------------------------------------------------------
+
+ /** expands the cursor to merged cell ranges.
+
+ <p>Expands the current cursor range in a way so that all merged
+ cell ranges intersecting the current range will fit completely.
+ If the cursor does not point to any range with merged cells, it
+ is left unchanged.</p>
+ */
+ void collapseToMergedArea();
+
+ //-------------------------------------------------------------------------
+
+ /** expands the cursor to include the entire columns of the cells
+ to which it is currently pointing.
+ */
+ void expandToEntireColumns();
+
+ //-------------------------------------------------------------------------
+
+ /** expands the cursor to include the entire rows of the cells to
+ which it is currently pointing.
+ */
+ void expandToEntireRows();
+
+ //-------------------------------------------------------------------------
+
+ /** changes the size of a cursor range.
+
+ <p>The top left cell of the cursor keeps unmodified. </p>
+
+ @param nColumns
+ the number of columns of the new cursor range.
+ @param nRows
+ the number of rows of the new cursor range.
+ */
+ void collapseToSize( [in] long nColumns, [in] long nRows );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XSheetCellRange.idl b/offapi/com/sun/star/sheet/XSheetCellRange.idl
new file mode 100644
index 000000000000..f025a44e3e25
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XSheetCellRange.idl
@@ -0,0 +1,70 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XSheetCellRange_idl__
+#define __com_sun_star_sheet_XSheetCellRange_idl__
+
+#ifndef __com_sun_star_table_XCellRange_idl__
+#include <com/sun/star/table/XCellRange.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+ published interface XSpreadsheet;
+
+//=============================================================================
+
+/** provides access to the spreadsheet that contains a cell range.
+
+ @see com::sun::star::sheet::SheetCellRange
+ */
+published interface XSheetCellRange: com::sun::star::table::XCellRange
+{
+ //-------------------------------------------------------------------------
+
+ /** returns the spreadsheet interface which contains the cell range.
+
+ @returns
+ a <type>Spreadsheet</type> object.
+
+ @see com::sun::star::sheet::SheetCellRange
+ @see com::sun::star::sheet::SheetCellRanges
+ */
+ com::sun::star::sheet::XSpreadsheet getSpreadsheet();
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XSheetCellRangeContainer.idl b/offapi/com/sun/star/sheet/XSheetCellRangeContainer.idl
new file mode 100644
index 000000000000..b063b2ed3f95
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XSheetCellRangeContainer.idl
@@ -0,0 +1,127 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XSheetCellRangeContainer_idl__
+#define __com_sun_star_sheet_XSheetCellRangeContainer_idl__
+
+#ifndef __com_sun_star_sheet_XSheetCellRanges_idl__
+#include <com/sun/star/sheet/XSheetCellRanges.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellRangeAddress_idl__
+#include <com/sun/star/table/CellRangeAddress.idl>
+#endif
+
+#ifndef __com_sun_star_container_NoSuchElementException_idl__
+#include <com/sun/star/container/NoSuchElementException.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides methods to access cell ranges in a collection via index and
+ to add and remove cell ranges.
+
+ @see com::sun::star::sheet::SheetCellRanges
+ */
+published interface XSheetCellRangeContainer: com::sun::star::sheet::XSheetCellRanges
+{
+ //-------------------------------------------------------------------------
+
+ /** adds the given range to the collection of cell ranges.
+
+ @param aCellRangeAddress
+ contains the address of the new range.
+
+ @param bMergeRanges
+ defines how the range should be added. To merge the ranges
+ takes more time, but the memory usage is lower.
+ */
+ void addRangeAddress(
+ [in] com::sun::star::table::CellRangeAddress aCellRangeAddress,
+ [in] boolean bMergeRanges );
+
+ //-------------------------------------------------------------------------
+
+ /** removes the given range from the collection of cell ranges.
+
+ @param aCellRangeAddress
+ contains the address of the range to be removed.
+
+ <p>The specified range must fit exactly to an element of the
+ collection. The method does not try to shorten a range.</p>
+
+ @throws <type scope="com::sun::star::container">NoSuchElementException</type>
+ if the collection does not contain the specified range.
+ */
+ void removeRangeAddress(
+ [in] com::sun::star::table::CellRangeAddress aCellRangeAddress )
+ raises( com::sun::star::container::NoSuchElementException );
+
+ //-------------------------------------------------------------------------
+
+ /** adds the given ranges to the collection of cell ranges.
+
+ @param aCellRangeAddresses
+ contains a sequence of addresses of all new ranges.
+
+ @param bMergeRanges
+ defines how the ranges should be added. To merge the ranges
+ takes more time, but the memory usage is lower.
+ */
+ void addRangeAddresses(
+ [in] sequence<com::sun::star::table::CellRangeAddress> aCellRangeAddresses,
+ [in] boolean bMergeRanges );
+
+ //-------------------------------------------------------------------------
+
+ /** removes the given ranges from the collection of cell ranges.
+
+ @param aCellRangeAddresses
+ contains a sequence of addresses of all ranges to be removed.
+
+ <p>All specified ranges must fit exactly to elements of the
+ collection. The method does not try to shorten ranges.</p>
+
+ @throws <type scope="com::sun::star::container">NoSuchElementException</type>
+ if the collection does not contain any of the specified ranges.
+ */
+ void removeRangeAddresses(
+ [in] sequence<com::sun::star::table::CellRangeAddress> aCellRangeAddresses )
+ raises( com::sun::star::container::NoSuchElementException);
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XSheetCellRanges.idl b/offapi/com/sun/star/sheet/XSheetCellRanges.idl
new file mode 100644
index 000000000000..7b87269d779f
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XSheetCellRanges.idl
@@ -0,0 +1,92 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XSheetCellRanges_idl__
+#define __com_sun_star_sheet_XSheetCellRanges_idl__
+
+#ifndef __com_sun_star_container_XIndexAccess_idl__
+#include <com/sun/star/container/XIndexAccess.idl>
+#endif
+
+#ifndef __com_sun_star_container_XEnumerationAccess_idl__
+#include <com/sun/star/container/XEnumerationAccess.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellRangeAddress_idl__
+#include <com/sun/star/table/CellRangeAddress.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides methods to access cell ranges in a collection via index and
+ other helper methods.
+
+ @see com::sun::star::sheet::SheetCellRanges
+ */
+published interface XSheetCellRanges: com::sun::star::container::XIndexAccess
+{
+ //-------------------------------------------------------------------------
+
+ /** returns the collection of all used cells.
+
+ @see com::sun::star::sheet::Cells
+ */
+ com::sun::star::container::XEnumerationAccess getCells();
+
+ //-------------------------------------------------------------------------
+
+ /** creates a string with addresses of all contained cell ranges.
+
+ <p>The range addresses are separated with semicolons. For instance
+ the string could have the form "Sheet1.A1:C3;Sheet2.D5:F8".</p>
+
+ @returns
+ a string containing the addresses of all cell ranges.
+ */
+ string getRangeAddressesAsString();
+
+ //-------------------------------------------------------------------------
+
+ /** creates a sequence with addresses of all contained cell ranges.
+
+ @returns
+ a sequence with the addresses of all cell ranges.
+ */
+ sequence<com::sun::star::table::CellRangeAddress> getRangeAddresses();
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XSheetCondition.idl b/offapi/com/sun/star/sheet/XSheetCondition.idl
new file mode 100644
index 000000000000..3fc4635f9b4a
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XSheetCondition.idl
@@ -0,0 +1,132 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XSheetCondition_idl__
+#define __com_sun_star_sheet_XSheetCondition_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_ConditionOperator_idl__
+#include <com/sun/star/sheet/ConditionOperator.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellAddress_idl__
+#include <com/sun/star/table/CellAddress.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides methods to access the settings of a condition in a
+ conditional format or data validation.
+
+ @see com::sun::star::sheet::TableConditionalEntry
+ @see com::sun::star::sheet::TableValidation
+ */
+published interface XSheetCondition: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** returns the operator in the condition.
+ */
+ com::sun::star::sheet::ConditionOperator getOperator();
+
+ //-------------------------------------------------------------------------
+
+ /** sets the operator in the condition.
+ */
+ void setOperator(
+ [in] com::sun::star::sheet::ConditionOperator nOperator );
+
+ //-------------------------------------------------------------------------
+
+ /** returns either the comparison value, which is used in the condition,
+ or the first value if two values are needed for the operator.
+
+ @returns
+ a formula, a numeric constant, or a string constant in quotes.
+ */
+ string getFormula1();
+
+ //-------------------------------------------------------------------------
+
+ /** sets either the comparison value, which is used in the condition,
+ or the first value if two values are needed for the operator.
+
+ @param aFormula1
+ a formula, a numeric constant, or a string constant in quotes.
+ */
+ void setFormula1( [in] string aFormula1 );
+
+ //-------------------------------------------------------------------------
+
+ /** if two values are needed for the operator, this method returns
+ the second one.
+
+ @returns
+ a formula, a numeric constant, or a string constant in quotes.
+ */
+ string getFormula2();
+
+ //-------------------------------------------------------------------------
+
+ /** if two values are needed for the operator, this method sets
+ the second one.
+
+ @param aFormula2
+ a formula, a numeric constant, or a string constant in quotes.
+ */
+ void setFormula2( [in] string aFormula2 );
+
+ //-------------------------------------------------------------------------
+
+ /** returns the position in the document which is used as a base for
+ relative references in the formulas.
+ */
+ com::sun::star::table::CellAddress getSourcePosition();
+
+ //-------------------------------------------------------------------------
+
+ /** sets the position in the document which is used as a base for
+ relative references in the formulas.
+ */
+ void setSourcePosition(
+ [in] com::sun::star::table::CellAddress aSourcePosition );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XSheetConditionalEntries.idl b/offapi/com/sun/star/sheet/XSheetConditionalEntries.idl
new file mode 100644
index 000000000000..8e8b10af5e14
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XSheetConditionalEntries.idl
@@ -0,0 +1,102 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XSheetConditionalEntries_idl__
+#define __com_sun_star_sheet_XSheetConditionalEntries_idl__
+
+#ifndef __com_sun_star_container_XIndexAccess_idl__
+#include <com/sun/star/container/XIndexAccess.idl>
+#endif
+
+#ifndef __com_sun_star_beans_PropertyValue_idl__
+#include <com/sun/star/beans/PropertyValue.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides methods to add and remove conditions of a conditional format.
+
+ @see com::sun::star::sheet::TableConditionalFormat
+ @see com::sun::star::sheet::TableConditionalEntry
+ */
+published interface XSheetConditionalEntries: com::sun::star::container::XIndexAccess
+{
+ //-------------------------------------------------------------------------
+
+ /** adds a conditional entry to the format.
+
+ <p>Supported properties are:</p>
+
+ <dl>
+ <dt><type>ConditionOperator</type> Operator</dt>
+ <dd>contains the operation to perform for this condition.</dd>
+
+ <dt><atom>string</atom> Formula1</dt>
+ <dd>contains the value or formula for the operation.</dd>
+
+ <dt><atom>string</atom> Formula2</dt>
+ <dd>contains the second value or formula for the operation (used with
+ <const>ConditionOperator::BETWEEN</const> or
+ <const>ConditionOperator::NOT_BETWEEN</const> operations).</dd>
+
+ <dt><type scope="com::sun::star::table">CellAddress</type>
+ SourcePosition</dt>
+ <dd>contains the base address for relative cell references in formulas.
+ </dd>
+
+ <dt><atom>string</atom> StyleName</dt>
+ <dd>contains the name of the cell style used by this condition.</dd>
+ </dl>
+
+ @see com::sun::star::sheet::TableConditionalFormat
+ */
+ void addNew( [in] sequence< com::sun::star::beans::PropertyValue > aConditionalEntry );
+
+ //-------------------------------------------------------------------------
+
+ /** removes a conditional entry from the format.
+ */
+ void removeByIndex( [in] long nIndex );
+
+ //-------------------------------------------------------------------------
+
+ /** clears all condition entries.
+ */
+ void clear();
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XSheetConditionalEntry.idl b/offapi/com/sun/star/sheet/XSheetConditionalEntry.idl
new file mode 100644
index 000000000000..2ecc635393b6
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XSheetConditionalEntry.idl
@@ -0,0 +1,69 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XSheetConditionalEntry_idl__
+#define __com_sun_star_sheet_XSheetConditionalEntry_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides methods to access the cell style name for a condition in a
+ conditional format.
+
+ @see com::sun::star::sheet::TableConditionalEntry
+ */
+published interface XSheetConditionalEntry: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** returns the name of the cell style that is used when the condition
+ is fulfilled.
+ */
+ string getStyleName();
+
+ //-------------------------------------------------------------------------
+
+ /** sets the name of the cell style that is used when the condition
+ is fulfilled.
+ */
+ void setStyleName( [in] string aStyleName );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XSheetFilterDescriptor.idl b/offapi/com/sun/star/sheet/XSheetFilterDescriptor.idl
new file mode 100644
index 000000000000..49f44fd534d8
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XSheetFilterDescriptor.idl
@@ -0,0 +1,71 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XSheetFilterDescriptor_idl__
+#define __com_sun_star_sheet_XSheetFilterDescriptor_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_TableFilterField_idl__
+#include <com/sun/star/sheet/TableFilterField.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides access to a collection of filter conditions (filter fields).
+
+ @see com::sun::star::sheet::SheetFilterDescriptor
+ */
+published interface XSheetFilterDescriptor: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** returns the collection of filter fields.
+ */
+ sequence< com::sun::star::sheet::TableFilterField > getFilterFields();
+
+ //-------------------------------------------------------------------------
+
+ /** sets a new collection of filter fields.
+ */
+ void setFilterFields(
+ [in] sequence< com::sun::star::sheet::TableFilterField > aFilterFields );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XSheetFilterDescriptor2.idl b/offapi/com/sun/star/sheet/XSheetFilterDescriptor2.idl
new file mode 100644
index 000000000000..8f94ee65fc8e
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XSheetFilterDescriptor2.idl
@@ -0,0 +1,76 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XSheetFilterDescriptor2_idl__
+#define __com_sun_star_sheet_XSheetFilterDescriptor2_idl__
+
+#ifndef __com_sun_star_sheet_TableFilterField2_idl__
+#include <com/sun/star/sheet/TableFilterField2.idl>
+#endif
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides access to a collection of filter conditions (filter fields).
+
+ <p>This interface uses the <type>TableFilterField2</type> struct,
+ whereas the <type>XSheetFilterDescriptor</type> interface uses the
+ <type>TableFilterField</type> struct.</p>
+
+ @see com::sun::star::sheet::SheetFilterDescriptor
+ @since OOo 3.2
+ */
+published interface XSheetFilterDescriptor2: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** returns the collection of filter fields.
+ */
+ sequence< com::sun::star::sheet::TableFilterField2 > getFilterFields2();
+
+ //-------------------------------------------------------------------------
+
+ /** sets a new collection of filter fields.
+ */
+ void setFilterFields2(
+ [in] sequence< com::sun::star::sheet::TableFilterField2 > aFilterFields );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XSheetFilterable.idl b/offapi/com/sun/star/sheet/XSheetFilterable.idl
new file mode 100644
index 000000000000..0dbdca51a94f
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XSheetFilterable.idl
@@ -0,0 +1,81 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XSheetFilterable_idl__
+#define __com_sun_star_sheet_XSheetFilterable_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XSheetFilterDescriptor_idl__
+#include <com/sun/star/sheet/XSheetFilterDescriptor.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents something that can be filtered using an XSheetFilterDesriptor.
+
+ @see com::sun::star::sheet::XSheetFilterableEx
+ */
+published interface XSheetFilterable: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** creates a filter descriptor.
+
+ @param bEmpty
+ if set to <TRUE/>, creates an empty filter descriptor. If set to
+ <FALSE/>, fills the filter descriptor with previous settings of
+ the current object (i.e. a database range).
+ */
+ com::sun::star::sheet::XSheetFilterDescriptor
+ createFilterDescriptor( [in] boolean bEmpty );
+
+ //-------------------------------------------------------------------------
+
+ /** performa a filter operation, using the settings of the passed filter
+ descriptor.
+
+ @param xDescriptor
+ the settings for the filter operation.
+ */
+ void filter(
+ [in] com::sun::star::sheet::XSheetFilterDescriptor xDescriptor );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XSheetFilterableEx.idl b/offapi/com/sun/star/sheet/XSheetFilterableEx.idl
new file mode 100644
index 000000000000..591e9b18ed72
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XSheetFilterableEx.idl
@@ -0,0 +1,71 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_sheet_XSheetFilterableEx_idl__
+#define __com_sun_star_sheet_XSheetFilterableEx_idl__
+
+#ifndef __com_sun_star_sheet_XSheetFilterable_idl__
+#include <com/sun/star/sheet/XSheetFilterable.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XSheetFilterDescriptor_idl__
+#include <com/sun/star/sheet/XSheetFilterDescriptor.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents something from which criteria for filtering can be read.
+
+ <p>In general the current object will be used only to create the
+ descriptor to filter another object, i.e. the advanced filter feature
+ in a spreadsheet.</p>
+
+ @see com::sun::star::sheet::SheetCellRange
+ */
+published interface XSheetFilterableEx: com::sun::star::sheet::XSheetFilterable
+{
+ //-------------------------------------------------------------------------
+
+ /** creates a filter descriptor for the specified filterable object from
+ the contents of this object.
+ */
+ com::sun::star::sheet::XSheetFilterDescriptor
+ createFilterDescriptorByObject(
+ [in] com::sun::star::sheet::XSheetFilterable xObject );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XSheetLinkable.idl b/offapi/com/sun/star/sheet/XSheetLinkable.idl
new file mode 100644
index 000000000000..159176dce9d3
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XSheetLinkable.idl
@@ -0,0 +1,134 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XSheetLinkable_idl__
+#define __com_sun_star_sheet_XSheetLinkable_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_SheetLinkMode_idl__
+#include <com/sun/star/sheet/SheetLinkMode.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** enables a sheet to refer to another sheet in a different document.
+
+ <p>To insert a sheet link, the sheet used as linked sheet has to exist
+ already. The method <member>XSheetLinkable::link</member> creates a
+ <type>SheetLink</type> object in the document's <type>SheetLinks</type>
+ collection and links the sheet to the specified external sheet.</p>
+
+ @see com::sun::star::sheet::SheetLinks
+ @see com::sun::star::sheet::SheetLink
+
+ @deprecated
+ */
+published interface XSheetLinkable: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** returns the link mode of the spreadsheet.
+
+ <p>If the returned value is <const>SheetLinkMode::NORMAL</const>,
+ formulas are copied. With <const>SheetLinkMode::VALUE</const>,
+ only results of formulas are used.</p>
+ */
+ com::sun::star::sheet::SheetLinkMode getLinkMode();
+
+ //-------------------------------------------------------------------------
+
+ /** enables the linking of the sheet and controls whether formulas
+ are copied.
+
+ @param nLinkMode
+ the value specifying the link mode for this spreadsheet.
+
+ <p>If the value is <const>SheetLinkMode::NORMAL</const>,
+ formulas are copied. With <const>SheetLinkMode::VALUE</const>,
+ only results of formulas are used.</p>
+ */
+ void setLinkMode( [in] com::sun::star::sheet::SheetLinkMode nLinkMode );
+
+ //-------------------------------------------------------------------------
+
+ /** returns the target URL of the link.
+ */
+ string getLinkUrl();
+
+ //-------------------------------------------------------------------------
+
+ /** sets the target URL of the link.
+
+ <p>A <type>SheetLink</type> object with the same file name must
+ exist already or the link will not work.</p>
+ */
+ void setLinkUrl( [in] string aLinkUrl );
+
+ //-------------------------------------------------------------------------
+
+ /** returns the sheet name of the sheet in the source document.
+ */
+ string getLinkSheetName();
+
+ //-------------------------------------------------------------------------
+
+ /** sets the name of the linked sheet in the source document.
+
+ <p>This method sets the sheet name in the <type>SheetLink</type>
+ object, it does not modify the sheet name in the source document.</p>
+ */
+ void setLinkSheetName( [in] string aLinkSheetName );
+
+ //-------------------------------------------------------------------------
+
+ /** links the sheet to another sheet in another document.
+
+ <p>A <type>SheetLink</type> object is created if it does not exist,
+ and the link mode, the URL of the linked document and the linked
+ sheet name are set.</p>
+ */
+ void link( [in] string aUrl,
+ [in] string aSheetName,
+ [in] string aFilterName,
+ [in] string aFilterOptions,
+ [in] com::sun::star::sheet::SheetLinkMode nMode );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XSheetOperation.idl b/offapi/com/sun/star/sheet/XSheetOperation.idl
new file mode 100644
index 000000000000..a547cfa66e91
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XSheetOperation.idl
@@ -0,0 +1,87 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XSheetOperation_idl__
+#define __com_sun_star_sheet_XSheetOperation_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_GeneralFunction_idl__
+#include <com/sun/star/sheet/GeneralFunction.idl>
+#endif
+
+#ifndef __com_sun_star_uno_Exception_idl__
+#include <com/sun/star/uno/Exception.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides methods to execute operations on a cell range or ranges.
+
+ @see com::sun::star::sheet::SheetCellRange
+ @see com::sun::star::sheet::SheetCellRanges
+ */
+published interface XSheetOperation: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** computes a general function based on all cells in the current
+ cell range(s).
+
+ @param nFunction
+ is the function used to compute the result.
+
+ @returns
+ the result of the calculation.
+ */
+ double computeFunction(
+ [in] com::sun::star::sheet::GeneralFunction nFunction )
+ raises( com::sun::star::uno::Exception ); //! unnecessary
+
+ //-------------------------------------------------------------------------
+
+ /** clears the specified contents of the current cell range(s).
+
+ @param nContentFlags
+ a combination of <type>CellFlags</type> flags selecting the
+ contents to be deleted.
+ */
+ void clearContents( [in] long nContentFlags );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/sheet/XSheetOutline.idl b/offapi/com/sun/star/sheet/XSheetOutline.idl
new file mode 100644
index 000000000000..0f3de869d980
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XSheetOutline.idl
@@ -0,0 +1,141 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XSheetOutline_idl__
+#define __com_sun_star_sheet_XSheetOutline_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellRangeAddress_idl__
+#include <com/sun/star/table/CellRangeAddress.idl>
+#endif
+
+#ifndef __com_sun_star_table_TableOrientation_idl__
+#include <com/sun/star/table/TableOrientation.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides methods to access the outlines of a sheet.
+ */
+published interface XSheetOutline: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** creates an outline group.
+
+ @param aRange
+ contains the range of rows or columns, depending on
+ the parameter nOrientation.
+
+ @param nOrientation
+ the orientation of the new outline (columns or rows).
+ */
+ void group(
+ [in] com::sun::star::table::CellRangeAddress aRange,
+ [in] com::sun::star::table::TableOrientation nOrientation );
+
+ //-------------------------------------------------------------------------
+
+ /** removes outline groups.
+
+ <p>In the specified range, all outline groups on the innermost
+ level are removed.</p>
+
+ @param aRange
+ contains the range of rows or columns, depending on
+ the parameter nOrientation.
+
+ @param nOrientation
+ the orientation of the outlines to remove (columns or rows).
+ */
+ void ungroup(
+ [in] com::sun::star::table::CellRangeAddress aRange,
+ [in] com::sun::star::table::TableOrientation nOrientation );
+
+ //-------------------------------------------------------------------------
+
+ /** creates outline groups from formula references in a range.
+
+ @param aRange
+ the cell range for which outlines are generated.
+ */
+ void autoOutline( [in] com::sun::star::table::CellRangeAddress aRange );
+
+ //-------------------------------------------------------------------------
+
+ /** removes all outline groups from the sheet.
+ */
+ void clearOutline();
+
+ //-------------------------------------------------------------------------
+
+ /** collapses an outline group.
+
+ @param aRange
+ the cell range for which the outlines are collapsed.
+ */
+ void hideDetail( [in] com::sun::star::table::CellRangeAddress aRange );
+
+ //-------------------------------------------------------------------------
+
+ /** reopens an outline group.
+
+ @param aRange
+ the cell range for which the outlines are reopened.
+ */
+ void showDetail( [in] com::sun::star::table::CellRangeAddress aRange );
+
+ //-------------------------------------------------------------------------
+
+ /** shows all outlined groups below a specific level.
+
+ @param nLevel
+ all outline levels from 1 to this value will be opened and
+ the higher levels will be closed.
+
+ @param nOrientation
+ the orientation of the outlines (columns or rows).
+ */
+ void showLevel(
+ [in] short nLevel,
+ [in] com::sun::star::table::TableOrientation nOrientation );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XSheetPageBreak.idl b/offapi/com/sun/star/sheet/XSheetPageBreak.idl
new file mode 100644
index 000000000000..7d590f18eac0
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XSheetPageBreak.idl
@@ -0,0 +1,94 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XSheetPageBreak_idl__
+#define __com_sun_star_sheet_XSheetPageBreak_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_TablePageBreakData_idl__
+#include <com/sun/star/sheet/TablePageBreakData.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides access to page breaks in a sheet.
+
+ @deprecated
+ */
+published interface XSheetPageBreak: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** returns a sequence of descriptions of all horizontal page breaks
+ on the sheet.
+
+ <P>This includes manual and automatic page breaks. To add or
+ remove manual breaks, use the
+ <member scope="com::sun::star::table">TableColumn::IsStartOfNewPage</member>
+ property of the column.</P>
+
+ @returns
+ a sequence of structs containing column page break data.
+ */
+ sequence< com::sun::star::sheet::TablePageBreakData > getColumnPageBreaks();
+
+ //-------------------------------------------------------------------------
+
+ /** returns a sequence of descriptions of all vertical page breaks
+ on the sheet.
+
+ <P>This includes manual and automatic page breaks. To add or
+ remove manual breaks, use the
+ <member scope="com::sun::star::table">TableRow::IsStartOfNewPage</member>
+ property of the row.</P>
+
+ @returns
+ a sequence of structs containing row page break data.
+ */
+ sequence< com::sun::star::sheet::TablePageBreakData > getRowPageBreaks();
+
+ //-------------------------------------------------------------------------
+
+ /** removes all manual page breaks on the sheet.
+ */
+ void removeAllManualPageBreaks();
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XSheetPastable.idl b/offapi/com/sun/star/sheet/XSheetPastable.idl
new file mode 100644
index 000000000000..db2053f83273
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XSheetPastable.idl
@@ -0,0 +1,100 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XSheetPastable_idl__
+#define __com_sun_star_sheet_XSheetPastable_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellAddress_idl__
+#include <com/sun/star/table/CellAddress.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellRangeAddress_idl__
+#include <com/sun/star/table/CellRangeAddress.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_PasteOperation_idl__
+#include <com/sun/star/sheet/PasteOperation.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_CellInsertMode_idl__
+#include <com/sun/star/sheet/CellInsertMode.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a sheet into which contents of the clipboard can be pasted.
+
+ @deprecated
+ */
+published interface XSheetPastable: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** pastes the contents of the clipboard at the specified
+ position on the sheet.
+ */
+ void paste( [in] com::sun::star::table::CellAddress aDestination );
+
+ //-------------------------------------------------------------------------
+
+ /** pastes the contents of the clipboard at the
+ specified position on the sheet, using the specified format.
+ */
+ void pasteFormat( [in] com::sun::star::table::CellAddress aDestination,
+ [in] string aFormat );
+
+ //-------------------------------------------------------------------------
+
+ /** pastes clipboard data from a cell range into
+ another cell range.
+
+ <p>The contents of the clipboard must be from a cell range.</p>
+ */
+ void pasteCellRange( [in] com::sun::star::table::CellRangeAddress aDestination,
+ [in] com::sun::star::sheet::PasteOperation nOperation,
+ [in] short nContents,
+ [in] boolean bSkipEmpty,
+ [in] boolean bTranspose,
+ [in] boolean bAsLink,
+ [in] com::sun::star::sheet::CellInsertMode nInsert );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XSolver.idl b/offapi/com/sun/star/sheet/XSolver.idl
new file mode 100644
index 000000000000..aaf54ddb7586
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XSolver.idl
@@ -0,0 +1,84 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XSolver_idl__
+#define __com_sun_star_sheet_XSolver_idl__
+
+#ifndef __com_sun_star_sheet_XSpreadsheetDocument_idl__
+#include <com/sun/star/sheet/XSpreadsheetDocument.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_SolverConstraint_idl__
+#include <com/sun/star/sheet/SolverConstraint.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** allows to call a solver for a model that is defined by spreadsheet cells.
+ */
+interface XSolver: com::sun::star::uno::XInterface
+{
+ /// The spreadsheet document that contains the cells.
+ [attribute] XSpreadsheetDocument Document;
+
+ /// The address of the cell that contains the objective value.
+ [attribute] com::sun::star::table::CellAddress Objective;
+
+ /// The addresses of the cells that contain the variables.
+ [attribute] sequence< com::sun::star::table::CellAddress > Variables;
+
+ /// The constraints of the model.
+ [attribute] sequence< SolverConstraint > Constraints;
+
+ /// selects if the objective value is maximized or minimized.
+ [attribute] boolean Maximize;
+
+ /// executes the calculation and tries to find a solution.
+ void solve();
+
+ /// contains <TRUE/> if a solution was found.
+ [attribute, readonly] boolean Success;
+
+ /// contains the objective value for the solution, if a solution was found.
+ [attribute, readonly] double ResultValue;
+
+ /** contains the solution's value for each of the variables,
+ if a solution was found.
+ */
+ [attribute, readonly] sequence< double > Solution;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XSolverDescription.idl b/offapi/com/sun/star/sheet/XSolverDescription.idl
new file mode 100644
index 000000000000..0efe1e202e94
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XSolverDescription.idl
@@ -0,0 +1,65 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XSolverDescription_idl__
+#define __com_sun_star_sheet_XSolverDescription_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** gives access to user-visible strings for a solver.
+ */
+interface XSolverDescription: com::sun::star::uno::XInterface
+{
+ /** A user-visible name of the component.
+ */
+ [attribute, readonly] string ComponentDescription;
+
+ /** returns a short description for a property in the component's
+ <type scope="com::sun::star::beans">XPropertySet</type> interface.
+ */
+ string getPropertyDescription( [in] string aPropertyName );
+
+ /** After calling solve, a message describing the status
+ (explaining why no solution was found).
+ */
+ [attribute, readonly] string StatusDescription;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XSpreadsheet.idl b/offapi/com/sun/star/sheet/XSpreadsheet.idl
new file mode 100644
index 000000000000..3f7628ad5a4a
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XSpreadsheet.idl
@@ -0,0 +1,76 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XSpreadsheet_idl__
+#define __com_sun_star_sheet_XSpreadsheet_idl__
+
+#ifndef __com_sun_star_sheet_XSheetCellRange_idl__
+#include <com/sun/star/sheet/XSheetCellRange.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+ published interface XSheetCellCursor;
+
+//=============================================================================
+
+/** provides methods to create a cell range cursor.
+ */
+published interface XSpreadsheet: com::sun::star::sheet::XSheetCellRange
+{
+ //-------------------------------------------------------------------------
+
+ /** creates a cell cursor including the whole spreadsheet.
+
+ @see com::sun::star::sheet::SheetCellCursor
+ */
+ com::sun::star::sheet::XSheetCellCursor createCursor();
+
+ //-------------------------------------------------------------------------
+
+ /** creates a cell cursor to travel in the given range context.
+
+ @param aRange
+ the cell range for the cursor.
+
+ @see com::sun::star::sheet::SheetCellCursor
+ */
+ com::sun::star::sheet::XSheetCellCursor createCursorByRange(
+ [in] com::sun::star::sheet::XSheetCellRange aRange );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XSpreadsheetDocument.idl b/offapi/com/sun/star/sheet/XSpreadsheetDocument.idl
new file mode 100644
index 000000000000..a60248d22b75
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XSpreadsheetDocument.idl
@@ -0,0 +1,66 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XSpreadsheetDocument_idl__
+#define __com_sun_star_sheet_XSpreadsheetDocument_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XSpreadsheets_idl__
+#include <com/sun/star/sheet/XSpreadsheets.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides access to a collection of spreadsheets.
+
+ @see com::sun::star::sheet::SpreadsheetDocument
+ */
+published interface XSpreadsheetDocument: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** returns the collection of sheets in the document.
+
+ @see com::sun::star::sheet::Spreadsheets
+ */
+ com::sun::star::sheet::XSpreadsheets getSheets();
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XSpreadsheetView.idl b/offapi/com/sun/star/sheet/XSpreadsheetView.idl
new file mode 100644
index 000000000000..baefdb2359c7
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XSpreadsheetView.idl
@@ -0,0 +1,69 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_sheet_XSpreadsheetView_idl__
+#define __com_sun_star_sheet_XSpreadsheetView_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XSpreadsheet_idl__
+#include <com/sun/star/sheet/XSpreadsheet.idl>
+#endif
+
+
+//=============================================================================
+
+ module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** is the main interface of a <type>SpreadsheetView</type>. It
+ manages the active sheet within this view.
+ */
+published interface XSpreadsheetView: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** returns the sheet that is shown in the view.
+ */
+ com::sun::star::sheet::XSpreadsheet getActiveSheet();
+
+ //-------------------------------------------------------------------------
+
+ /** sets the sheet that is shown in the view.
+ */
+ void setActiveSheet( [in] com::sun::star::sheet::XSpreadsheet xActiveSheet );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XSpreadsheets.idl b/offapi/com/sun/star/sheet/XSpreadsheets.idl
new file mode 100644
index 000000000000..f50157768667
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XSpreadsheets.idl
@@ -0,0 +1,93 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XSpreadsheets_idl__
+#define __com_sun_star_sheet_XSpreadsheets_idl__
+
+#ifndef __com_sun_star_container_XNameContainer_idl__
+#include <com/sun/star/container/XNameContainer.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides methods to access the spreadsheets by name and to insert,
+ copy, remove and rearrange spreadsheets.
+
+ @see com::sun::star::sheet::Spreadsheets
+ */
+published interface XSpreadsheets: com::sun::star::container::XNameContainer
+{
+ //-------------------------------------------------------------------------
+
+ /** inserts a new sheet into the collection.
+
+ @param aName
+ the name of the new spreadsheet.
+ @param nPosition
+ the index of the new spreadsheet in the collection.
+ */
+ void insertNewByName( [in] string aName, [in] short nPosition );
+
+ //-------------------------------------------------------------------------
+
+ /** moves a sheet within the collection.
+
+ @param aName
+ the name of the spreadsheet to move.
+ @param nDestination
+ the new index of the spreadsheet in the collection.
+ */
+ void moveByName( [in] string aName, [in] short nDestination );
+
+ //-------------------------------------------------------------------------
+
+ /** copies a sheet within the collection.
+
+ @param aName
+ the name of the spreadsheet to copy.
+ @param aCopy
+ the name of the copy of the spreadsheet.
+ @param nDestination
+ the index of the copy in the collection.
+ */
+ void copyByName(
+ [in] string aName,
+ [in] string aCopy,
+ [in] short nDestination );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XSubTotalCalculatable.idl b/offapi/com/sun/star/sheet/XSubTotalCalculatable.idl
new file mode 100644
index 000000000000..c1c1524a14a5
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XSubTotalCalculatable.idl
@@ -0,0 +1,95 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XSubTotalCalculatable_idl__
+#define __com_sun_star_sheet_XSubTotalCalculatable_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XSubTotalDescriptor_idl__
+#include <com/sun/star/sheet/XSubTotalDescriptor.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** contains methods to handle a subtotal descriptor.
+
+ <p>The subtotal descriptor provides properties to set up the subtotal
+ function.</p>
+
+ @see com::sun::star::sheet::SheetCellRange
+ @see com::sun::star::sheet::SubTotalDescriptor
+ */
+published interface XSubTotalCalculatable: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** creates a subtotal descriptor.
+
+ @param bEmpty
+ if set to <TRUE/>, creates an empty descriptor. If set to
+ <FALSE/>, fills the descriptor with previous settings of the
+ current object (i.e. a database range).
+ */
+ com::sun::star::sheet::XSubTotalDescriptor createSubTotalDescriptor(
+ [in] boolean bEmpty );
+
+ //-------------------------------------------------------------------------
+
+ /** creates subtotals using the settings of the passed descriptor.
+
+ @param xDescriptor
+ the subtotal descriptor with the settings used for the subtotal
+ operation.
+
+ @param bReplace
+ if set to <TRUE/>, replaces previous subtotal results.
+ */
+ void applySubTotals(
+ [in] com::sun::star::sheet::XSubTotalDescriptor xDescriptor,
+ [in] boolean bReplace );
+
+ //-------------------------------------------------------------------------
+
+ /** removes the subtotals from the current object.
+ */
+ void removeSubTotals();
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XSubTotalDescriptor.idl b/offapi/com/sun/star/sheet/XSubTotalDescriptor.idl
new file mode 100644
index 000000000000..2a2d0afe1293
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XSubTotalDescriptor.idl
@@ -0,0 +1,80 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XSubTotalDescriptor_idl__
+#define __com_sun_star_sheet_XSubTotalDescriptor_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_SubTotalColumn_idl__
+#include <com/sun/star/sheet/SubTotalColumn.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides access to the collection of subtotal fields in a subtotal
+ descriptor.
+
+ @see com::sun::star::sheet::SubTotalDescriptor
+ */
+published interface XSubTotalDescriptor: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** adds a subtotal field definition to the descriptor.
+
+ @param aSubTotalColumns
+ a sequence of all columns used to calculate subtotal values.
+
+ @param nGroupColumn
+ specifies which column of the source range is used to group the
+ contents of the source data.
+ */
+ void addNew(
+ [in] sequence< com::sun::star::sheet::SubTotalColumn > aSubTotalColumns,
+ [in] long nGroupColumn );
+
+ //-------------------------------------------------------------------------
+
+ /** removes all subtotal field definitions from the descriptor.
+ */
+ void clear();
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XSubTotalField.idl b/offapi/com/sun/star/sheet/XSubTotalField.idl
new file mode 100644
index 000000000000..3af87e72df3c
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XSubTotalField.idl
@@ -0,0 +1,87 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XSubTotalField_idl__
+#define __com_sun_star_sheet_XSubTotalField_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_SubTotalColumn_idl__
+#include <com/sun/star/sheet/SubTotalColumn.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides access to the settings of a field in a subtotal descriptor.
+
+ @see com::sun::star::sheet::SubTotalField
+ @see com::sun::star::sheet::SubTotalDescriptor
+ */
+published interface XSubTotalField: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** returns the column by which entries are grouped.
+ */
+ long getGroupColumn();
+
+ //-------------------------------------------------------------------------
+
+ /** sets the column by which entries are grouped.
+ */
+ void setGroupColumn( [in] long nGroupColumn );
+
+ //-------------------------------------------------------------------------
+
+ /** returns the definitions of which columns should have subtotals
+ added to them.
+ */
+ sequence< com::sun::star::sheet::SubTotalColumn > getSubTotalColumns();
+
+ //-------------------------------------------------------------------------
+
+ /** sets the definitions of which columns should have subtotals
+ added to them.
+ */
+ void setSubTotalColumns(
+ [in] sequence< com::sun::star::sheet::SubTotalColumn >
+ aSubTotalColumns );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XUniqueCellFormatRangesSupplier.idl b/offapi/com/sun/star/sheet/XUniqueCellFormatRangesSupplier.idl
new file mode 100644
index 000000000000..73e758af6539
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XUniqueCellFormatRangesSupplier.idl
@@ -0,0 +1,77 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XUniqueCellFormatRangesSupplier_idl__
+#define __com_sun_star_sheet_XUniqueCellFormatRangesSupplier_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_container_XIndexAccess_idl__
+#include <com/sun/star/container/XIndexAccess.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides access to a collection of collections of equal-formatted
+ cell ranges.
+
+ @see com::sun::star::sheet::SheetCellRange
+ @see com::sun::star::sheet::SheetCellRanges
+ */
+published interface XUniqueCellFormatRangesSupplier: com::sun::star::uno::XInterface
+{
+ /** returns a collection of equal-formatted cell range collections.
+
+ <p>Each cell of the original range is contained in one of the
+ ranges (even unformatted cells). If there is a non-rectangular
+ equal-formatted cell area, it will be split into several
+ rectangular ranges.</p>
+
+ <p>All equal-formatted ranges are consolidated into one collection.
+ These collections are the members contained in a
+ <type>UniqueCellFormatRanges</type> collection.</p>
+
+ @returns
+ the collection of equal-formatted cell range collections.
+
+ @see com::sun::star::sheet::UniqueCellFormatRanges
+ */
+ com::sun::star::container::XIndexAccess getUniqueCellFormatRanges();
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XUsedAreaCursor.idl b/offapi/com/sun/star/sheet/XUsedAreaCursor.idl
new file mode 100644
index 000000000000..528b55c07a5c
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XUsedAreaCursor.idl
@@ -0,0 +1,78 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XUsedAreaCursor_idl__
+#define __com_sun_star_sheet_XUsedAreaCursor_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides methods to find the used area of the entire sheet.
+
+ <p>The used area is the smallest cell range that contains all cells
+ of the spreadsheet with any contents (values, text, formulas) or
+ visible formatting (borders and background color).</p>
+
+ @see com::sun::star::sheet::SheetCellCursor
+ */
+published interface XUsedAreaCursor: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** points the cursor to the start of the used area.
+
+ @param bExpand
+ <TRUE/> = expands the current cursor range,
+ <FALSE/> = sets size of the cursor to a single cell.
+ */
+ void gotoStartOfUsedArea( [in] boolean bExpand );
+
+ //-------------------------------------------------------------------------
+
+ /** points the cursor to the end of the used area.
+
+ @param bExpand
+ <TRUE/> = expands the current cursor range,
+ <FALSE/> = sets size of the cursor to a single cell.
+ */
+ void gotoEndOfUsedArea( [in] boolean bExpand );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XViewFreezable.idl b/offapi/com/sun/star/sheet/XViewFreezable.idl
new file mode 100644
index 000000000000..46464036e704
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XViewFreezable.idl
@@ -0,0 +1,75 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_sheet_XViewFreezable_idl__
+#define __com_sun_star_sheet_XViewFreezable_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+
+//=============================================================================
+
+ module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** enables a <type>SpreadsheetView</type> to freeze
+ columns and rows of the view.
+ */
+published interface XViewFreezable: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** returns <TRUE/> if the view has frozen panes.
+
+ <p>Only one of
+ <member>XViewSplitable::getIsWindowSplit()</member> and
+ <member>XViewFreezable::hasFrozenPanes()</member>
+ can be <TRUE/>.</p>
+ */
+ boolean hasFrozenPanes();
+
+ //-------------------------------------------------------------------------
+
+ /** freezes panes with the specified number of
+ columns and rows.
+
+ <p>To freeze only horizontally, specify nRows as 0.
+ To freeze only vertically, specify nColumns as 0.</p>
+ */
+ void freezeAtPosition( [in] long nColumns,
+ [in] long nRows );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XViewPane.idl b/offapi/com/sun/star/sheet/XViewPane.idl
new file mode 100644
index 000000000000..41f441e6a803
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XViewPane.idl
@@ -0,0 +1,89 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_sheet_XViewPane_idl__
+#define __com_sun_star_sheet_XViewPane_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellRangeAddress_idl__
+#include <com/sun/star/table/CellRangeAddress.idl>
+#endif
+
+
+//=============================================================================
+
+ module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents a pane in a view of a spreadsheet document.
+
+ @see com::sun::star::sheet::SpreadsheetViewPane
+ */
+published interface XViewPane: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** returns the first column that is visible in the pane.
+ */
+ long getFirstVisibleColumn();
+
+ //-------------------------------------------------------------------------
+
+ /** sets the first column that is visible in the pane.
+ */
+ void setFirstVisibleColumn( [in] long nFirstVisibleColumn );
+
+ //-------------------------------------------------------------------------
+
+ /** returns the first row that is visible in the pane.
+ */
+ long getFirstVisibleRow();
+
+ //-------------------------------------------------------------------------
+
+ /** sets the first row that is visible in the pane.
+ */
+ void setFirstVisibleRow( [in] long nFirstVisibleRow );
+
+ //-------------------------------------------------------------------------
+
+ /** returns the address of the cell range that consists of
+ the cells which are visible in the pane.
+ */
+ com::sun::star::table::CellRangeAddress getVisibleRange();
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XViewPanesSupplier.idl b/offapi/com/sun/star/sheet/XViewPanesSupplier.idl
new file mode 100644
index 000000000000..130498695c6e
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XViewPanesSupplier.idl
@@ -0,0 +1,64 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XViewPanesSupplier_idl__
+#define __com_sun_star_sheet_XViewPanesSupplier_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_container_XIndexAccess_idl__
+#include <com/sun/star/container/XIndexAccess.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** enables access to the panes in a view.
+
+ @deprecated
+ */
+published interface XViewPanesSupplier: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** returns the collection of panes in the view.
+ */
+ com::sun::star::container::XIndexAccess getViewPanes();
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XViewSplitable.idl b/offapi/com/sun/star/sheet/XViewSplitable.idl
new file mode 100644
index 000000000000..d5145addb9ee
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XViewSplitable.idl
@@ -0,0 +1,102 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_sheet_XViewSplitable_idl__
+#define __com_sun_star_sheet_XViewSplitable_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+
+//=============================================================================
+
+ module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** enables a <type>SpreadsheetView</type> to split the view.
+
+ @deprecated
+ */
+published interface XViewSplitable: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** returns <TRUE/> if the view is split
+ into individual panes.
+
+ <p>Only one of
+ <member>XViewSplitable::getIsWindowSplit()</member> and
+ <member>XViewFreezable::hasFrozenPanes()</member>
+ can be <TRUE/>.</p>
+ */
+ boolean getIsWindowSplit();
+
+ //-------------------------------------------------------------------------
+
+ /** returns the horizontal position in pixels where
+ the view is split.
+ */
+ long getSplitHorizontal();
+
+ //-------------------------------------------------------------------------
+
+ /** returns the vertical position in pixels where
+ the view is split.
+ */
+ long getSplitVertical();
+
+ //-------------------------------------------------------------------------
+
+ /** returns the column before which the view is split.
+ */
+ long getSplitColumn();
+
+ //-------------------------------------------------------------------------
+
+ /** returns the row before which the view is split.
+ */
+ long getSplitRow();
+
+ //-------------------------------------------------------------------------
+
+ /** splits the view at the specified position.
+
+ <p>To split only horizontally, specify <var>nPixelY</var> as 0.
+ To split only vertically, specify <var>nPixelX</var> as 0.</p>
+ */
+ void splitAtPosition( [in] long nPixelX,
+ [in] long nPixelY );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XVolatileResult.idl b/offapi/com/sun/star/sheet/XVolatileResult.idl
new file mode 100644
index 000000000000..9378e09472f0
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XVolatileResult.idl
@@ -0,0 +1,73 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XVolatileResult_idl__
+#define __com_sun_star_sheet_XVolatileResult_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_XResultListener_idl__
+#include <com/sun/star/sheet/XResultListener.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** provides methods to handle a volatile function result.
+
+ @see com::sun::star::sheet::VolatileResult
+ @see com::sun::star::sheet::ResultEvent
+ */
+published interface XVolatileResult: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** adds a listener to be notified when a new value is available.
+ */
+ [oneway] void addResultListener(
+ [in] com::sun::star::sheet::XResultListener aListener );
+
+ //-------------------------------------------------------------------------
+
+ /** removes the specified listener.
+ */
+ [oneway] void removeResultListener(
+ [in] com::sun::star::sheet::XResultListener aListener );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/_NamedRange.idl b/offapi/com/sun/star/sheet/_NamedRange.idl
new file mode 100644
index 000000000000..3218992d3d03
--- /dev/null
+++ b/offapi/com/sun/star/sheet/_NamedRange.idl
@@ -0,0 +1,73 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet__NamedRange_idl__
+#define __com_sun_star_sheet__NamedRange_idl__
+
+//=============================================================================
+
+ module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** @deprecated
+ @see com::sun::star::sheet::NamedRangeFlag
+ */
+published constants _NamedRange
+{
+ //-------------------------------------------------------------------------
+
+ /** The range contains filter criteria.
+ */
+ const long FILTER_CRITERIA = 1;
+
+ //-------------------------------------------------------------------------
+
+ /** The range can be used as a print range.
+ */
+ const long PRINT_AREA = 2;
+
+ //-------------------------------------------------------------------------
+
+ /** The range can be used as column headers for printing.
+ */
+ const long COLUMN_HEADER = 4;
+
+ //-------------------------------------------------------------------------
+
+ /** The range can be used as row headers for printing.
+ */
+ const long ROW_HEADER = 8;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/makefile.mk b/offapi/com/sun/star/sheet/makefile.mk
new file mode 100644
index 000000000000..65e8d5c40491
--- /dev/null
+++ b/offapi/com/sun/star/sheet/makefile.mk
@@ -0,0 +1,349 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+PRJ=..$/..$/..$/..
+
+PRJNAME=offapi
+
+TARGET=csssheet
+PACKAGE=com$/sun$/star$/sheet
+
+# --- Settings -----------------------------------------------------
+.INCLUDE : $(PRJ)$/util$/makefile.pmk
+
+# ------------------------------------------------------------------------
+
+IDLFILES=\
+ AccessibleCell.idl\
+ AccessibleCsvCell.idl\
+ AccessibleCsvRuler.idl\
+ AccessibleCsvTable.idl\
+ AccessiblePageHeaderFooterAreasView.idl\
+ AccessibleSpreadsheet.idl\
+ AccessibleSpreadsheetDocumentView.idl\
+ AccessibleSpreadsheetPageView.idl\
+ ActivationEvent.idl\
+ AddressConvention.idl\
+ AddIn.idl\
+ Border.idl\
+ CellAnnotation.idl\
+ CellAnnotationShape.idl\
+ CellAnnotations.idl\
+ CellAnnotationsEnumeration.idl\
+ CellAreaLink.idl\
+ CellAreaLinks.idl\
+ CellAreaLinksEnumeration.idl\
+ CellDeleteMode.idl\
+ CellFlags.idl\
+ CellFormatRanges.idl\
+ CellFormatRangesEnumeration.idl\
+ CellInsertMode.idl\
+ Cells.idl\
+ CellsEnumeration.idl\
+ ComplexReference.idl\
+ ConditionOperator.idl\
+ ConsolidationDescriptor.idl\
+ DDEItemInfo.idl\
+ DDELink.idl\
+ DDELinkInfo.idl\
+ DDELinkMode.idl\
+ DDELinks.idl\
+ DDELinksEnumeration.idl\
+ DataImportMode.idl\
+ DataPilotDescriptor.idl\
+ DataPilotField.idl\
+ DataPilotFieldAutoShowInfo.idl\
+ DataPilotFieldFilter.idl\
+ DataPilotFieldGroup.idl\
+ DataPilotFieldGroupBy.idl\
+ DataPilotFieldGroupEnumeration.idl\
+ DataPilotFieldGroupInfo.idl\
+ DataPilotFieldGroupItem.idl\
+ DataPilotFieldGroups.idl\
+ DataPilotFieldGroupsEnumeration.idl\
+ DataPilotFieldLayoutInfo.idl\
+ DataPilotFieldLayoutMode.idl\
+ DataPilotFieldOrientation.idl\
+ DataPilotFieldReference.idl\
+ DataPilotFieldReferenceItemType.idl\
+ DataPilotFieldReferenceType.idl\
+ DataPilotFieldShowItemsMode.idl\
+ DataPilotFieldSortInfo.idl\
+ DataPilotFieldSortMode.idl\
+ DataPilotFields.idl\
+ DataPilotFieldsEnumeration.idl\
+ DataPilotItem.idl\
+ DataPilotItems.idl\
+ DataPilotItemsEnumeration.idl\
+ DataPilotOutputRangeType.idl\
+ DataPilotSource.idl\
+ DataPilotSourceDimension.idl\
+ DataPilotSourceDimensions.idl\
+ DataPilotSourceHierarchies.idl\
+ DataPilotSourceHierarchy.idl\
+ DataPilotSourceLevel.idl\
+ DataPilotSourceLevels.idl\
+ DataPilotSourceMember.idl\
+ DataPilotSourceMembers.idl\
+ DataPilotTable.idl\
+ DataPilotTableHeaderData.idl\
+ DataPilotTablePositionData.idl\
+ DataPilotTablePositionType.idl\
+ DataPilotTableResultData.idl\
+ DataPilotTables.idl\
+ DataPilotTablesEnumeration.idl\
+ DataResult.idl\
+ DataResultFlags.idl\
+ DatabaseImportDescriptor.idl\
+ DatabaseRange.idl\
+ DatabaseRanges.idl\
+ DatabaseRangesEnumeration.idl\
+ DimensionFlags.idl\
+ DocumentSettings.idl\
+ ExternalDocLink.idl\
+ ExternalDocLinks.idl\
+ ExternalLinkType.idl\
+ ExternalLinkInfo.idl\
+ ExternalReference.idl\
+ ExternalSheetCache.idl\
+ FillDateMode.idl\
+ FillDirection.idl\
+ FillMode.idl\
+ FilterConnection.idl\
+ FilterFormulaParser.idl\
+ FilterOperator.idl\
+ FilterOperator2.idl\
+ FormulaLanguage.idl\
+ FormulaMapGroup.idl\
+ FormulaMapGroupSpecialOffset.idl\
+ FormulaOpCodeMapEntry.idl\
+ FormulaParser.idl\
+ FormulaResult.idl\
+ FormulaToken.idl\
+ FunctionAccess.idl\
+ FunctionArgument.idl\
+ FunctionCategory.idl\
+ FunctionDescription.idl\
+ FunctionDescriptionEnumeration.idl\
+ FunctionDescriptions.idl\
+ GeneralFunction.idl\
+ GlobalSheetSettings.idl\
+ GoalResult.idl\
+ HeaderFooterContent.idl\
+ LabelRange.idl\
+ LabelRanges.idl\
+ LabelRangesEnumeration.idl\
+ LocalizedName.idl\
+ MemberResult.idl\
+ MemberResultFlags.idl\
+ MoveDirection.idl\
+ NamedRange.idl\
+ NamedRangeFlag.idl\
+ NamedRanges.idl\
+ NamedRangesEnumeration.idl\
+ NoConvergenceException.idl\
+ PasteOperation.idl\
+ RangeSelectionArguments.idl\
+ RangeSelectionEvent.idl\
+ RecentFunctions.idl\
+ ReferenceFlags.idl\
+ ResultEvent.idl\
+ Scenario.idl\
+ Scenarios.idl\
+ ScenariosEnumeration.idl\
+ Shape.idl\
+ SheetCell.idl\
+ SheetCellCursor.idl\
+ SheetCellRange.idl\
+ SheetCellRanges.idl\
+ SheetCellRangesEnumeration.idl\
+ SheetFilterDescriptor.idl\
+ SheetLink.idl\
+ SheetLinkMode.idl\
+ SheetLinks.idl\
+ SheetLinksEnumeration.idl\
+ SheetRangesQuery.idl\
+ SheetSortDescriptor.idl\
+ SheetSortDescriptor2.idl\
+ SingleReference.idl\
+ Solver.idl\
+ SolverConstraint.idl\
+ SolverConstraintOperator.idl\
+ Spreadsheet.idl\
+ SpreadsheetDocument.idl\
+ SpreadsheetDocumentSettings.idl\
+ SpreadsheetDrawPage.idl\
+ SpreadsheetView.idl\
+ SpreadsheetViewPane.idl\
+ SpreadsheetViewPanesEnumeration.idl\
+ SpreadsheetViewSettings.idl\
+ Spreadsheets.idl\
+ SpreadsheetsEnumeration.idl\
+ StatusBarFunction.idl\
+ SubTotalColumn.idl\
+ SubTotalDescriptor.idl\
+ SubTotalField.idl\
+ SubTotalFieldsEnumeration.idl\
+ TableAutoFormat.idl\
+ TableAutoFormatEnumeration.idl\
+ TableAutoFormatField.idl\
+ TableAutoFormats.idl\
+ TableAutoFormatsEnumeration.idl\
+ TableCellStyle.idl\
+ TableCellStyle.idl\
+ TableConditionalEntry.idl\
+ TableConditionalEntryEnumeration.idl\
+ TableConditionalFormat.idl\
+ TableFilterField.idl\
+ TableFilterField2.idl\
+ TableOperationMode.idl\
+ TablePageBreakData.idl\
+ TablePageStyle.idl\
+ TableValidation.idl\
+ TableValidationVisibility.idl\
+ UniqueCellFormatRanges.idl\
+ UniqueCellFormatRangesEnumeration.idl\
+ ValidationAlertStyle.idl\
+ ValidationType.idl\
+ VolatileResult.idl\
+ XActivationBroadcaster.idl\
+ XActivationEventListener.idl\
+ XAddIn.idl\
+ XAreaLink.idl\
+ XAreaLinks.idl\
+ XArrayFormulaRange.idl\
+ XArrayFormulaTokens.idl\
+ XCalculatable.idl\
+ XCellAddressable.idl\
+ XCellFormatRangesSupplier.idl\
+ XCellRangeAddressable.idl\
+ XCellRangeData.idl\
+ XCellRangeFormula.idl\
+ XCellRangeMovement.idl\
+ XCellRangeReferrer.idl\
+ XCellRangesAccess.idl\
+ XCellRangesQuery.idl\
+ XCellSeries.idl\
+ XCompatibilityNames.idl\
+ XConsolidatable.idl\
+ XConsolidationDescriptor.idl\
+ XDDELink.idl\
+ XDDELinkResults.idl\
+ XDDELinks.idl\
+ XDataPilotDataLayoutFieldSupplier.idl\
+ XDataPilotDescriptor.idl\
+ XDataPilotField.idl\
+ XDataPilotFieldGrouping.idl\
+ XDataPilotMemberResults.idl\
+ XDataPilotResults.idl\
+ XDataPilotTable.idl\
+ XDataPilotTable2.idl\
+ XDataPilotTables.idl\
+ XDataPilotTablesSupplier.idl\
+ XDatabaseRange.idl\
+ XDatabaseRanges.idl\
+ XDimensionsSupplier.idl\
+ XDocumentAuditing.idl\
+ XDrillDownDataSupplier.idl\
+ XEnhancedMouseClickBroadcaster.idl\
+ XExternalDocLink.idl\
+ XExternalDocLinks.idl\
+ XExternalSheetCache.idl\
+ XExternalSheetName.idl\
+ XFillAcrossSheet.idl\
+ XFilterFormulaParser.idl\
+ XFormulaOpCodeMapper.idl\
+ XFormulaParser.idl\
+ XFormulaQuery.idl\
+ XFormulaTokens.idl\
+ XFunctionAccess.idl\
+ XFunctionDescriptions.idl\
+ XGoalSeek.idl\
+ XHeaderFooterContent.idl\
+ XHierarchiesSupplier.idl\
+ XLabelRange.idl\
+ XLabelRanges.idl\
+ XLevelsSupplier.idl\
+ XMembersSupplier.idl\
+ XMultiFormulaTokens.idl\
+ XMultipleOperation.idl\
+ XNamedRange.idl\
+ XNamedRanges.idl\
+ XPrintAreas.idl\
+ XRangeSelection.idl\
+ XRangeSelectionChangeListener.idl\
+ XRangeSelectionListener.idl\
+ XRecentFunctions.idl\
+ XResultListener.idl\
+ XScenario.idl\
+ XScenarioEnhanced.idl\
+ XScenarios.idl\
+ XScenariosSupplier.idl\
+ XSheetAnnotation.idl\
+ XSheetAnnotationAnchor.idl\
+ XSheetAnnotationShapeSupplier.idl\
+ XSheetAnnotations.idl\
+ XSheetAnnotationsSupplier.idl\
+ XSheetAuditing.idl\
+ XSheetCellCursor.idl\
+ XSheetCellRange.idl\
+ XSheetCellRangeContainer.idl\
+ XSheetCellRanges.idl\
+ XSheetCondition.idl\
+ XSheetConditionalEntries.idl\
+ XSheetConditionalEntry.idl\
+ XSheetFilterDescriptor.idl\
+ XSheetFilterDescriptor2.idl\
+ XSheetFilterable.idl\
+ XSheetFilterableEx.idl\
+ XSheetLinkable.idl\
+ XSheetOperation.idl\
+ XSheetOutline.idl\
+ XSheetPageBreak.idl\
+ XSheetPastable.idl\
+ XSolver.idl\
+ XSolverDescription.idl\
+ XSpreadsheet.idl\
+ XSpreadsheetDocument.idl\
+ XSpreadsheetView.idl\
+ XSpreadsheets.idl\
+ XSubTotalCalculatable.idl\
+ XSubTotalDescriptor.idl\
+ XSubTotalField.idl\
+ XUniqueCellFormatRangesSupplier.idl\
+ XUsedAreaCursor.idl\
+ XViewFreezable.idl\
+ XViewPane.idl\
+ XViewPanesSupplier.idl\
+ XViewSplitable.idl\
+ XVolatileResult.idl\
+ _NamedRange.idl
+
+# ------------------------------------------------------------------
+
+.INCLUDE : target.mk
+.INCLUDE : $(PRJ)$/util$/target.pmk