summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Holesovsky <kendy@suse.cz>2011-03-23 16:59:59 +0100
committerJan Holesovsky <kendy@suse.cz>2011-03-23 16:59:59 +0100
commit4be7cca60bc7cc0a066b7384d56624266dc0dfcf (patch)
tree990b1fda00fca6f26ff74fd29552687b4e3c37ed
parent79a6c0f8a28b43c36c3b02dc5e116f2d17e92ef0 (diff)
parenta24842b43a687808376f69d4bdbb45fcddde73c4 (diff)
Merge commit 'ooo/DEV300_m103'
Conflicts: codemaker/source/bonobowrappermaker/corbaoptions.cxx codemaker/source/cppumaker/cppuoptions.cxx codemaker/source/cunomaker/cunooptions.cxx codemaker/source/idlmaker/idloptions.cxx codemaker/source/javamaker/javaoptions.cxx cppu/source/typelib/typelib.cxx idlc/source/options.cxx offapi/com/sun/star/util/PathSubstitution.idl offapi/drafts/com/sun/star/form/ListEntryEvent.idl offapi/drafts/com/sun/star/form/XBindableValue.idl offapi/drafts/com/sun/star/form/XListEntryListener.idl offapi/drafts/com/sun/star/form/XListEntrySink.idl offapi/drafts/com/sun/star/form/XListEntrySource.idl offapi/drafts/com/sun/star/form/XValueBinding.idl registry/tools/checksingleton.cxx registry/tools/options.hxx registry/tools/regcompare.cxx registry/tools/regmerge.cxx sal/cppunittester/cppunittester.cxx sal/osl/unx/socket.c sal/osl/w32/diagnose.c sal/prj/d.lst sal/rtl/source/alloc_fini.cxx sal/rtl/source/alloc_global.c sal/rtl/source/makefile.mk
-rwxr-xr-x[-rw-r--r--]cli_ure/version/version.txt24
-rw-r--r--codemaker/source/cppumaker/cppuoptions.cxx18
-rw-r--r--codemaker/source/javamaker/javaoptions.cxx18
-rw-r--r--cppu/source/typelib/typelib.cxx41
-rw-r--r--idlc/inc/idlc/idlctypes.hxx2
-rw-r--r--idlc/inc/idlc/options.hxx17
-rw-r--r--idlc/source/astexpression.cxx21
-rw-r--r--idlc/source/idlcmain.cxx19
-rw-r--r--idlc/source/options.cxx544
-rw-r--r--idlc/source/preproc/eval.c15
-rw-r--r--idlc/source/preproc/lex.c10
-rw-r--r--idlc/source/preproc/unix.c1
-rw-r--r--offapi/com/sun/star/accessibility/XAccessibleMultiLineText.idl2
-rw-r--r--offapi/com/sun/star/animations/XAnimationListener.idl2
-rw-r--r--offapi/com/sun/star/awt/EnhancedMouseEvent.idl2
-rw-r--r--offapi/com/sun/star/awt/UnoControlButtonModel.idl12
-rw-r--r--offapi/com/sun/star/awt/UnoControlCheckBoxModel.idl8
-rw-r--r--offapi/com/sun/star/awt/UnoControlComboBoxModel.idl4
-rw-r--r--offapi/com/sun/star/awt/UnoControlContainerModel.idl2
-rw-r--r--offapi/com/sun/star/awt/UnoControlCurrencyFieldModel.idl10
-rw-r--r--offapi/com/sun/star/awt/UnoControlDateFieldModel.idl12
-rw-r--r--offapi/com/sun/star/awt/UnoControlDialogModel.idl6
-rw-r--r--offapi/com/sun/star/awt/UnoControlDialogModelProvider.idl2
-rw-r--r--offapi/com/sun/star/awt/UnoControlEditModel.idl14
-rw-r--r--offapi/com/sun/star/awt/UnoControlFileControlModel.idl6
-rw-r--r--offapi/com/sun/star/awt/UnoControlFixedHyperlinkModel.idl4
-rw-r--r--offapi/com/sun/star/awt/UnoControlFixedTextModel.idl4
-rw-r--r--offapi/com/sun/star/awt/UnoControlFormattedFieldModel.idl10
-rw-r--r--offapi/com/sun/star/awt/UnoControlImageControlModel.idl2
-rw-r--r--offapi/com/sun/star/awt/UnoControlListBoxModel.idl2
-rw-r--r--offapi/com/sun/star/awt/UnoControlNumericFieldModel.idl10
-rw-r--r--offapi/com/sun/star/awt/UnoControlPatternFieldModel.idl6
-rw-r--r--offapi/com/sun/star/awt/UnoControlProgressBarModel.idl2
-rw-r--r--offapi/com/sun/star/awt/UnoControlRadioButtonModel.idl8
-rw-r--r--offapi/com/sun/star/awt/UnoControlScrollBarModel.idl12
-rwxr-xr-x[-rw-r--r--]offapi/com/sun/star/awt/UnoControlSpinButtonModel.idl2
-rw-r--r--offapi/com/sun/star/awt/UnoControlTimeFieldModel.idl12
-rw-r--r--offapi/com/sun/star/awt/XEnhancedMouseClickHandler.idl2
-rw-r--r--offapi/com/sun/star/awt/grid/DefaultGridColumnModel.idl2
-rw-r--r--offapi/com/sun/star/awt/grid/DefaultGridDataModel.idl2
-rw-r--r--offapi/com/sun/star/awt/grid/GridColumn.idl2
-rw-r--r--offapi/com/sun/star/awt/grid/GridColumnEvent.idl2
-rw-r--r--offapi/com/sun/star/awt/grid/GridDataEvent.idl2
-rw-r--r--offapi/com/sun/star/awt/grid/GridInvalidDataException.idl2
-rw-r--r--offapi/com/sun/star/awt/grid/GridInvalidModelException.idl2
-rw-r--r--offapi/com/sun/star/awt/grid/UnoControlGrid.idl2
-rw-r--r--offapi/com/sun/star/awt/grid/UnoControlGridModel.idl2
-rw-r--r--offapi/com/sun/star/awt/grid/XGridColumn.idl2
-rw-r--r--offapi/com/sun/star/awt/grid/XGridColumnListener.idl2
-rw-r--r--offapi/com/sun/star/awt/grid/XGridColumnModel.idl2
-rw-r--r--offapi/com/sun/star/awt/grid/XGridControl.idl2
-rw-r--r--offapi/com/sun/star/awt/grid/XGridDataListener.idl2
-rw-r--r--offapi/com/sun/star/awt/grid/XGridDataModel.idl2
-rw-r--r--offapi/com/sun/star/configuration/DefaultProvider.idl4
-rw-r--r--offapi/com/sun/star/configuration/Update.idl2
-rw-r--r--offapi/com/sun/star/configuration/XUpdate.idl2
-rw-r--r--offapi/com/sun/star/configuration/backend/InteractionHandler.idl2
-rw-r--r--offapi/com/sun/star/configuration/backend/Layer.idl2
-rw-r--r--offapi/com/sun/star/configuration/backend/LayerFilter.idl2
-rw-r--r--offapi/com/sun/star/configuration/backend/MergeRecoveryRequest.idl2
-rw-r--r--offapi/com/sun/star/configuration/backend/Schema.idl2
-rw-r--r--offapi/com/sun/star/configuration/backend/StratumCreationException.idl2
-rw-r--r--offapi/com/sun/star/deployment/DeploymentException.idl2
-rw-r--r--offapi/com/sun/star/deployment/ExtensionManager.idl2
-rw-r--r--offapi/com/sun/star/deployment/ExtensionRemovedException.idl2
-rw-r--r--offapi/com/sun/star/deployment/InvalidRemovedParameterException.idl2
-rw-r--r--offapi/com/sun/star/deployment/PackageRegistryBackend.idl2
-rw-r--r--offapi/com/sun/star/deployment/PlatformException.idl2
-rw-r--r--offapi/com/sun/star/deployment/XExtensionManager.idl2
-rwxr-xr-xoffapi/com/sun/star/deployment/XPackage.idl4
-rw-r--r--offapi/com/sun/star/deployment/XPackageManager.idl2
-rw-r--r--offapi/com/sun/star/deployment/XPackageManagerFactory.idl2
-rw-r--r--offapi/com/sun/star/deployment/XPackageRegistry.idl2
-rw-r--r--offapi/com/sun/star/deployment/XPackageTypeInfo.idl2
-rw-r--r--offapi/com/sun/star/deployment/thePackageManagerFactory.idl2
-rw-r--r--offapi/com/sun/star/deployment/ui/PackageManagerDialog.idl2
-rw-r--r--offapi/com/sun/star/deployment/ui/UpdateRequiredDialog.idl2
-rw-r--r--offapi/com/sun/star/document/CorruptedFilterConfigurationException.idl2
-rw-r--r--offapi/com/sun/star/document/DocumentEvent.idl2
-rw-r--r--offapi/com/sun/star/document/XDocumentEventBroadcaster.idl2
-rw-r--r--offapi/com/sun/star/document/XDocumentEventListener.idl2
-rw-r--r--offapi/com/sun/star/document/XMLBasicExporter.idl2
-rw-r--r--offapi/com/sun/star/document/XMLBasicImporter.idl2
-rw-r--r--offapi/com/sun/star/document/XMLOasisBasicExporter.idl2
-rw-r--r--offapi/com/sun/star/document/XMLOasisBasicImporter.idl2
-rw-r--r--offapi/com/sun/star/form/FormComponent.idl2
-rw-r--r--offapi/com/sun/star/form/XErrorListener.idl1
-rw-r--r--offapi/com/sun/star/form/component/GridControl.idl2
-rw-r--r--offapi/com/sun/star/form/inspection/DefaultFormComponentInspectorModel.idl4
-rw-r--r--offapi/com/sun/star/form/runtime/FeatureState.idl2
-rw-r--r--offapi/com/sun/star/form/runtime/FilterEvent.idl2
-rw-r--r--offapi/com/sun/star/form/runtime/FormFeature.idl2
-rw-r--r--offapi/com/sun/star/form/runtime/FormOperations.idl2
-rw-r--r--offapi/com/sun/star/form/runtime/XFeatureInvalidation.idl2
-rw-r--r--offapi/com/sun/star/form/runtime/XFilterController.idl2
-rw-r--r--offapi/com/sun/star/form/runtime/XFilterControllerListener.idl2
-rw-r--r--offapi/com/sun/star/form/runtime/XFormController.idl2
-rw-r--r--offapi/com/sun/star/form/runtime/XFormOperations.idl2
-rw-r--r--offapi/com/sun/star/frame/CommandGroup.idl2
-rw-r--r--offapi/com/sun/star/frame/DispatchInformation.idl2
-rw-r--r--offapi/com/sun/star/frame/Frame.idl2
-rw-r--r--offapi/com/sun/star/frame/LayoutManager.idl2
-rw-r--r--offapi/com/sun/star/frame/LayoutManagerEvents.idl2
-rw-r--r--offapi/com/sun/star/frame/ModuleManager.idl2
-rw-r--r--offapi/com/sun/star/frame/PopupMenuController.idl2
-rw-r--r--offapi/com/sun/star/frame/PopupMenuControllerFactory.idl2
-rw-r--r--offapi/com/sun/star/frame/StatusbarController.idl2
-rw-r--r--offapi/com/sun/star/frame/StatusbarControllerFactory.idl2
-rw-r--r--offapi/com/sun/star/frame/ToolbarController.idl2
-rw-r--r--offapi/com/sun/star/frame/TransientDocumentsDocumentContentFactory.idl2
-rw-r--r--offapi/com/sun/star/frame/UnknownModuleException.idl2
-rw-r--r--offapi/com/sun/star/frame/XDispatchInformationProvider.idl2
-rw-r--r--offapi/com/sun/star/frame/XInplaceLayout.idl2
-rw-r--r--offapi/com/sun/star/frame/XLayoutManager.idl2
-rw-r--r--offapi/com/sun/star/frame/XLayoutManagerEventBroadcaster.idl2
-rw-r--r--offapi/com/sun/star/frame/XLayoutManagerListener.idl2
-rw-r--r--offapi/com/sun/star/frame/XMenuBarAcceptor.idl2
-rw-r--r--offapi/com/sun/star/frame/XMenuBarMergingAcceptor.idl2
-rw-r--r--offapi/com/sun/star/frame/XModule.idl2
-rw-r--r--offapi/com/sun/star/frame/XModuleManager.idl2
-rw-r--r--offapi/com/sun/star/frame/XPopupMenuController.idl2
-rw-r--r--offapi/com/sun/star/frame/XStatusbarController.idl2
-rw-r--r--offapi/com/sun/star/frame/XSubToolbarController.idl2
-rw-r--r--offapi/com/sun/star/frame/XSynchronousDispatch.idl2
-rw-r--r--offapi/com/sun/star/frame/XToolbarController.idl2
-rw-r--r--offapi/com/sun/star/frame/XToolbarControllerListener.idl2
-rw-r--r--offapi/com/sun/star/frame/XTransientDocumentsDocumentContentFactory.idl2
-rw-r--r--offapi/com/sun/star/geometry/AffineMatrix2D.idl2
-rw-r--r--offapi/com/sun/star/geometry/AffineMatrix3D.idl2
-rw-r--r--offapi/com/sun/star/geometry/EllipticalArc.idl2
-rw-r--r--offapi/com/sun/star/geometry/IntegerBezierSegment2D.idl2
-rw-r--r--offapi/com/sun/star/geometry/IntegerPoint2D.idl2
-rw-r--r--offapi/com/sun/star/geometry/IntegerRectangle2D.idl2
-rw-r--r--offapi/com/sun/star/geometry/IntegerSize2D.idl2
-rw-r--r--offapi/com/sun/star/geometry/Matrix2D.idl2
-rw-r--r--offapi/com/sun/star/geometry/RealBezierSegment2D.idl2
-rw-r--r--offapi/com/sun/star/geometry/RealPoint2D.idl2
-rw-r--r--offapi/com/sun/star/geometry/RealRectangle2D.idl2
-rw-r--r--offapi/com/sun/star/geometry/RealRectangle3D.idl2
-rw-r--r--offapi/com/sun/star/geometry/RealSize2D.idl2
-rw-r--r--offapi/com/sun/star/geometry/XMapping2D.idl2
-rw-r--r--offapi/com/sun/star/i18n/OrdinalSuffix.idl2
-rw-r--r--offapi/com/sun/star/i18n/TextConversionOption.idl2
-rw-r--r--offapi/com/sun/star/i18n/XOrdinalSuffix.idl2
-rw-r--r--offapi/com/sun/star/linguistic2/ConversionDictionary.idl2
-rw-r--r--offapi/com/sun/star/linguistic2/ConversionDictionaryType.idl2
-rw-r--r--offapi/com/sun/star/linguistic2/ConversionPropertyType.idl2
-rw-r--r--offapi/com/sun/star/linguistic2/XConversionPropertyType.idl2
-rw-r--r--offapi/com/sun/star/mail/MailAttachment.idl2
-rw-r--r--offapi/com/sun/star/mail/MailException.idl2
-rw-r--r--offapi/com/sun/star/mail/MailMessage.idl2
-rw-r--r--offapi/com/sun/star/mail/MailServer.idl2
-rw-r--r--offapi/com/sun/star/mail/MailServiceProvider.idl2
-rw-r--r--offapi/com/sun/star/mail/MailServiceType.idl2
-rw-r--r--offapi/com/sun/star/mail/NoMailServiceProviderException.idl2
-rw-r--r--offapi/com/sun/star/mail/NoMailTransportProviderException.idl2
-rw-r--r--offapi/com/sun/star/mail/SendMailMessageFailedException.idl2
-rw-r--r--offapi/com/sun/star/mail/XAuthenticator.idl2
-rw-r--r--offapi/com/sun/star/mail/XConnectionListener.idl2
-rw-r--r--offapi/com/sun/star/mail/XMailMessage.idl2
-rw-r--r--offapi/com/sun/star/mail/XMailServer.idl2
-rw-r--r--offapi/com/sun/star/mail/XMailService.idl2
-rw-r--r--offapi/com/sun/star/mail/XMailServiceProvider.idl2
-rw-r--r--offapi/com/sun/star/mail/XSmtpService.idl2
-rw-r--r--offapi/com/sun/star/rendering/AnimationAttributes.idl2
-rw-r--r--offapi/com/sun/star/rendering/AnimationRepeat.idl2
-rw-r--r--offapi/com/sun/star/rendering/CanvasFactory.idl2
-rw-r--r--offapi/com/sun/star/rendering/Caret.idl2
-rw-r--r--offapi/com/sun/star/rendering/CompositeOperation.idl2
-rw-r--r--offapi/com/sun/star/rendering/EmphasisMark.idl2
-rw-r--r--offapi/com/sun/star/rendering/FillRule.idl2
-rw-r--r--offapi/com/sun/star/rendering/FloatingPointBitmapFormat.idl2
-rw-r--r--offapi/com/sun/star/rendering/FloatingPointBitmapLayout.idl2
-rw-r--r--offapi/com/sun/star/rendering/FontInfo.idl2
-rw-r--r--offapi/com/sun/star/rendering/FontMetrics.idl2
-rw-r--r--offapi/com/sun/star/rendering/FontRequest.idl2
-rw-r--r--offapi/com/sun/star/rendering/IntegerBitmapLayout.idl2
-rw-r--r--offapi/com/sun/star/rendering/InterpolationMode.idl2
-rw-r--r--offapi/com/sun/star/rendering/PathCapType.idl2
-rw-r--r--offapi/com/sun/star/rendering/PathJoinType.idl2
-rw-r--r--offapi/com/sun/star/rendering/RenderState.idl2
-rw-r--r--offapi/com/sun/star/rendering/RenderingIntent.idl2
-rw-r--r--offapi/com/sun/star/rendering/RepaintResult.idl2
-rw-r--r--offapi/com/sun/star/rendering/StringContext.idl2
-rw-r--r--offapi/com/sun/star/rendering/TextDirection.idl2
-rw-r--r--offapi/com/sun/star/rendering/TextHit.idl2
-rw-r--r--offapi/com/sun/star/rendering/Texture.idl2
-rw-r--r--offapi/com/sun/star/rendering/TexturingMode.idl2
-rw-r--r--offapi/com/sun/star/rendering/ViewState.idl2
-rw-r--r--offapi/com/sun/star/rendering/VolatileContentDestroyedException.idl2
-rw-r--r--offapi/com/sun/star/rendering/XAnimatedSprite.idl2
-rw-r--r--offapi/com/sun/star/rendering/XAnimation.idl2
-rw-r--r--offapi/com/sun/star/rendering/XBezierPolyPolygon2D.idl2
-rw-r--r--offapi/com/sun/star/rendering/XBitmap.idl2
-rw-r--r--offapi/com/sun/star/rendering/XBitmapCanvas.idl2
-rw-r--r--offapi/com/sun/star/rendering/XBitmapPalette.idl2
-rw-r--r--offapi/com/sun/star/rendering/XBufferController.idl2
-rw-r--r--offapi/com/sun/star/rendering/XCachedPrimitive.idl2
-rw-r--r--offapi/com/sun/star/rendering/XCanvas.idl2
-rw-r--r--offapi/com/sun/star/rendering/XIntegerBitmap.idl2
-rw-r--r--offapi/com/sun/star/rendering/XLinePolyPolygon2D.idl2
-rw-r--r--offapi/com/sun/star/rendering/XPolyPolygon2D.idl2
-rw-r--r--offapi/com/sun/star/rendering/XTextLayout.idl2
-rw-r--r--offapi/com/sun/star/report/XReportControlFormat.idl2
-rw-r--r--offapi/com/sun/star/resource/OfficeResourceLoader.idl2
-rw-r--r--offapi/com/sun/star/script/browse/BrowseNode.idl2
-rw-r--r--offapi/com/sun/star/script/browse/BrowseNodeFactory.idl4
-rw-r--r--offapi/com/sun/star/sdb/DatabaseContext.idl2
-rw-r--r--offapi/com/sun/star/sdb/DatabaseDocument.idl2
-rw-r--r--offapi/com/sun/star/sdb/DocumentSaveRequest.idl2
-rw-r--r--offapi/com/sun/star/sdb/OfficeDatabaseDocument.idl2
-rw-r--r--offapi/com/sun/star/sdb/XDatabaseRegistrations.idl2
-rw-r--r--offapi/com/sun/star/sdb/XDatabaseRegistrationsListener.idl2
-rw-r--r--offapi/com/sun/star/sdb/XInteractionDocumentSave.idl2
-rw-r--r--offapi/com/sun/star/sdb/application/DatabaseObject.idl2
-rw-r--r--offapi/com/sun/star/sdb/application/XDatabaseDocumentUI.idl2
-rw-r--r--offapi/com/sun/star/sdb/application/XTableUIProvider.idl2
-rw-r--r--offapi/com/sun/star/sdbc/DataType.idl2
-rw-r--r--offapi/com/sun/star/security/SerialNumberAdapter.idl2
-rw-r--r--offapi/com/sun/star/sheet/ActivationEvent.idl2
-rw-r--r--offapi/com/sun/star/sheet/CellAreaLink.idl2
-rw-r--r--offapi/com/sun/star/sheet/DDEItemInfo.idl2
-rw-r--r--offapi/com/sun/star/sheet/DDELinkInfo.idl2
-rw-r--r--offapi/com/sun/star/sheet/DataPilotDescriptor.idl6
-rw-r--r--offapi/com/sun/star/sheet/DataPilotItem.idl2
-rw-r--r--offapi/com/sun/star/sheet/DataPilotOutputRangeType.idl2
-rw-r--r--offapi/com/sun/star/sheet/DataPilotSource.idl6
-rw-r--r--offapi/com/sun/star/sheet/DataPilotSourceMember.idl2
-rw-r--r--offapi/com/sun/star/sheet/DataPilotTable.idl2
-rw-r--r--offapi/com/sun/star/sheet/DataPilotTableHeaderData.idl2
-rw-r--r--offapi/com/sun/star/sheet/DataPilotTablePositionData.idl2
-rw-r--r--offapi/com/sun/star/sheet/DataPilotTablePositionType.idl2
-rw-r--r--offapi/com/sun/star/sheet/DataPilotTableResultData.idl2
-rw-r--r--offapi/com/sun/star/sheet/DatabaseImportDescriptor.idl4
-rw-r--r--offapi/com/sun/star/sheet/DatabaseRange.idl4
-rw-r--r--offapi/com/sun/star/sheet/ExternalDocLink.idl2
-rw-r--r--offapi/com/sun/star/sheet/ExternalDocLinks.idl2
-rw-r--r--offapi/com/sun/star/sheet/ExternalLinkInfo.idl2
-rw-r--r--offapi/com/sun/star/sheet/ExternalLinkType.idl2
-rw-r--r--offapi/com/sun/star/sheet/ExternalSheetCache.idl2
-rw-r--r--offapi/com/sun/star/sheet/FormulaParser.idl2
-rw-r--r--offapi/com/sun/star/sheet/SheetCell.idl2
-rw-r--r--offapi/com/sun/star/sheet/SheetCellRange.idl2
-rw-r--r--offapi/com/sun/star/sheet/TablePageStyle.idl4
-rw-r--r--offapi/com/sun/star/sheet/XActivationBroadcaster.idl2
-rw-r--r--offapi/com/sun/star/sheet/XActivationEventListener.idl2
-rw-r--r--offapi/com/sun/star/sheet/XDataPilotTable2.idl2
-rw-r--r--offapi/com/sun/star/sheet/XDrillDownDataSupplier.idl2
-rw-r--r--offapi/com/sun/star/sheet/XEnhancedMouseClickBroadcaster.idl2
-rw-r--r--offapi/com/sun/star/sheet/XExternalDocLink.idl2
-rw-r--r--offapi/com/sun/star/sheet/XExternalDocLinks.idl2
-rw-r--r--offapi/com/sun/star/sheet/XExternalSheetCache.idl2
-rw-r--r--offapi/com/sun/star/sheet/XScenarioEnhanced.idl2
-rw-r--r--offapi/com/sun/star/smarttags/SmartTagAction.idl2
-rw-r--r--offapi/com/sun/star/smarttags/SmartTagRecognizer.idl2
-rw-r--r--offapi/com/sun/star/smarttags/SmartTagRecognizerMode.idl2
-rw-r--r--offapi/com/sun/star/smarttags/XSmartTagAction.idl2
-rw-r--r--offapi/com/sun/star/smarttags/XSmartTagRecognizer.idl2
-rw-r--r--offapi/com/sun/star/style/CharacterProperties.idl2
-rw-r--r--offapi/com/sun/star/style/NumberingType.idl2
-rw-r--r--offapi/com/sun/star/task/XRestartManager.idl2
-rw-r--r--offapi/com/sun/star/text/BaseFrameProperties.idl2
-rw-r--r--offapi/com/sun/star/text/Cell.idl2
-rw-r--r--offapi/com/sun/star/text/DocumentSettings.idl8
-rw-r--r--offapi/com/sun/star/text/FootnoteSettings.idl2
-rw-r--r--offapi/com/sun/star/text/GenericTextDocument.idl18
-rw-r--r--offapi/com/sun/star/text/LineNumberingProperties.idl2
-rw-r--r--offapi/com/sun/star/text/Paragraph.idl2
-rw-r--r--offapi/com/sun/star/text/PositionLayoutDir.idl2
-rw-r--r--offapi/com/sun/star/text/RelOrientation.idl2
-rw-r--r--offapi/com/sun/star/text/Shape.idl10
-rw-r--r--offapi/com/sun/star/text/TextMarkupType.idl2
-rw-r--r--offapi/com/sun/star/text/TextPortion.idl2
-rw-r--r--offapi/com/sun/star/text/TextTableRow.idl2
-rw-r--r--offapi/com/sun/star/text/ViewSettings.idl20
-rw-r--r--offapi/com/sun/star/text/XTextMarkup.idl2
-rw-r--r--offapi/com/sun/star/text/fieldmaster/Database.idl4
-rw-r--r--offapi/com/sun/star/text/textfield/DatabaseName.idl4
-rw-r--r--offapi/com/sun/star/text/textfield/DatabaseNextSet.idl4
-rw-r--r--offapi/com/sun/star/text/textfield/DatabaseNumberOfSet.idl4
-rw-r--r--offapi/com/sun/star/text/textfield/DatabaseSetNumber.idl4
-rw-r--r--offapi/com/sun/star/ucb/TransientDocumentsContentProvider.idl2
-rw-r--r--offapi/com/sun/star/ucb/TransientDocumentsDocumentContent.idl2
-rw-r--r--offapi/com/sun/star/ucb/TransientDocumentsFolderContent.idl2
-rw-r--r--offapi/com/sun/star/ucb/TransientDocumentsRootContent.idl2
-rw-r--r--offapi/com/sun/star/ucb/TransientDocumentsStreamContent.idl2
-rw-r--r--offapi/com/sun/star/ui/ConfigurableUIElement.idl2
-rw-r--r--offapi/com/sun/star/ui/ConfigurationEvent.idl2
-rw-r--r--offapi/com/sun/star/ui/DockingArea.idl2
-rw-r--r--offapi/com/sun/star/ui/GlobalAcceleratorConfiguration.idl2
-rw-r--r--offapi/com/sun/star/ui/ImageType.idl2
-rw-r--r--offapi/com/sun/star/ui/ItemDescriptor.idl2
-rw-r--r--offapi/com/sun/star/ui/ItemStyle.idl2
-rw-r--r--offapi/com/sun/star/ui/ItemType.idl2
-rw-r--r--offapi/com/sun/star/ui/ModuleUICategoryDescription.idl2
-rw-r--r--offapi/com/sun/star/ui/ModuleUICommandDescription.idl2
-rw-r--r--offapi/com/sun/star/ui/ModuleUIConfigurationManager.idl2
-rw-r--r--offapi/com/sun/star/ui/ModuleUIConfigurationManagerSupplier.idl2
-rw-r--r--offapi/com/sun/star/ui/ModuleWindowStateConfiguration.idl2
-rw-r--r--offapi/com/sun/star/ui/UICategoryDescription.idl2
-rw-r--r--offapi/com/sun/star/ui/UICommandDescription.idl2
-rw-r--r--offapi/com/sun/star/ui/UIConfigurationManager.idl2
-rw-r--r--offapi/com/sun/star/ui/UIElement.idl2
-rw-r--r--offapi/com/sun/star/ui/UIElementFactory.idl2
-rw-r--r--offapi/com/sun/star/ui/UIElementFactoryManager.idl2
-rw-r--r--offapi/com/sun/star/ui/UIElementSettings.idl2
-rw-r--r--offapi/com/sun/star/ui/UIElementType.idl2
-rw-r--r--offapi/com/sun/star/ui/WindowContentFactory.idl2
-rw-r--r--offapi/com/sun/star/ui/WindowStateConfiguration.idl2
-rw-r--r--offapi/com/sun/star/ui/XAcceleratorConfiguration.idl2
-rw-r--r--offapi/com/sun/star/ui/XDockingAreaAcceptor.idl2
-rw-r--r--offapi/com/sun/star/ui/XModuleUIConfigurationManager.idl2
-rw-r--r--offapi/com/sun/star/ui/XModuleUIConfigurationManagerSupplier.idl2
-rw-r--r--offapi/com/sun/star/ui/XUIConfiguration.idl2
-rw-r--r--offapi/com/sun/star/ui/XUIConfigurationListener.idl2
-rw-r--r--offapi/com/sun/star/ui/XUIConfigurationManager.idl2
-rw-r--r--offapi/com/sun/star/ui/XUIConfigurationManagerSupplier.idl2
-rw-r--r--offapi/com/sun/star/ui/XUIConfigurationPersistence.idl2
-rw-r--r--offapi/com/sun/star/ui/XUIConfigurationStorage.idl2
-rw-r--r--offapi/com/sun/star/ui/XUIElementFactory.idl2
-rw-r--r--offapi/com/sun/star/ui/XUIElementFactoryRegistration.idl2
-rw-r--r--offapi/com/sun/star/ui/XUIElementSettings.idl2
-rw-r--r--offapi/com/sun/star/ui/XUIFunctionListener.idl2
-rw-r--r--offapi/com/sun/star/util/Endianness.idl2
-rw-r--r--offapi/com/sun/star/util/OfficeInstallationDirectories.idl2
-rw-r--r--offapi/com/sun/star/util/PathSubstitution.idl82
-rw-r--r--offapi/com/sun/star/util/XBroadcaster.idl2
-rw-r--r--offapi/com/sun/star/util/XOfficeInstallationDirectories.idl2
-rw-r--r--offapi/com/sun/star/xml/dom/XNode.idl2
-rw-r--r--offapi/drafts/com/sun/star/form/ListEntryEvent.idl77
-rw-r--r--offapi/drafts/com/sun/star/form/XBindableValue.idl81
-rw-r--r--offapi/drafts/com/sun/star/form/XListEntryListener.idl92
-rw-r--r--offapi/drafts/com/sun/star/form/XListEntrySink.idl71
-rw-r--r--offapi/drafts/com/sun/star/form/XListEntrySource.idl103
-rw-r--r--offapi/drafts/com/sun/star/form/XValueBinding.idl101
-rw-r--r--offapi/drafts/com/sun/star/form/makefile.mk52
-rw-r--r--offapi/prj/build.lst3
-rw-r--r--offapi/prj/d.lst8
-rw-r--r--offapi/type_reference/typelibrary_history.txt5
-rw-r--r--offapi/type_reference/types.rdbbin7307264 -> 7307264 bytes
-rw-r--r--offapi/util/makefile.mk1
-rw-r--r--registry/tools/checksingleton.cxx460
-rw-r--r--registry/tools/fileurl.cxx90
-rw-r--r--registry/tools/fileurl.hxx (renamed from offapi/drafts/com/sun/star/form/IncompatibleTypesException.idl)34
-rw-r--r--registry/tools/makefile.mk18
-rw-r--r--registry/tools/options.cxx153
-rw-r--r--registry/tools/options.hxx67
-rw-r--r--registry/tools/rdbedit.cxx318
-rw-r--r--registry/tools/regcompare.cxx1556
-rw-r--r--registry/tools/regmerge.cxx278
-rw-r--r--registry/tools/regview.cxx72
-rw-r--r--sal/cppunittester/cppunittester.cxx95
-rw-r--r--sal/inc/cppunittester/protectorfactory.hxx45
-rw-r--r--sal/osl/os2/diagnose.c3
-rw-r--r--sal/osl/unx/diagnose.c16
-rw-r--r--sal/osl/unx/file.cxx3
-rw-r--r--sal/osl/unx/file_misc.cxx6
-rw-r--r--sal/osl/unx/file_path_helper.cxx80
-rw-r--r--sal/osl/unx/process_impl.cxx19
-rw-r--r--sal/osl/unx/profile.c1
-rw-r--r--sal/osl/unx/socket.c13
-rwxr-xr-xsal/osl/w32/diagnose.c52
-rw-r--r--sal/osl/w32/file_dirvol.cxx2
-rwxr-xr-x[-rw-r--r--]sal/osl/w32/module.cxx23
-rwxr-xr-x[-rw-r--r--]sal/osl/w32/procimpl.cxx35
-rw-r--r--sal/prj/d.lst3
-rw-r--r--sal/rtl/source/alloc_arena.c37
-rw-r--r--sal/rtl/source/alloc_cache.c53
-rw-r--r--sal/rtl/source/alloc_fini.cxx (renamed from sal/rtl/source/memory_fini.cxx)23
-rw-r--r--sal/rtl/source/alloc_global.c2
-rw-r--r--sal/rtl/source/alloc_impl.h24
-rw-r--r--sal/rtl/source/makefile.mk9
-rw-r--r--store/source/lockbyte.cxx3
-rw-r--r--store/source/storbase.cxx3
-rw-r--r--udkapi/com/sun/star/container/XStringKeyMap.idl2
-rw-r--r--udkapi/com/sun/star/io/XAsyncOutputMonitor.idl2
-rwxr-xr-xudkapi/com/sun/star/java/InvalidJavaSettingsException.idl2
-rw-r--r--udkapi/com/sun/star/java/JavaNotFoundException.idl2
-rwxr-xr-xudkapi/com/sun/star/java/RestartRequiredException.idl2
-rw-r--r--udkapi/com/sun/star/reflection/XInterfaceAttributeTypeDescription2.idl2
-rw-r--r--udkapi/com/sun/star/reflection/XInterfaceTypeDescription2.idl2
-rw-r--r--udkapi/com/sun/star/reflection/XParameter.idl2
-rw-r--r--udkapi/com/sun/star/reflection/XPublished.idl2
-rw-r--r--udkapi/com/sun/star/reflection/XServiceConstructorDescription.idl2
-rw-r--r--udkapi/com/sun/star/reflection/XServiceTypeDescription2.idl2
-rw-r--r--udkapi/com/sun/star/reflection/XSingletonTypeDescription2.idl2
-rw-r--r--udkapi/com/sun/star/reflection/XStructTypeDescription.idl2
-rw-r--r--udkapi/com/sun/star/script/BasicErrorException.idl2
-rw-r--r--udkapi/com/sun/star/uri/ExternalUriReferenceTranslator.idl2
-rw-r--r--udkapi/com/sun/star/uri/RelativeUriExcessParentSegments.idl2
-rw-r--r--udkapi/com/sun/star/uri/UriReferenceFactory.idl2
-rw-r--r--udkapi/com/sun/star/uri/UriSchemeParser_vndDOTsunDOTstarDOTscript.idl2
-rw-r--r--udkapi/com/sun/star/uri/VndSunStarPkgUrlReferenceFactory.idl2
-rw-r--r--udkapi/com/sun/star/uri/XExternalUriReferenceTranslator.idl2
-rw-r--r--udkapi/com/sun/star/uri/XUriReference.idl2
-rw-r--r--udkapi/com/sun/star/uri/XUriReferenceFactory.idl2
-rw-r--r--udkapi/com/sun/star/uri/XUriSchemeParser.idl2
-rw-r--r--udkapi/com/sun/star/uri/XVndSunStarPkgUrlReferenceFactory.idl2
-rw-r--r--udkapi/com/sun/star/uri/XVndSunStarScriptUrl.idl2
-rwxr-xr-x[-rw-r--r--]unoil/climaker/version.txt6
-rw-r--r--unoil/util/makefile.mk2
401 files changed, 2830 insertions, 3047 deletions
diff --git a/cli_ure/version/version.txt b/cli_ure/version/version.txt
index 8cbdedf654d4..b5ec562837f6 100644..100755
--- a/cli_ure/version/version.txt
+++ b/cli_ure/version/version.txt
@@ -25,23 +25,23 @@
#
#*************************************************************************
-CLI_URETYPES_NEW_VERSION=1.0.7.0
-CLI_URETYPES_OLD_VERSION=1.0.0.0-1.0.6.0
-CLI_URETYPES_POLICY_VERSION=7.0.0.0
+CLI_URETYPES_NEW_VERSION=1.0.8.0
+CLI_URETYPES_OLD_VERSION=1.0.0.0-1.0.7.0
+CLI_URETYPES_POLICY_VERSION=8.0.0.0
CLI_URETYPES_POLICY_ASSEMBLY=policy.1.0.cli_uretypes
-CLI_BASETYPES_NEW_VERSION=1.0.18.0
-CLI_BASETYPES_OLD_VERSION=1.0.0.0-1.0.17.0
-CLI_BASETYPES_POLICY_VERSION=18.0.0.0
+CLI_BASETYPES_NEW_VERSION=1.0.19.0
+CLI_BASETYPES_OLD_VERSION=1.0.0.0-1.0.18.0
+CLI_BASETYPES_POLICY_VERSION=19.0.0.0
CLI_BASETYPES_POLICY_ASSEMBLY=policy.1.0.cli_basetypes
-CLI_URE_NEW_VERSION=1.0.21.0
-CLI_URE_OLD_VERSION=1.0.0.0-1.0.20.0
-CLI_URE_POLICY_VERSION=21.0.0.0
+CLI_URE_NEW_VERSION=1.0.22.0
+CLI_URE_OLD_VERSION=1.0.0.0-1.0.21.0
+CLI_URE_POLICY_VERSION=22.0.0.0
CLI_URE_POLICY_ASSEMBLY=policy.1.0.cli_ure
-CLI_CPPUHELPER_NEW_VERSION=1.0.21.0
-CLI_CPPUHELPER_OLD_VERSION=1.0.0.0-1.0.20.0
-CLI_CPPUHELPER_POLICY_VERSION=21.0.0.0
+CLI_CPPUHELPER_NEW_VERSION=1.0.22.0
+CLI_CPPUHELPER_OLD_VERSION=1.0.0.0-1.0.21.0
+CLI_CPPUHELPER_POLICY_VERSION=22.0.0.0
CLI_CPPUHELPER_POLICY_ASSEMBLY=policy.1.0.cli_cppuhelper
diff --git a/codemaker/source/cppumaker/cppuoptions.cxx b/codemaker/source/cppumaker/cppuoptions.cxx
index c77a15904442..37b843b6544c 100644
--- a/codemaker/source/cppumaker/cppuoptions.cxx
+++ b/codemaker/source/cppumaker/cppuoptions.cxx
@@ -38,6 +38,13 @@
using ::rtl::OUString;
using ::rtl::OUStringToOString;
using ::rtl::OString;
+
+#ifdef SAL_UNX
+#define SEPARATOR '/'
+#else
+#define SEPARATOR '\\'
+#endif
+
sal_Bool CppuOptions::initOptions(int ac, char* av[], sal_Bool bCmdFile)
throw( IllegalArgument )
{
@@ -48,7 +55,9 @@ sal_Bool CppuOptions::initOptions(int ac, char* av[], sal_Bool bCmdFile)
{
bCmdFile = sal_True;
- m_program = av[0];
+ OString name(av[0]);
+ sal_Int32 index = name.lastIndexOf(SEPARATOR);
+ m_program = name.copy((index > 0 ? index+1 : 0));
if (ac < 2)
{
@@ -340,7 +349,7 @@ OString CppuOptions::prepareHelp()
help += " necessary information is available for bridging the type in UNO.\n";
help += " -G = generate only target files which does not exists.\n";
help += " -Gc = generate only target files which content will be changed.\n";
- help += " -X<file> = extra types which will not be taken into account for generation.\n";
+ help += " -X<file> = extra types which will not be taken into account for generation.\n\n";
help += prepareVersion();
return help;
@@ -348,9 +357,8 @@ OString CppuOptions::prepareHelp()
OString CppuOptions::prepareVersion()
{
- OString version("\nSun Microsystems (R) ");
- version += m_program + " Version 2.0\n\n";
-
+ OString version(m_program);
+ version += " Version 2.0\n\n";
return version;
}
diff --git a/codemaker/source/javamaker/javaoptions.cxx b/codemaker/source/javamaker/javaoptions.cxx
index 82fa4d55ad87..e29280b211d2 100644
--- a/codemaker/source/javamaker/javaoptions.cxx
+++ b/codemaker/source/javamaker/javaoptions.cxx
@@ -37,6 +37,13 @@
using ::rtl::OUString;
using ::rtl::OString;
using ::rtl::OUStringToOString;
+
+#ifdef SAL_UNX
+#define SEPARATOR '/'
+#else
+#define SEPARATOR '\\'
+#endif
+
sal_Bool JavaOptions::initOptions(int ac, char* av[], sal_Bool bCmdFile)
throw( IllegalArgument )
{
@@ -47,7 +54,9 @@ sal_Bool JavaOptions::initOptions(int ac, char* av[], sal_Bool bCmdFile)
{
bCmdFile = sal_True;
- m_program = av[0];
+ OString name(av[0]);
+ sal_Int32 index = name.lastIndexOf(SEPARATOR);
+ m_program = name.copy((index > 0 ? index+1 : 0));
if (ac < 2)
{
@@ -284,7 +293,7 @@ OString JavaOptions::prepareHelp()
help += " -nD = no dependent types are generated.\n";
help += " -G = generate only target files which does not exists.\n";
help += " -Gc = generate only target files which content will be changed.\n";
- help += " -X<file> = extra types which will not be taken into account for generation.\n";
+ help += " -X<file> = extra types which will not be taken into account for generation.\n\n";
help += prepareVersion();
return help;
@@ -292,9 +301,8 @@ OString JavaOptions::prepareHelp()
OString JavaOptions::prepareVersion()
{
- OString version("\nSun Microsystems (R) ");
- version += m_program + " Version 2.0\n\n";
-
+ OString version(m_program);
+ version += " Version 2.0\n\n";
return version;
}
diff --git a/cppu/source/typelib/typelib.cxx b/cppu/source/typelib/typelib.cxx
index 747f012ace45..8b69ccb1aa4b 100644
--- a/cppu/source/typelib/typelib.cxx
+++ b/cppu/source/typelib/typelib.cxx
@@ -342,37 +342,24 @@ TypeDescriptor_Init_Impl::~TypeDescriptor_Init_Impl() SAL_THROW( () )
delete pWeakMap;
pWeakMap = 0;
}
-#ifndef CPPU_LEAK_STATIC_DATA
#if OSL_DEBUG_LEVEL > 1
-#define MYASSERT(x) if (x != 0) fprintf(stderr, "### "#x" = %d, should be zero!!!\n", x);
- MYASSERT (nTypeDescriptionCount );
- MYASSERT( nCompoundTypeDescriptionCount );
- MYASSERT( nUnionTypeDescriptionCount );
- MYASSERT( nIndirectTypeDescriptionCount );
- MYASSERT( nArrayTypeDescriptionCount );
- MYASSERT( nEnumTypeDescriptionCount );
- MYASSERT( nInterfaceMethodTypeDescriptionCount );
- MYASSERT( nInterfaceAttributeTypeDescriptionCount );
- MYASSERT( nInterfaceTypeDescriptionCount );
- MYASSERT( nTypeDescriptionReferenceCount );
-#undef MYASSERT
-
- OSL_ASSERT( nTypeDescriptionCount == 0 );
- OSL_ASSERT( nCompoundTypeDescriptionCount == 0 );
- OSL_ASSERT( nUnionTypeDescriptionCount == 0 );
- OSL_ASSERT( nIndirectTypeDescriptionCount == 0 );
- OSL_ASSERT( nArrayTypeDescriptionCount == 0 );
- OSL_ASSERT( nEnumTypeDescriptionCount == 0 );
- OSL_ASSERT( nInterfaceMethodTypeDescriptionCount == 0 );
- OSL_ASSERT( nInterfaceAttributeTypeDescriptionCount == 0 );
- OSL_ASSERT( nInterfaceTypeDescriptionCount == 0 );
- OSL_ASSERT( nTypeDescriptionReferenceCount == 0 );
-
- OSL_ASSERT( !pCallbacks || pCallbacks->empty() );
+ OSL_ENSURE( !nTypeDescriptionCount );
+ OSL_ENSURE( !nCompoundTypeDescriptionCount );
+ OSL_ENSURE( !nUnionTypeDescriptionCount );
+ OSL_ENSURE( !nIndirectTypeDescriptionCount );
+ OSL_ENSURE( !nArrayTypeDescriptionCount );
+ OSL_ENSURE( !nEnumTypeDescriptionCount );
+ OSL_ENSURE( !nInterfaceMethodTypeDescriptionCount );
+ OSL_ENSURE( !nInterfaceAttributeTypeDescriptionCount );
+ OSL_ENSURE( !nInterfaceTypeDescriptionCount );
+ OSL_ENSURE( !nTypeDescriptionReferenceCount );
+
+ OSL_ENSURE( !pCallbacks || pCallbacks->empty() );
#endif
+
delete pCallbacks;
pCallbacks = 0;
-#endif // CPPU_LEAK_STATIC_DATA
+
if( pMutex )
{
delete pMutex;
diff --git a/idlc/inc/idlc/idlctypes.hxx b/idlc/inc/idlc/idlctypes.hxx
index 3b7b1d5e3db5..45154163c846 100644
--- a/idlc/inc/idlc/idlctypes.hxx
+++ b/idlc/inc/idlc/idlctypes.hxx
@@ -33,7 +33,9 @@
#include <boost/unordered_map.hpp>
#include <list>
#include <vector>
+#include <string>
#include <set>
+
#include <sal/types.h>
#include <rtl/ustring.hxx>
diff --git a/idlc/inc/idlc/options.hxx b/idlc/inc/idlc/options.hxx
index f319c082cc42..945ebb0bdddf 100644
--- a/idlc/inc/idlc/options.hxx
+++ b/idlc/inc/idlc/options.hxx
@@ -49,18 +49,29 @@ public:
class Options
{
public:
- Options();
+ explicit Options(char const * progname);
~Options();
+ static bool checkArgument(std::vector< std::string > & rArgs, char const * arg, size_t len);
+ static bool checkCommandFile(std::vector< std::string > & rArgs, char const * filename);
+
+ bool initOptions(std::vector< std::string > & rArgs)
+ throw(IllegalArgument);
+ bool badOption(char const * reason, std::string const & rArg)
+ throw(IllegalArgument);
+ bool setOption(char const * option, std::string const & rArg);
+
+#if 0 /* @@@ */
sal_Bool initOptions(int ac, char* av[], sal_Bool bCmdFile=sal_False)
throw( IllegalArgument );
+#endif /* @@@ */
::rtl::OString prepareHelp();
::rtl::OString prepareVersion();
const ::rtl::OString& getProgramName() const;
- sal_Bool isValid(const ::rtl::OString& option);
- const ::rtl::OString getOption(const ::rtl::OString& option)
+ bool isValid(const ::rtl::OString& option);
+ const ::rtl::OString& getOption(const ::rtl::OString& option)
throw( IllegalArgument );
const StringVector& getInputFiles() const { return m_inputFiles; }
diff --git a/idlc/source/astexpression.cxx b/idlc/source/astexpression.cxx
index a96857f9256e..b3cf5f2a51cc 100644
--- a/idlc/source/astexpression.cxx
+++ b/idlc/source/astexpression.cxx
@@ -28,6 +28,7 @@
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_idlc.hxx"
+
#include <idlc/astexpression.hxx>
#include <idlc/astconstant.hxx>
#include <idlc/astscope.hxx>
@@ -35,6 +36,7 @@
#include <limits.h>
#include <float.h>
+#include <memory> // auto_ptr<>
#undef MAXCHAR
#define MAXCHAR 127
@@ -951,7 +953,6 @@ AstExprValue* AstExpression::eval_internal(EvalKind ek)
AstExprValue* AstExpression::eval_bin_op(EvalKind ek)
{
- AstExprValue *retval = NULL;
ExprType eType = ET_double;
if ( m_combOperator == EC_mod )
@@ -974,7 +975,7 @@ AstExprValue* AstExpression::eval_bin_op(EvalKind ek)
if (m_subExpr2->getExprValue() == NULL)
return NULL;
- retval = new AstExprValue();
+ std::auto_ptr< AstExprValue > retval(new AstExprValue());
retval->et = eType;
switch (m_combOperator)
@@ -995,20 +996,18 @@ AstExprValue* AstExpression::eval_bin_op(EvalKind ek)
break;
case EC_div:
if (m_subExpr2->getExprValue()->u.dval == 0.0)
- return NULL;
+ return NULL;
retval->u.dval = m_subExpr1->getExprValue()->u.dval / m_subExpr2->getExprValue()->u.dval;
break;
default:
return NULL;
}
- return retval;
+ return retval.release();
}
AstExprValue* AstExpression::eval_bit_op(EvalKind ek)
{
- AstExprValue *retval = NULL;
-
if (ek != EK_const && ek != EK_positive_int)
return NULL;
if (m_subExpr1 == NULL || m_subExpr2 == NULL)
@@ -1026,7 +1025,7 @@ AstExprValue* AstExpression::eval_bit_op(EvalKind ek)
if (m_subExpr2->getExprValue() == NULL)
return NULL;
- retval = new AstExprValue;
+ std::auto_ptr< AstExprValue > retval(new AstExprValue());
retval->et = ET_long;
switch (m_combOperator)
@@ -1050,13 +1049,11 @@ AstExprValue* AstExpression::eval_bit_op(EvalKind ek)
return NULL;
}
- return retval;
+ return retval.release();
}
AstExprValue* AstExpression::eval_un_op(EvalKind ek)
{
- AstExprValue *retval = NULL;
-
if (m_exprValue != NULL)
return m_exprValue;
@@ -1071,7 +1068,7 @@ AstExprValue* AstExpression::eval_un_op(EvalKind ek)
if (m_subExpr1->getExprValue() == NULL)
return NULL;
- retval = new AstExprValue();
+ std::auto_ptr< AstExprValue > retval(new AstExprValue());
retval->et = ET_double;
switch (m_combOperator)
@@ -1092,7 +1089,7 @@ AstExprValue* AstExpression::eval_un_op(EvalKind ek)
return NULL;
}
- return retval;
+ return retval.release();
}
AstExprValue* AstExpression::eval_symbol(EvalKind ek)
diff --git a/idlc/source/idlcmain.cxx b/idlc/source/idlcmain.cxx
index 4a7cdbbb7f2b..2df142fdbf91 100644
--- a/idlc/source/idlcmain.cxx
+++ b/idlc/source/idlcmain.cxx
@@ -28,26 +28,35 @@
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_idlc.hxx"
-#include <idlc/idlc.hxx>
+
+#include "idlc/idlc.hxx"
#include "sal/main.h"
+#include <string.h>
+
using namespace ::rtl;
SAL_IMPLEMENT_MAIN_WITH_ARGS(argc, argv)
{
- Options options;
+ std::vector< std::string > args;
+ for (int i = 1; i < argc; i++)
+ {
+ if (!Options::checkArgument (args, argv[i], strlen(argv[i])))
+ return (1);
+ }
+ Options options(argv[0]);
try
{
- if (!options.initOptions(argc, argv))
- exit(1);
+ if (!options.initOptions(args))
+ return (0);
}
catch( IllegalArgument& e)
{
fprintf(stderr, "Illegal argument: %s\n%s",
e.m_message.getStr(),
options.prepareVersion().getStr());
- exit(99);
+ return (99);
}
setIdlc(&options);
diff --git a/idlc/source/options.cxx b/idlc/source/options.cxx
index 36f6880460c0..a56852dc778e 100644
--- a/idlc/source/options.cxx
+++ b/idlc/source/options.cxx
@@ -29,12 +29,25 @@
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_idlc.hxx"
+#include "idlc/options.hxx"
+
+#include "osl/diagnose.h"
+#include "rtl/string.hxx"
+#include "rtl/strbuf.hxx"
+
#include <stdio.h>
-#include /*MSVC trouble: <cstring>*/ <string.h>
-#include <idlc/options.hxx>
+#include <string.h>
using ::rtl::OString;
-Options::Options(): m_stdin(false), m_verbose(false), m_quiet(false)
+using ::rtl::OStringBuffer;
+#ifdef SAL_UNX
+#define SEPARATOR '/'
+#else
+#define SEPARATOR '\\'
+#endif
+
+Options::Options(char const * progname)
+ : m_program(progname), m_stdin(false), m_verbose(false), m_quiet(false)
{
}
@@ -42,273 +55,282 @@ Options::~Options()
{
}
-sal_Bool Options::initOptions(int ac, char* av[], sal_Bool bCmdFile)
- throw( IllegalArgument )
+// static
+bool Options::checkArgument (std::vector< std::string > & rArgs, char const * arg, size_t len)
{
- sal_Bool ret = sal_True;
- sal_uInt16 j=0;
-
- if (!bCmdFile)
+ bool result = ((arg != 0) && (len > 0));
+ OSL_PRECOND(result, "idlc::Options::checkArgument(): invalid arguments");
+ if (result)
+ {
+ switch(arg[0])
{
- bCmdFile = sal_True;
-
- m_program = av[0];
-
- if (ac < 2)
+ case '@':
+ if ((result = (len > 1)) == true)
+ {
+ // "@<cmdfile>"
+ result = Options::checkCommandFile (rArgs, &(arg[1]));
+ }
+ break;
+ case '-':
+ if ((result = (len > 1)) == true)
+ {
+ // "-<option>"
+ switch (arg[1])
{
- fprintf(stderr, "%s", prepareHelp().getStr());
- ret = sal_False;
+ case 'O':
+ case 'I':
+ case 'D':
+ {
+ // "-<option>[<param>]
+ std::string option(&(arg[0]), 2);
+ rArgs.push_back(option);
+ if (len > 2)
+ {
+ // "-<option><param>"
+ std::string param(&(arg[2]), len - 2);
+ rArgs.push_back(param);
+ }
+ break;
+ }
+ default:
+ // "-<option>" ([long] option, w/o param)
+ rArgs.push_back(std::string(arg, len));
+ break;
}
+ }
+ break;
+ default:
+ // "<param>"
+ rArgs.push_back(std::string(arg, len));
+ break;
+ }
+ }
+ return (result);
+}
- j = 1;
- } else
+// static
+bool Options::checkCommandFile (std::vector< std::string > & rArgs, char const * filename)
+{
+ FILE * fp = fopen(filename, "r");
+ if (fp == 0)
{
- j = 0;
+ fprintf(stderr, "ERROR: can't open command file \"%s\"\n", filename);
+ return (false);
}
- char *s=NULL;
- for (; j < ac; j++)
+ std::string buffer;
+ buffer.reserve(256);
+
+ bool quoted = false;
+ int c = EOF;
+ while ((c = fgetc(fp)) != EOF)
{
- if (av[j][0] == '-')
+ switch(c)
{
- switch (av[j][1])
- {
- case 'O':
- if (av[j][2] == '\0')
- {
- if (j < ac - 1 && av[j+1][0] != '-')
- {
- j++;
- s = av[j];
- } else
- {
- OString tmp("'-O', please check");
- if (j <= ac - 1)
- {
- tmp += " your input '" + OString(av[j+1]) + "'";
- }
-
- throw IllegalArgument(tmp);
- }
- } else
- {
- s = av[j] + 2;
- }
-
- m_options["-O"] = OString(s);
- break;
- case 'I':
- {
- if (av[j][2] == '\0')
- {
- if (j < ac - 1 && av[j+1][0] != '-')
- {
- j++;
- s = av[j];
- } else
- {
- OString tmp("'-I', please check");
- if (j <= ac - 1)
- {
- tmp += " your input '" + OString(av[j+1]) + "'";
- }
-
- throw IllegalArgument(tmp);
- }
- } else
- {
- s = av[j] + 2;
- }
+ case '\"':
+ quoted = !quoted;
+ break;
+ case ' ':
+ case '\t':
+ case '\r':
+ case '\n':
+ if (!quoted)
+ {
+ if (!buffer.empty())
+ {
+ // append current argument.
+ if (!Options::checkArgument(rArgs, buffer.c_str(), buffer.size()))
+ {
+ (void) fclose(fp);
+ return (false);
+ }
+ buffer.clear();
+ }
+ break;
+ }
+ default:
+ // quoted white-space fall through
+ buffer.push_back(sal::static_int_cast<char>(c));
+ break;
+ }
+ }
+ if (!buffer.empty())
+ {
+ // append unterminated argument.
+ if (!Options::checkArgument(rArgs, buffer.c_str(), buffer.size()))
+ {
+ (void) fclose(fp);
+ return (false);
+ }
+ buffer.clear();
+ }
+ return (fclose(fp) == 0);
+}
- OString inc(s);
- if ( inc.indexOf(';') > 0 )
- {
- OString tmp(s);
- sal_Int32 nIndex = 0;
- inc = OString();
- do inc = inc + " -I\"" + tmp.getToken( 0, ';', nIndex ) +"\""; while( nIndex != -1 );
- } else
- inc = OString("-I\"") + s + "\"";
+bool Options::badOption(char const * reason, std::string const & rArg) throw(IllegalArgument)
+{
+ OStringBuffer message;
+ if (reason != 0)
+ {
+ message.append(reason); message.append(" option '"); message.append(rArg.c_str()); message.append("'");
+ throw IllegalArgument(message.makeStringAndClear());
+ }
+ return false;
+}
- if (m_options.count("-I") > 0)
- {
- OString tmp(m_options["-I"]);
- tmp = tmp + " " + inc;
- m_options["-I"] = tmp;
- } else
- {
- m_options["-I"] = inc;
- }
- }
- break;
- case 'D':
- if (av[j][2] == '\0')
- {
- if (j < ac - 1 && av[j+1][0] != '-')
- {
- j++;
- s = av[j];
- } else
- {
- OString tmp("'-D', please check");
- if (j <= ac - 1)
- {
- tmp += " your input '" + OString(av[j+1]) + "'";
- }
+bool Options::setOption(char const * option, std::string const & rArg)
+{
+ bool result = (0 == strcmp(option, rArg.c_str()));
+ if (result)
+ m_options[rArg.c_str()] = OString(rArg.c_str(), rArg.size());
+ return (result);
+}
- throw IllegalArgument(tmp);
- }
- } else
- {
- s = av[j];
- }
+bool Options::initOptions(std::vector< std::string > & rArgs) throw(IllegalArgument)
+{
+ std::vector< std::string >::const_iterator first = rArgs.begin(), last = rArgs.end();
+ for (; first != last; ++first)
+ {
+ if ((*first)[0] != '-')
+ {
+ OString filename((*first).c_str(), (*first).size());
+ OString tmp(filename.toAsciiLowerCase());
+ if (tmp.lastIndexOf(".idl") != (tmp.getLength() - 4))
+ {
+ throw IllegalArgument("'" + filename + "' is not a valid input file, only '*.idl' files will be accepted");
+ }
+ m_inputFiles.push_back(filename);
+ continue;
+ }
- if (m_options.count("-D") > 0)
- {
- OString tmp(m_options["-D"]);
- tmp = tmp + " " + s;
- m_options["-D"] = tmp;
- } else
- m_options["-D"] = OString(s);
- break;
- case 'C':
- if (av[j][2] != '\0')
- {
- throw IllegalArgument(OString(av[j]) + ", please check your input");
- }
- if (m_options.count("-C") == 0)
- m_options["-C"] = OString(av[j]);
- break;
- case 'c':
- if (av[j][2] == 'i' && av[j][3] == 'd' && av[j][4] == '\0')
- {
- if (m_options.count("-cid") == 0)
- m_options["-cid"] = OString(av[j]);
- } else
- throw IllegalArgument(OString(av[j]) + ", please check your input");
- break;
- case 'v':
- if ( 0 == strcmp( &av[j][1], "verbose" ) )
- {
- m_verbose = true;
- }
- else
- throw IllegalArgument(OString(av[j]) + ", please check your input");
- break;
- case 'q':
- if ( 0 == strcmp( &av[j][1], "quiet" ) )
- {
- m_quiet = true;
- }
- else
- throw IllegalArgument(OString(av[j]) + ", please check your input");
- break;
- case 'w':
- if (av[j][2] == 'e' && av[j][3] == '\0') {
- if (m_options.count("-we") == 0)
- m_options["-we"] = OString(av[j]);
- } else {
- if (av[j][2] == '\0') {
- if (m_options.count("-w") == 0)
- m_options["-w"] = OString(av[j]);
- } else
- throw IllegalArgument(OString(av[j]) + ", please check your input");
- }
- break;
- case 'h':
- case '?':
- if (av[j][2] != '\0')
- {
- throw IllegalArgument(OString(av[j]) + ", please check your input");
- } else
- {
- fprintf(stdout, "%s", prepareHelp().getStr());
- exit(0);
- }
- case 's':
- if (/*MSVC trouble: std::*/strcmp(&av[j][2], "tdin") == 0)
- {
- m_stdin = true;
- break;
- }
- // fall through
- default:
- throw IllegalArgument("the option is unknown" + OString(av[j]));
- }
- } else
+ std::string const option(*first);
+ switch((*first)[1])
+ {
+ case 'O':
+ {
+ if (!((++first != last) && ((*first)[0] != '-')))
{
- if (av[j][0] == '@')
- {
- FILE* cmdFile = fopen(av[j]+1, "r");
- if( cmdFile == NULL )
- {
- fprintf(stderr, "%s", prepareHelp().getStr());
- ret = sal_False;
- } else
- {
- int rargc=0;
- char* rargv[512];
- char buffer[512]="";
-
- int i=0;
- int found = 0;
- char c;
- while ( fscanf(cmdFile, "%c", &c) != EOF )
- {
- if (c=='\"') {
- if (found) {
- found=0;
- } else {
- found=1;
- continue;
- }
- } else {
- if (c!=13 && c!=10) {
- if (found || c!=' ') {
- buffer[i++]=c;
- continue;
- }
- }
- if (i==0)
- continue;
- }
- buffer[i]='\0';
- found=0;
- i=0;
- rargv[rargc]= strdup(buffer);
- rargc++;
- buffer[0]='\0';
- }
- if (buffer[0] != '\0') {
- buffer[i]='\0';
- rargv[rargc]= strdup(buffer);
- rargc++;
- }
- fclose(cmdFile);
-
- ret = initOptions(rargc, rargv, bCmdFile);
-
- long ii = 0;
- for (ii=0; ii < rargc; ii++)
- {
- free(rargv[ii]);
- }
- }
- } else
- {
- OString name(av[j]);
- name = name.toAsciiLowerCase();
- if ( name.lastIndexOf(".idl") != (name.getLength() - 4) )
- {
- throw IllegalArgument("'" + OString(av[j]) +
- "' is not a valid input file, only '*.idl' files will be accepted");
- }
- m_inputFiles.push_back(av[j]);
- }
+ return badOption("invalid", option);
+ }
+ OString param((*first).c_str(), (*first).size());
+ m_options["-O"] = param;
+ break;
+ }
+ case 'I':
+ {
+ if (!((++first != last) && ((*first)[0] != '-')))
+ {
+ return badOption("invalid", option);
+ }
+ OString param((*first).c_str(), (*first).size());
+ {
+ // quote param token(s).
+ OStringBuffer buffer;
+ sal_Int32 k = 0;
+ do
+ {
+ OStringBuffer token; token.append("-I\""); token.append(param.getToken(0, ';', k)); token.append("\"");
+ if (buffer.getLength() > 0)
+ buffer.append(' ');
+ buffer.append(token);
+ } while (k != -1);
+ param = buffer.makeStringAndClear();
+ }
+ if (m_options.count("-I") > 0)
+ {
+ // append param.
+ OStringBuffer buffer(m_options["-I"]);
+ buffer.append(' '); buffer.append(param);
+ param = buffer.makeStringAndClear();
+ }
+ m_options["-I"] = param;
+ break;
+ }
+ case 'D':
+ {
+ if (!((++first != last) && ((*first)[0] != '-')))
+ {
+ return badOption("invalid", option);
+ }
+ OString param("-D"); param += OString((*first).c_str(), (*first).size());
+ if (m_options.count("-D") > 0)
+ {
+ OStringBuffer buffer(m_options["-D"]);
+ buffer.append(' '); buffer.append(param);
+ param = buffer.makeStringAndClear();
}
+ m_options["-D"] = param;
+ break;
+ }
+ case 'C':
+ {
+ if (!setOption("-C", option))
+ {
+ return badOption("invalid", option);
+ }
+ break;
+ }
+ case 'c':
+ {
+ if (!setOption("-cid", option))
+ {
+ return badOption("invalid", option);
+ }
+ break;
+ }
+ case 'q':
+ {
+ if (!setOption("-quiet", option))
+ {
+ return badOption("invalid", option);
+ }
+ m_quiet = true;
+ break;
+ }
+ case 'v':
+ {
+ if (!setOption("-verbose", option))
+ {
+ return badOption("invalid", option);
+ }
+ m_verbose = true;
+ break;
+ }
+ case 'w':
+ {
+ if (!(setOption("-w", option) || setOption("-we", option)))
+ {
+ return badOption("invalid", option);
+ }
+ break;
+ }
+ case 'h':
+ case '?':
+ {
+ if (!(setOption("-h", option) || setOption("-?", option)))
+ {
+ return badOption("invalid", option);
+ }
+ {
+ (void) fprintf(stdout, "%s", prepareHelp().getStr());
+ return (false);
+ }
+ // break; // Unreachable
+ }
+ case 's':
+ {
+ if (!setOption("-stdin", option))
+ {
+ return badOption("invalid", option);
+ }
+ m_stdin = true;
+ break;
+ }
+ default:
+ return badOption("unknown", option);
}
-
- return ret;
+ }
+ return (true);
}
OString Options::prepareHelp()
@@ -335,7 +357,7 @@ OString Options::prepareHelp()
help += " requirements.\n";
help += " -w = display warning messages.\n";
help += " -we = treat warnings as errors.\n";
- help += " -h|-? = print this help message and exit.\n";
+ help += " -h|-? = print this help message and exit.\n\n";
help += prepareVersion();
return help;
@@ -343,8 +365,8 @@ OString Options::prepareHelp()
OString Options::prepareVersion()
{
- OString version("\nSun Microsystems (R) ");
- version += m_program + " Version 1.1\n\n";
+ OString version(m_program);
+ version += " Version 1.1\n\n";
return version;
}
@@ -353,21 +375,19 @@ const OString& Options::getProgramName() const
return m_program;
}
-sal_Bool Options::isValid(const OString& option)
+bool Options::isValid(const OString& option)
{
return (m_options.count(option) > 0);
}
-const OString Options::getOption(const OString& option)
+const OString& Options::getOption(const OString& option)
throw( IllegalArgument )
{
- if (m_options.count(option) > 0)
- {
- return m_options[option];
- } else
+ if (!isValid(option))
{
throw IllegalArgument("Option is not valid or currently not set.");
}
+ return m_options[option];
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/idlc/source/preproc/eval.c b/idlc/source/preproc/eval.c
index 292cc95336bc..9a1a62063c1b 100644
--- a/idlc/source/preproc/eval.c
+++ b/idlc/source/preproc/eval.c
@@ -25,9 +25,11 @@
* for a copy of the LGPLv3 License.
*
************************************************************************/
+
+#include "cpp.h"
+
#include <stdlib.h>
#include <string.h>
-#include "cpp.h"
#define NSTAK 32
#define SGN 0
@@ -737,10 +739,10 @@ struct value
}
else
{
- static char cvcon[]
- = "b\bf\fn\nr\rt\tv\v''\"\"??\\\\";
+ static char cvcon[] = "b\bf\fn\nr\rt\tv\v''\"\"??\\\\";
+ static int cvlen = sizeof(cvcon) - 1;
- for (i = 0; i < (int)sizeof(cvcon); i += 2)
+ for (i = 0; i < cvlen; i += 2)
{
if (*p == cvcon[i])
{
@@ -749,9 +751,8 @@ struct value
}
}
p += 1;
- if (i >= (int)sizeof(cvcon))
- error(WARNING,
- "Undefined escape in character constant");
+ if (i >= cvlen)
+ error(WARNING,"Undefined escape in character constant");
}
}
else
diff --git a/idlc/source/preproc/lex.c b/idlc/source/preproc/lex.c
index 7e1892a169dd..61929f1af8aa 100644
--- a/idlc/source/preproc/lex.c
+++ b/idlc/source/preproc/lex.c
@@ -291,7 +291,7 @@ void
bigfsm[j][fp->state] = (short) nstate;
continue;
case C_ALPH:
- for (j = 0; j <= 256; j++)
+ for (j = 0; j < 256; j++)
if (('a' <= j && j <= 'z') || ('A' <= j && j <= 'Z')
|| j == '_')
bigfsm[j][fp->state] = (short) nstate;
@@ -688,9 +688,13 @@ void
if (s->fd >= 0)
{
- close(s->fd);
- dofree(s->inb);
+ (void) close(s->fd);
+ dofree(s->filename);
}
+
+ if (s->inb)
+ dofree(s->inb);
+
cursource = s->next;
dofree(s);
}
diff --git a/idlc/source/preproc/unix.c b/idlc/source/preproc/unix.c
index 56a97b973d98..b0a8f478ace3 100644
--- a/idlc/source/preproc/unix.c
+++ b/idlc/source/preproc/unix.c
@@ -92,6 +92,7 @@ void
maketokenrow(3, &tr);
gettokens(&tr, 1);
doadefine(&tr, c);
+ dofree(tr.bp); tr.bp = 0;
unsetsource();
break;
diff --git a/offapi/com/sun/star/accessibility/XAccessibleMultiLineText.idl b/offapi/com/sun/star/accessibility/XAccessibleMultiLineText.idl
index 7becd18a339d..c8c8e4c65edc 100644
--- a/offapi/com/sun/star/accessibility/XAccessibleMultiLineText.idl
+++ b/offapi/com/sun/star/accessibility/XAccessibleMultiLineText.idl
@@ -47,7 +47,7 @@ module com { module sun { module star { module accessibility {
<type>XAccessibleText</type> interface and extents it with a notion
of line numbers</p>
- @since OOo 3.0.0
+ @since OOo 3.0
*/
/// not yet published
diff --git a/offapi/com/sun/star/animations/XAnimationListener.idl b/offapi/com/sun/star/animations/XAnimationListener.idl
index 1a71cae3457b..d1f4f453ee60 100644
--- a/offapi/com/sun/star/animations/XAnimationListener.idl
+++ b/offapi/com/sun/star/animations/XAnimationListener.idl
@@ -43,7 +43,7 @@
/** makes it possible to register listeners, which are called whenever
an animation event occurs.
- @since #i71351#
+ @since OOo 3.0
*/
interface XAnimationListener : ::com::sun::star::lang::XEventListener
{
diff --git a/offapi/com/sun/star/awt/EnhancedMouseEvent.idl b/offapi/com/sun/star/awt/EnhancedMouseEvent.idl
index f866397e0613..99f0ee3c8b01 100644
--- a/offapi/com/sun/star/awt/EnhancedMouseEvent.idl
+++ b/offapi/com/sun/star/awt/EnhancedMouseEvent.idl
@@ -42,7 +42,7 @@
@see MouseEvent
- @since OOo 2.0.0
+ @since OOo 2.0
*/
published struct EnhancedMouseEvent: com::sun::star::awt::MouseEvent
diff --git a/offapi/com/sun/star/awt/UnoControlButtonModel.idl b/offapi/com/sun/star/awt/UnoControlButtonModel.idl
index 1a8b4b2cced8..ae4773fe66bc 100644
--- a/offapi/com/sun/star/awt/UnoControlButtonModel.idl
+++ b/offapi/com/sun/star/awt/UnoControlButtonModel.idl
@@ -95,7 +95,7 @@ published service UnoControlButtonModel
If set to <FALSE/>, the focus is preserved when the user operates the button control with
the mouse.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] boolean FocusOnClick;
@@ -183,7 +183,7 @@ published service UnoControlButtonModel
/** specifies that the text may be displayed on more than one line.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] boolean MultiLine;
@@ -208,7 +208,7 @@ published service UnoControlButtonModel
set to <TRUE/>, the button is repeatedly pressed while you hold
down the mouse button.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] boolean Repeat;
@@ -222,7 +222,7 @@ published service UnoControlButtonModel
mouse button and to press it again. The delay between two such triggers
is specified with this property.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] long RepeatDelay;
@@ -261,7 +261,7 @@ published service UnoControlButtonModel
<p>The default for this property is <FALSE/>, which means the button behaves like a usual
push button.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] boolean Toggle;
@@ -269,7 +269,7 @@ published service UnoControlButtonModel
/** specifies the vertical alignment of the text in the control.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] com::sun::star::style::VerticalAlignment VerticalAlign;
diff --git a/offapi/com/sun/star/awt/UnoControlCheckBoxModel.idl b/offapi/com/sun/star/awt/UnoControlCheckBoxModel.idl
index 7870f03f4aec..e6eb9754175d 100644
--- a/offapi/com/sun/star/awt/UnoControlCheckBoxModel.idl
+++ b/offapi/com/sun/star/awt/UnoControlCheckBoxModel.idl
@@ -65,7 +65,7 @@ published service UnoControlCheckBoxModel
2: right
</pre>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] short Align;
@@ -155,7 +155,7 @@ published service UnoControlCheckBoxModel
/** specifies that the text may be displayed on more than one line.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] boolean MultiLine;
@@ -205,7 +205,7 @@ published service UnoControlCheckBoxModel
/** specifies the vertical alignment of the text in the control.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] com::sun::star::style::VerticalAlignment VerticalAlign;
@@ -218,7 +218,7 @@ published service UnoControlCheckBoxModel
@see com::sun::star::awt::VisualEffect
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] short VisualEffect;
diff --git a/offapi/com/sun/star/awt/UnoControlComboBoxModel.idl b/offapi/com/sun/star/awt/UnoControlComboBoxModel.idl
index 1040873d6180..c89ab34cdec8 100644
--- a/offapi/com/sun/star/awt/UnoControlComboBoxModel.idl
+++ b/offapi/com/sun/star/awt/UnoControlComboBoxModel.idl
@@ -96,7 +96,7 @@ published service UnoControlComboBoxModel
<p>Not every border style (see <member>Border</member>) may support coloring.
For instance, usually a border with 3D effect will ignore the BorderColor setting.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] long BorderColor;
@@ -149,7 +149,7 @@ published service UnoControlComboBoxModel
/** specifies whether the selection in the control should be hidden when
the control is not active (focused).
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] boolean HideInactiveSelection;
diff --git a/offapi/com/sun/star/awt/UnoControlContainerModel.idl b/offapi/com/sun/star/awt/UnoControlContainerModel.idl
index 9fda3791781f..1fa71bcf1b7c 100644
--- a/offapi/com/sun/star/awt/UnoControlContainerModel.idl
+++ b/offapi/com/sun/star/awt/UnoControlContainerModel.idl
@@ -79,7 +79,7 @@ published service UnoControlContainerModel
<p>Not every border style (see <member>Border</member>) may support coloring.
For instance, usually a border with 3D effect will ignore the BorderColor setting.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] long BorderColor;
diff --git a/offapi/com/sun/star/awt/UnoControlCurrencyFieldModel.idl b/offapi/com/sun/star/awt/UnoControlCurrencyFieldModel.idl
index 781d672d2001..9ea37aabc43d 100644
--- a/offapi/com/sun/star/awt/UnoControlCurrencyFieldModel.idl
+++ b/offapi/com/sun/star/awt/UnoControlCurrencyFieldModel.idl
@@ -80,7 +80,7 @@ published service UnoControlCurrencyFieldModel
<p>Not every border style (see <member>Border</member>) may support coloring.
For instance, usually a border with 3D effect will ignore the BorderColor setting.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] long BorderColor;
@@ -139,7 +139,7 @@ published service UnoControlCurrencyFieldModel
/** specifies whether the selection in the control should be hidden when
the control is not active (focused).
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] boolean HideInactiveSelection;
@@ -167,7 +167,7 @@ published service UnoControlCurrencyFieldModel
/** specifies whether the mouse should show repeating behavior, i.e.
repeatedly trigger an action when keeping pressed.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] boolean Repeat;
@@ -181,7 +181,7 @@ published service UnoControlCurrencyFieldModel
mouse button and to press it again. The delay between two such triggers
is specified with this property.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] long RepeatDelay;
@@ -267,7 +267,7 @@ published service UnoControlCurrencyFieldModel
/** specifies the vertical alignment of the text in the control.
- @since OpenOffice.org 3.3
+ @since OOo 3.3
*/
[optional, property] com::sun::star::style::VerticalAlignment VerticalAlign;
};
diff --git a/offapi/com/sun/star/awt/UnoControlDateFieldModel.idl b/offapi/com/sun/star/awt/UnoControlDateFieldModel.idl
index 2ce08a35f774..a44559b1bbf2 100644
--- a/offapi/com/sun/star/awt/UnoControlDateFieldModel.idl
+++ b/offapi/com/sun/star/awt/UnoControlDateFieldModel.idl
@@ -80,7 +80,7 @@ published service UnoControlDateFieldModel
<p>Not every border style (see <member>Border</member>) may support coloring.
For instance, usually a border with 3D effect will ignore the BorderColor setting.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] long BorderColor;
@@ -180,7 +180,7 @@ published service UnoControlDateFieldModel
/** specifies whether the selection in the control should be hidden when
the control is not active (focused).
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] boolean HideInactiveSelection;
@@ -201,7 +201,7 @@ published service UnoControlDateFieldModel
/** specifies whether the mouse should show repeating behavior, i.e.
repeatedly trigger an action when keeping pressed.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] boolean Repeat;
@@ -215,7 +215,7 @@ published service UnoControlDateFieldModel
mouse button and to press it again. The delay between two such triggers
is specified with this property.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] long RepeatDelay;
@@ -241,7 +241,7 @@ published service UnoControlDateFieldModel
/** specifies the text displayed in the control.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] string Text;
@@ -279,7 +279,7 @@ published service UnoControlDateFieldModel
/** specifies the vertical alignment of the text in the control.
- @since OpenOffice.org 3.3
+ @since OOo 3.3
*/
[optional, property] com::sun::star::style::VerticalAlignment VerticalAlign;
};
diff --git a/offapi/com/sun/star/awt/UnoControlDialogModel.idl b/offapi/com/sun/star/awt/UnoControlDialogModel.idl
index ff6188e5276e..f8970413cdd3 100644
--- a/offapi/com/sun/star/awt/UnoControlDialogModel.idl
+++ b/offapi/com/sun/star/awt/UnoControlDialogModel.idl
@@ -161,7 +161,7 @@ published service UnoControlDialogModel
/** If set to true the dialog will have the desktop as parent.
- @since OOo 2.3.0
+ @since OOo 2.3
*/
[optional, property] boolean DesktopAsParent;
@@ -169,7 +169,7 @@ published service UnoControlDialogModel
background image.
@see Graphic
- @since OOo 2.4.0
+ @since OOo 2.4
*/
[optional, property] string ImageURL;
@@ -184,7 +184,7 @@ published service UnoControlDialogModel
to an empty string.</li>
</ul></p>
- @since OOo 2.4.0
+ @since OOo 2.4
*/
[optional, property, transient] com::sun::star::graphic::XGraphic Graphic;
diff --git a/offapi/com/sun/star/awt/UnoControlDialogModelProvider.idl b/offapi/com/sun/star/awt/UnoControlDialogModelProvider.idl
index a91065f72d66..e153c8c47370 100644
--- a/offapi/com/sun/star/awt/UnoControlDialogModelProvider.idl
+++ b/offapi/com/sun/star/awt/UnoControlDialogModelProvider.idl
@@ -39,7 +39,7 @@ module com { module sun { module star { module awt {
/** specifies a service to load a dialog model and allows to access the control models inside
- @since OOo 3.3.0
+ @since OOo 3.3
*/
service UnoControlDialogModelProvider : com::sun::star::container::XNameContainer
{
diff --git a/offapi/com/sun/star/awt/UnoControlEditModel.idl b/offapi/com/sun/star/awt/UnoControlEditModel.idl
index 5ac71c442f3b..094ef6e58f92 100644
--- a/offapi/com/sun/star/awt/UnoControlEditModel.idl
+++ b/offapi/com/sun/star/awt/UnoControlEditModel.idl
@@ -72,7 +72,7 @@ published service UnoControlEditModel
/** If set to true an horizontal scrollbar will be added automatically
when needed.
- @since OOo 2.3.0
+ @since OOo 2.3
*/
[optional, property] boolean AutoHScroll;
@@ -81,7 +81,7 @@ published service UnoControlEditModel
/** If set to true an vertical scrollbar will be added automatically
when needed.
- @since OOo 2.3.0
+ @since OOo 2.3
*/
[optional, property] boolean AutoVScroll;
@@ -110,7 +110,7 @@ published service UnoControlEditModel
<p>Not every border style (see <member>Border</member>) may support coloring.
For instance, usually a border with 3D effect will ignore the BorderColor setting.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] long BorderColor;
@@ -170,7 +170,7 @@ published service UnoControlEditModel
/** specifies whether the selection in the control should be hidden when
the control is not active (focused).
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] boolean HideInactiveSelection;
@@ -196,7 +196,7 @@ published service UnoControlEditModel
No matter which line end format is used in this new text then, usual control implementations
should recognize all line end formats and display them properly.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] short LineEndFormat;
@@ -218,7 +218,7 @@ published service UnoControlEditModel
/** specifies whether the control paints it background or not.
- @since OOo 2.3.0
+ @since OOo 2.3
*/
[optional, property] boolean PaintTransparent;
@@ -279,7 +279,7 @@ published service UnoControlEditModel
/** specifies the vertical alignment of the text in the control.
- @since OpenOffice.org 3.3
+ @since OOo 3.3
*/
[optional, property] com::sun::star::style::VerticalAlignment VerticalAlign;
};
diff --git a/offapi/com/sun/star/awt/UnoControlFileControlModel.idl b/offapi/com/sun/star/awt/UnoControlFileControlModel.idl
index e609a51512ae..cec080c3fcb2 100644
--- a/offapi/com/sun/star/awt/UnoControlFileControlModel.idl
+++ b/offapi/com/sun/star/awt/UnoControlFileControlModel.idl
@@ -80,7 +80,7 @@ published service UnoControlFileControlModel
<p>Not every border style (see <member>Border</member>) may support coloring.
For instance, usually a border with 3D effect will ignore the BorderColor setting.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] long BorderColor;
@@ -127,7 +127,7 @@ published service UnoControlFileControlModel
/** specifies whether the selection in the control should be hidden when
the control is not active (focused).
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] boolean HideInactiveSelection;
@@ -173,7 +173,7 @@ published service UnoControlFileControlModel
/** specifies the vertical alignment of the text in the control.
- @since OpenOffice.org 3.3
+ @since OOo 3.3
*/
[optional, property] com::sun::star::style::VerticalAlignment VerticalAlign;
};
diff --git a/offapi/com/sun/star/awt/UnoControlFixedHyperlinkModel.idl b/offapi/com/sun/star/awt/UnoControlFixedHyperlinkModel.idl
index 8d5938d21f6f..e4a6bd3dbd58 100644
--- a/offapi/com/sun/star/awt/UnoControlFixedHyperlinkModel.idl
+++ b/offapi/com/sun/star/awt/UnoControlFixedHyperlinkModel.idl
@@ -93,7 +93,7 @@ service UnoControlFixedHyperlinkModel
<p>Not every border style (see <member>Border</member>) may support coloring.
For instance, usually a border with 3D effect will ignore the BorderColor setting.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] long BorderColor;
@@ -175,7 +175,7 @@ service UnoControlFixedHyperlinkModel
/** specifies the vertical alignment of the text in the control.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] com::sun::star::style::VerticalAlignment VerticalAlign;
};
diff --git a/offapi/com/sun/star/awt/UnoControlFixedTextModel.idl b/offapi/com/sun/star/awt/UnoControlFixedTextModel.idl
index 10a8b9499a3b..8ca74f131152 100644
--- a/offapi/com/sun/star/awt/UnoControlFixedTextModel.idl
+++ b/offapi/com/sun/star/awt/UnoControlFixedTextModel.idl
@@ -93,7 +93,7 @@ published service UnoControlFixedTextModel
<p>Not every border style (see <member>Border</member>) may support coloring.
For instance, usually a border with 3D effect will ignore the BorderColor setting.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] long BorderColor;
@@ -169,7 +169,7 @@ published service UnoControlFixedTextModel
/** specifies the vertical alignment of the text in the control.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] com::sun::star::style::VerticalAlignment VerticalAlign;
diff --git a/offapi/com/sun/star/awt/UnoControlFormattedFieldModel.idl b/offapi/com/sun/star/awt/UnoControlFormattedFieldModel.idl
index a804f2cfa907..d30a03346b18 100644
--- a/offapi/com/sun/star/awt/UnoControlFormattedFieldModel.idl
+++ b/offapi/com/sun/star/awt/UnoControlFormattedFieldModel.idl
@@ -96,7 +96,7 @@ published service UnoControlFormattedFieldModel
<p>Not every border style (see <member>Border</member>) may support coloring.
For instance, usually a border with 3D effect will ignore the BorderColor setting.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] long BorderColor;
@@ -196,7 +196,7 @@ published service UnoControlFormattedFieldModel
/** specifies whether the selection in the control should be hidden when
the control is not active (focused).
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] boolean HideInactiveSelection;
@@ -226,7 +226,7 @@ published service UnoControlFormattedFieldModel
/** specifies whether the mouse should show repeating behavior, i.e.
repeatedly trigger an action when keeping pressed.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] boolean Repeat;
@@ -240,7 +240,7 @@ published service UnoControlFormattedFieldModel
mouse button and to press it again. The delay between two such triggers
is specified with this property.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] long RepeatDelay;
@@ -312,7 +312,7 @@ published service UnoControlFormattedFieldModel
/** specifies the vertical alignment of the text in the control.
- @since OpenOffice.org 3.3
+ @since OOo 3.3
*/
[optional, property] com::sun::star::style::VerticalAlignment VerticalAlign;
};
diff --git a/offapi/com/sun/star/awt/UnoControlImageControlModel.idl b/offapi/com/sun/star/awt/UnoControlImageControlModel.idl
index aadf3074fcbe..7e6dfa8641be 100644
--- a/offapi/com/sun/star/awt/UnoControlImageControlModel.idl
+++ b/offapi/com/sun/star/awt/UnoControlImageControlModel.idl
@@ -75,7 +75,7 @@ published service UnoControlImageControlModel
<p>Not every border style (see <member>Border</member>) may support coloring.
For instance, usually a border with 3D effect will ignore the BorderColor setting.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] long BorderColor;
diff --git a/offapi/com/sun/star/awt/UnoControlListBoxModel.idl b/offapi/com/sun/star/awt/UnoControlListBoxModel.idl
index 1579823bf68e..4456d49ea0be 100644
--- a/offapi/com/sun/star/awt/UnoControlListBoxModel.idl
+++ b/offapi/com/sun/star/awt/UnoControlListBoxModel.idl
@@ -91,7 +91,7 @@ published service UnoControlListBoxModel
<p>Not every border style (see <member>Border</member>) may support coloring.
For instance, usually a border with 3D effect will ignore the BorderColor setting.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] long BorderColor;
diff --git a/offapi/com/sun/star/awt/UnoControlNumericFieldModel.idl b/offapi/com/sun/star/awt/UnoControlNumericFieldModel.idl
index a3988d7e2ae9..1d080175a780 100644
--- a/offapi/com/sun/star/awt/UnoControlNumericFieldModel.idl
+++ b/offapi/com/sun/star/awt/UnoControlNumericFieldModel.idl
@@ -80,7 +80,7 @@ published service UnoControlNumericFieldModel
<p>Not every border style (see <member>Border</member>) may support coloring.
For instance, usually a border with 3D effect will ignore the BorderColor setting.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] long BorderColor;
@@ -133,7 +133,7 @@ published service UnoControlNumericFieldModel
/** specifies whether the selection in the control should be hidden when
the control is not active (focused).
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] boolean HideInactiveSelection;
@@ -155,7 +155,7 @@ published service UnoControlNumericFieldModel
/** specifies whether the mouse should show repeating behavior, i.e.
repeatedly trigger an action when keeping pressed.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] boolean Repeat;
@@ -169,7 +169,7 @@ published service UnoControlNumericFieldModel
mouse button and to press it again. The delay between two such triggers
is specified with this property.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] long RepeatDelay;
@@ -255,7 +255,7 @@ published service UnoControlNumericFieldModel
/** specifies the vertical alignment of the text in the control.
- @since OpenOffice.org 3.3
+ @since OOo 3.3
*/
[optional, property] com::sun::star::style::VerticalAlignment VerticalAlign;
};
diff --git a/offapi/com/sun/star/awt/UnoControlPatternFieldModel.idl b/offapi/com/sun/star/awt/UnoControlPatternFieldModel.idl
index 8b4b6ccf601c..2f9f09fd5b3f 100644
--- a/offapi/com/sun/star/awt/UnoControlPatternFieldModel.idl
+++ b/offapi/com/sun/star/awt/UnoControlPatternFieldModel.idl
@@ -80,7 +80,7 @@ published service UnoControlPatternFieldModel
<p>Not every border style (see <member>Border</member>) may support coloring.
For instance, usually a border with 3D effect will ignore the BorderColor setting.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] long BorderColor;
@@ -133,7 +133,7 @@ published service UnoControlPatternFieldModel
/** specifies whether the selection in the control should be hidden when
the control is not active (focused).
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] boolean HideInactiveSelection;
@@ -214,7 +214,7 @@ published service UnoControlPatternFieldModel
/** specifies the vertical alignment of the text in the control.
- @since OpenOffice.org 3.3
+ @since OOo 3.3
*/
[optional, property] com::sun::star::style::VerticalAlignment VerticalAlign;
};
diff --git a/offapi/com/sun/star/awt/UnoControlProgressBarModel.idl b/offapi/com/sun/star/awt/UnoControlProgressBarModel.idl
index 1ffb7ace534a..3d54d391e3db 100644
--- a/offapi/com/sun/star/awt/UnoControlProgressBarModel.idl
+++ b/offapi/com/sun/star/awt/UnoControlProgressBarModel.idl
@@ -73,7 +73,7 @@ published service UnoControlProgressBarModel
<p>Not every border style (see <member>Border</member>) may support coloring.
For instance, usually a border with 3D effect will ignore the BorderColor setting.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] long BorderColor;
diff --git a/offapi/com/sun/star/awt/UnoControlRadioButtonModel.idl b/offapi/com/sun/star/awt/UnoControlRadioButtonModel.idl
index 6676e98e7e6e..cd8568f956ea 100644
--- a/offapi/com/sun/star/awt/UnoControlRadioButtonModel.idl
+++ b/offapi/com/sun/star/awt/UnoControlRadioButtonModel.idl
@@ -66,7 +66,7 @@ published service UnoControlRadioButtonModel
2: right
</pre>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] short Align;
@@ -156,7 +156,7 @@ published service UnoControlRadioButtonModel
/** specifies that the text may be displayed on more than one line.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] boolean MultiLine;
@@ -199,7 +199,7 @@ published service UnoControlRadioButtonModel
/** specifies the vertical alignment of the text in the control.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] com::sun::star::style::VerticalAlignment VerticalAlign;
@@ -212,7 +212,7 @@ published service UnoControlRadioButtonModel
@see com::sun::star::awt::VisualEffect
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] short VisualEffect;
diff --git a/offapi/com/sun/star/awt/UnoControlScrollBarModel.idl b/offapi/com/sun/star/awt/UnoControlScrollBarModel.idl
index e9f2b2340c0e..62a8977b2e88 100644
--- a/offapi/com/sun/star/awt/UnoControlScrollBarModel.idl
+++ b/offapi/com/sun/star/awt/UnoControlScrollBarModel.idl
@@ -52,7 +52,7 @@ published service UnoControlScrollBarModel
/** specifies the RGB color to be used for the control.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] com::sun::star::util::Color BackgroundColor;
@@ -81,7 +81,7 @@ published service UnoControlScrollBarModel
<p>Not every border style (see <member>Border</member>) may support coloring.
For instance, usually a border with 3D effect will ignore the BorderColor setting.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] long BorderColor;
@@ -118,7 +118,7 @@ published service UnoControlScrollBarModel
<FALSE/> means, that the window is only updated after the user has
released the mouse button.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] boolean LiveScroll;
@@ -144,7 +144,7 @@ published service UnoControlScrollBarModel
mouse button and to press it again. The delay between two such triggers
is specified with this property.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] long RepeatDelay;
@@ -174,7 +174,7 @@ published service UnoControlScrollBarModel
/** specifies the RGB color to be used when painting symbols which are
part of the control's appearance, such as the arrow buttons.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] com::sun::star::util::Color SymbolColor;
@@ -182,7 +182,7 @@ published service UnoControlScrollBarModel
/** specifies that the control can be reached with the TAB key.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] boolean Tabstop;
diff --git a/offapi/com/sun/star/awt/UnoControlSpinButtonModel.idl b/offapi/com/sun/star/awt/UnoControlSpinButtonModel.idl
index 73e82363f5b3..ee8a23b15f9b 100644..100755
--- a/offapi/com/sun/star/awt/UnoControlSpinButtonModel.idl
+++ b/offapi/com/sun/star/awt/UnoControlSpinButtonModel.idl
@@ -76,7 +76,7 @@ service UnoControlSpinButtonModel
<p>Not every border style (see <member>Border</member>) may support coloring.
For instance, usually a border with 3D effect will ignore the BorderColor setting.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] long BorderColor;
diff --git a/offapi/com/sun/star/awt/UnoControlTimeFieldModel.idl b/offapi/com/sun/star/awt/UnoControlTimeFieldModel.idl
index 671846c06703..893cfe73a45e 100644
--- a/offapi/com/sun/star/awt/UnoControlTimeFieldModel.idl
+++ b/offapi/com/sun/star/awt/UnoControlTimeFieldModel.idl
@@ -80,7 +80,7 @@ published service UnoControlTimeFieldModel
<p>Not every border style (see <member>Border</member>) may support coloring.
For instance, usually a border with 3D effect will ignore the BorderColor setting.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] long BorderColor;
@@ -127,7 +127,7 @@ published service UnoControlTimeFieldModel
/** specifies whether the selection in the control should be hidden when
the control is not active (focused).
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] boolean HideInactiveSelection;
@@ -148,7 +148,7 @@ published service UnoControlTimeFieldModel
/** specifies whether the mouse should show repeating behavior, i.e.
repeatedly trigger an action when keeping pressed.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] boolean Repeat;
@@ -162,7 +162,7 @@ published service UnoControlTimeFieldModel
mouse button and to press it again. The delay between two such triggers
is specified with this property.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] long RepeatDelay;
@@ -188,7 +188,7 @@ published service UnoControlTimeFieldModel
/** specifies the text displayed in the control.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] string Text;
@@ -259,7 +259,7 @@ published service UnoControlTimeFieldModel
/** specifies the vertical alignment of the text in the control.
- @since OpenOffice.org 3.3
+ @since OOo 3.3
*/
[optional, property] com::sun::star::style::VerticalAlignment VerticalAlign;
};
diff --git a/offapi/com/sun/star/awt/XEnhancedMouseClickHandler.idl b/offapi/com/sun/star/awt/XEnhancedMouseClickHandler.idl
index 547bab7c6efc..64dde0ed9390 100644
--- a/offapi/com/sun/star/awt/XEnhancedMouseClickHandler.idl
+++ b/offapi/com/sun/star/awt/XEnhancedMouseClickHandler.idl
@@ -44,7 +44,7 @@ module com { module sun { module star { module awt {
/** makes it possible to receive enhanced events from the mouse.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
published interface XEnhancedMouseClickHandler: ::com::sun::star::lang::XEventListener
diff --git a/offapi/com/sun/star/awt/grid/DefaultGridColumnModel.idl b/offapi/com/sun/star/awt/grid/DefaultGridColumnModel.idl
index db69a6b5d842..36e41d9384f9 100644
--- a/offapi/com/sun/star/awt/grid/DefaultGridColumnModel.idl
+++ b/offapi/com/sun/star/awt/grid/DefaultGridColumnModel.idl
@@ -38,7 +38,7 @@
//=============================================================================
/** If you do not want to implement the <type>XGridColumnModel</type> yourself, use this service.
- @since OOo 3.3.0
+ @since OOo 3.3
*/
service DefaultGridColumnModel
{
diff --git a/offapi/com/sun/star/awt/grid/DefaultGridDataModel.idl b/offapi/com/sun/star/awt/grid/DefaultGridDataModel.idl
index 8c2726f42851..c802db2f870e 100644
--- a/offapi/com/sun/star/awt/grid/DefaultGridDataModel.idl
+++ b/offapi/com/sun/star/awt/grid/DefaultGridDataModel.idl
@@ -43,7 +43,7 @@
<p>The implementation will implicitly increase its column count if you add a row which has more values than
the current column count.</p>
- @since OOo 3.3.0
+ @since OOo 3.3
*/
service DefaultGridDataModel : ::com::sun::star::awt::grid::XMutableGridDataModel;
diff --git a/offapi/com/sun/star/awt/grid/GridColumn.idl b/offapi/com/sun/star/awt/grid/GridColumn.idl
index a87aef84f7d3..383ff37eb673 100644
--- a/offapi/com/sun/star/awt/grid/GridColumn.idl
+++ b/offapi/com/sun/star/awt/grid/GridColumn.idl
@@ -39,7 +39,7 @@
/** Represents a column as used by the <type>DefaultGridColumnModel</type>
- @since OOo 3.3.0
+ @since OOo 3.3
*/
service GridColumn
{
diff --git a/offapi/com/sun/star/awt/grid/GridColumnEvent.idl b/offapi/com/sun/star/awt/grid/GridColumnEvent.idl
index 4ab6e71caf51..22380b944a83 100644
--- a/offapi/com/sun/star/awt/grid/GridColumnEvent.idl
+++ b/offapi/com/sun/star/awt/grid/GridColumnEvent.idl
@@ -38,7 +38,7 @@ module com { module sun { module star { module awt { module grid {
//=============================================================================
/** An event used by a <type>XGridColumn</type> to notify changes in the column.
- @since OOo 3.3.0
+ @since OOo 3.3
*/
struct GridColumnEvent: com::sun::star::lang::EventObject
{
diff --git a/offapi/com/sun/star/awt/grid/GridDataEvent.idl b/offapi/com/sun/star/awt/grid/GridDataEvent.idl
index 3ac05f0ec1ae..7430f3d97e66 100644
--- a/offapi/com/sun/star/awt/grid/GridDataEvent.idl
+++ b/offapi/com/sun/star/awt/grid/GridDataEvent.idl
@@ -43,7 +43,7 @@ module com { module sun { module star { module awt { module grid {
@see XMutableGridDataModel
@see XGridDataListener
- @since OOo 3.3.0
+ @since OOo 3.3
*/
struct GridDataEvent: com::sun::star::lang::EventObject
{
diff --git a/offapi/com/sun/star/awt/grid/GridInvalidDataException.idl b/offapi/com/sun/star/awt/grid/GridInvalidDataException.idl
index b33727e2a1dc..e9fd149afcc2 100644
--- a/offapi/com/sun/star/awt/grid/GridInvalidDataException.idl
+++ b/offapi/com/sun/star/awt/grid/GridInvalidDataException.idl
@@ -41,7 +41,7 @@ module com { module sun { module star { module awt { module grid {
/** Exception is thrown to indicate that set data is invalid, e.g. type of data is unknown
or data count doesn't match with column count.
- @since OOo 3.3.0
+ @since OOo 3.3
*/
exception GridInvalidDataException : com::sun::star::uno::RuntimeException
{
diff --git a/offapi/com/sun/star/awt/grid/GridInvalidModelException.idl b/offapi/com/sun/star/awt/grid/GridInvalidModelException.idl
index da59d1a95040..db550a3ffc75 100644
--- a/offapi/com/sun/star/awt/grid/GridInvalidModelException.idl
+++ b/offapi/com/sun/star/awt/grid/GridInvalidModelException.idl
@@ -40,7 +40,7 @@ module com { module sun { module star { module awt { module grid {
/** Exception is thrown when data or column model isn't set.
- @since OOo 3.3.0
+ @since OOo 3.3
*/
exception GridInvalidModelException : com::sun::star::uno::RuntimeException
{
diff --git a/offapi/com/sun/star/awt/grid/UnoControlGrid.idl b/offapi/com/sun/star/awt/grid/UnoControlGrid.idl
index 55b251c64876..93c7ea646ca6 100644
--- a/offapi/com/sun/star/awt/grid/UnoControlGrid.idl
+++ b/offapi/com/sun/star/awt/grid/UnoControlGrid.idl
@@ -66,7 +66,7 @@
The <type>XGridSelection</type> interface provides a bunch of methods to set and get selection for the grid control.
</p>
- @since OOo 3.3.0
+ @since OOo 3.3
*/
service UnoControlGrid
{
diff --git a/offapi/com/sun/star/awt/grid/UnoControlGridModel.idl b/offapi/com/sun/star/awt/grid/UnoControlGridModel.idl
index a348d4b3e23c..02b4d93f621d 100644
--- a/offapi/com/sun/star/awt/grid/UnoControlGridModel.idl
+++ b/offapi/com/sun/star/awt/grid/UnoControlGridModel.idl
@@ -43,7 +43,7 @@ module com { module sun { module star { module awt { module grid {
/** specifies the standard model of a <type>UnoControlGrid</type> control.
- @since OOo 3.3.0
+ @since OOo 3.3
*/
service UnoControlGridModel
{
diff --git a/offapi/com/sun/star/awt/grid/XGridColumn.idl b/offapi/com/sun/star/awt/grid/XGridColumn.idl
index 46e651e60fa4..1fa52dcae706 100644
--- a/offapi/com/sun/star/awt/grid/XGridColumn.idl
+++ b/offapi/com/sun/star/awt/grid/XGridColumn.idl
@@ -40,7 +40,7 @@ module com { module sun { module star { module awt { module grid {
//=============================================================================
/** The <type>XGridColumn</types> defines the properties and behavior of a column in a grid control
- @since OOo 3.3.0
+ @since OOo 3.3
*/
interface XGridColumn
{
diff --git a/offapi/com/sun/star/awt/grid/XGridColumnListener.idl b/offapi/com/sun/star/awt/grid/XGridColumnListener.idl
index 9a8a02eca8f2..09ac590ba3f2 100644
--- a/offapi/com/sun/star/awt/grid/XGridColumnListener.idl
+++ b/offapi/com/sun/star/awt/grid/XGridColumnListener.idl
@@ -39,7 +39,7 @@ module com { module sun { module star { module awt { module grid {
/** An instance of this interface is used by the <type>XGridColumnModel</type> to
get notifications about column model changes.
- @since OOo 3.3.0
+ @since OOo 3.3
*/
interface XGridColumnListener : ::com::sun::star::lang::XEventListener
{
diff --git a/offapi/com/sun/star/awt/grid/XGridColumnModel.idl b/offapi/com/sun/star/awt/grid/XGridColumnModel.idl
index 257f597fc7d2..434be67ed3f8 100644
--- a/offapi/com/sun/star/awt/grid/XGridColumnModel.idl
+++ b/offapi/com/sun/star/awt/grid/XGridColumnModel.idl
@@ -47,7 +47,7 @@ module com { module sun { module star { module awt { module grid {
If you do not need your own model implementation, you can also use the <type>DefaultGridColumnModel</type>.
- @since OOo 3.3.0
+ @since OOo 3.3
*/
interface XGridColumnModel
{
diff --git a/offapi/com/sun/star/awt/grid/XGridControl.idl b/offapi/com/sun/star/awt/grid/XGridControl.idl
index 3c2c3d241528..b742c1acb484 100644
--- a/offapi/com/sun/star/awt/grid/XGridControl.idl
+++ b/offapi/com/sun/star/awt/grid/XGridControl.idl
@@ -39,7 +39,7 @@ module com { module sun { module star { module awt { module grid {
@see UnoControlGrid
- @since OOo 3.3.0
+ @since OOo 3.3
*/
interface XGridControl : XGridSelection
{
diff --git a/offapi/com/sun/star/awt/grid/XGridDataListener.idl b/offapi/com/sun/star/awt/grid/XGridDataListener.idl
index 709f048c08ce..9a324aee2668 100644
--- a/offapi/com/sun/star/awt/grid/XGridDataListener.idl
+++ b/offapi/com/sun/star/awt/grid/XGridDataListener.idl
@@ -47,7 +47,7 @@ module com { module sun { module star { module awt { module grid {
<p>Usually you must not implement this interface yourself, but you must notify it correctly if
you implement the <type>XGridDataModel</type> yourself</p>.
- @since OOo 3.3.0
+ @since OOo 3.3
*/
interface XGridDataListener: com::sun::star::lang::XEventListener
{
diff --git a/offapi/com/sun/star/awt/grid/XGridDataModel.idl b/offapi/com/sun/star/awt/grid/XGridDataModel.idl
index 1ff15e1310e0..469a4d1eb3bf 100644
--- a/offapi/com/sun/star/awt/grid/XGridDataModel.idl
+++ b/offapi/com/sun/star/awt/grid/XGridDataModel.idl
@@ -44,7 +44,7 @@ module com { module sun { module star { module awt { module grid {
If you do not need your own model implementation, you can also use the <type>DefaultGridDataModel</type>.
- @since OOo 3.3.0
+ @since OOo 3.3
*/
interface XGridDataModel
{
diff --git a/offapi/com/sun/star/configuration/DefaultProvider.idl b/offapi/com/sun/star/configuration/DefaultProvider.idl
index b41bdeec33a5..0fc09a078acc 100644
--- a/offapi/com/sun/star/configuration/DefaultProvider.idl
+++ b/offapi/com/sun/star/configuration/DefaultProvider.idl
@@ -78,14 +78,14 @@ published service DefaultProvider
/** Enable setting/getting locale for Provider
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional] interface com::sun::star::lang::XLocalizable;
/** Property to enable/disable asynchronous write-back from in-memory cache to backend(s)
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional,property] boolean EnableAsync;
diff --git a/offapi/com/sun/star/configuration/Update.idl b/offapi/com/sun/star/configuration/Update.idl
index 790a4bb40235..8cd52a1c1a77 100644
--- a/offapi/com/sun/star/configuration/Update.idl
+++ b/offapi/com/sun/star/configuration/Update.idl
@@ -36,7 +36,7 @@ module com { module sun { module star { module configuration {
<p>This singleton is unpublished and unstable.</p>
- @since OOo 3.3.0
+ @since OOo 3.3
*/
singleton Update: XUpdate;
diff --git a/offapi/com/sun/star/configuration/XUpdate.idl b/offapi/com/sun/star/configuration/XUpdate.idl
index c3316ea5dc45..16455528fc48 100644
--- a/offapi/com/sun/star/configuration/XUpdate.idl
+++ b/offapi/com/sun/star/configuration/XUpdate.idl
@@ -36,7 +36,7 @@ module com { module sun { module star { module configuration {
<p>This interface is unpublished and unstable.</p>
- @since OOo 3.3.0
+ @since OOo 3.3
*/
interface XUpdate {
void insertExtensionXcsFile([in] boolean shared, [in] string fileUri);
diff --git a/offapi/com/sun/star/configuration/backend/InteractionHandler.idl b/offapi/com/sun/star/configuration/backend/InteractionHandler.idl
index 82a3595a6b08..108a3e0484c3 100644
--- a/offapi/com/sun/star/configuration/backend/InteractionHandler.idl
+++ b/offapi/com/sun/star/configuration/backend/InteractionHandler.idl
@@ -67,7 +67,7 @@ module com { module sun { module star { module configuration { module backend {
<LI>Approve, Disapprove, Abort</LI>
</UL></P>
- @since OOo 2.0.0
+ @since OOo 2.0
@see com::sun::star::task::InteractionHandler
*/
diff --git a/offapi/com/sun/star/configuration/backend/Layer.idl b/offapi/com/sun/star/configuration/backend/Layer.idl
index 8b9429810b15..545bddad641e 100644
--- a/offapi/com/sun/star/configuration/backend/Layer.idl
+++ b/offapi/com/sun/star/configuration/backend/Layer.idl
@@ -102,7 +102,7 @@ published service Layer
/**
The URL of the layer data.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[property,optional,readonly] string URL ;
diff --git a/offapi/com/sun/star/configuration/backend/LayerFilter.idl b/offapi/com/sun/star/configuration/backend/LayerFilter.idl
index ec5a209aa8ac..357b5ba6b2e7 100644
--- a/offapi/com/sun/star/configuration/backend/LayerFilter.idl
+++ b/offapi/com/sun/star/configuration/backend/LayerFilter.idl
@@ -54,7 +54,7 @@ module com { module sun { module star { module configuration { module backend {
@see com::sun::star::configuration::backend::DataImporter
Service that supports applying a <type>LayerFilter</type> to imported data.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
published service LayerFilter
{
diff --git a/offapi/com/sun/star/configuration/backend/MergeRecoveryRequest.idl b/offapi/com/sun/star/configuration/backend/MergeRecoveryRequest.idl
index 34b1c0ccfb56..d5decc5d0907 100644
--- a/offapi/com/sun/star/configuration/backend/MergeRecoveryRequest.idl
+++ b/offapi/com/sun/star/configuration/backend/MergeRecoveryRequest.idl
@@ -40,7 +40,7 @@ module com { module sun { module star { module configuration { module backend {
/** is passed to an <type>InteractionHandler<type> when merging fails due to
invalid layer data or access problems.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
exception MergeRecoveryRequest: ::com::sun::star::uno::Exception
{
diff --git a/offapi/com/sun/star/configuration/backend/Schema.idl b/offapi/com/sun/star/configuration/backend/Schema.idl
index 75d0237780fd..e5d8c55a6d15 100644
--- a/offapi/com/sun/star/configuration/backend/Schema.idl
+++ b/offapi/com/sun/star/configuration/backend/Schema.idl
@@ -72,7 +72,7 @@ published service Schema
/**
The URL of the layer data.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[property,optional,readonly] string URL ;
diff --git a/offapi/com/sun/star/configuration/backend/StratumCreationException.idl b/offapi/com/sun/star/configuration/backend/StratumCreationException.idl
index f425118de937..825c81a254ef 100644
--- a/offapi/com/sun/star/configuration/backend/StratumCreationException.idl
+++ b/offapi/com/sun/star/configuration/backend/StratumCreationException.idl
@@ -39,7 +39,7 @@ module com { module sun { module star { module configuration { module backend {
/** is passed to an <type>InteractionHandler<type> when creating a stratum backend fails.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
exception StratumCreationException : BackendSetupException
{
diff --git a/offapi/com/sun/star/deployment/DeploymentException.idl b/offapi/com/sun/star/deployment/DeploymentException.idl
index 3c07d803a48a..fd40cf0e8aec 100644
--- a/offapi/com/sun/star/deployment/DeploymentException.idl
+++ b/offapi/com/sun/star/deployment/DeploymentException.idl
@@ -35,7 +35,7 @@ module com { module sun { module star { module deployment {
/** A DeploymentException reflects a deployment error.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
exception DeploymentException : com::sun::star::uno::Exception
{
diff --git a/offapi/com/sun/star/deployment/ExtensionManager.idl b/offapi/com/sun/star/deployment/ExtensionManager.idl
index 1911ce04dd81..4494da1a9d0f 100644
--- a/offapi/com/sun/star/deployment/ExtensionManager.idl
+++ b/offapi/com/sun/star/deployment/ExtensionManager.idl
@@ -40,7 +40,7 @@ module com { module sun { module star { module deployment {
/singletons/com.sun.star.deployment.ExtensionManager
</code>.
- @since OOo 3.3.0
+ @since OOo 3.3
*/
singleton ExtensionManager : XExtensionManager;
diff --git a/offapi/com/sun/star/deployment/ExtensionRemovedException.idl b/offapi/com/sun/star/deployment/ExtensionRemovedException.idl
index 1cd400e248d6..0d0e06c96977 100644
--- a/offapi/com/sun/star/deployment/ExtensionRemovedException.idl
+++ b/offapi/com/sun/star/deployment/ExtensionRemovedException.idl
@@ -39,7 +39,7 @@ interface XPackage;
because the extension was removed. <member>XPackage::isRemoved</member> will
return true on that object.
- @since OOo 3.3.0
+ @since OOo 3.3
*/
exception ExtensionRemovedException: com::sun::star::uno::Exception {
diff --git a/offapi/com/sun/star/deployment/InvalidRemovedParameterException.idl b/offapi/com/sun/star/deployment/InvalidRemovedParameterException.idl
index 461005c20b5f..a67ab9b66190 100644
--- a/offapi/com/sun/star/deployment/InvalidRemovedParameterException.idl
+++ b/offapi/com/sun/star/deployment/InvalidRemovedParameterException.idl
@@ -39,7 +39,7 @@ interface XPackage;
called with a different value for the <code>removed</code> parameter and that
the <type>XPackage</type> object created by that call still exist.
- @since OOo 3.3.0
+ @since OOo 3.3
*/
exception InvalidRemovedParameterException: com::sun::star::uno::Exception {
/** the value of the <code>removed</code> parameter which was used in
diff --git a/offapi/com/sun/star/deployment/PackageRegistryBackend.idl b/offapi/com/sun/star/deployment/PackageRegistryBackend.idl
index 0ac85465284b..ee76030eb54b 100644
--- a/offapi/com/sun/star/deployment/PackageRegistryBackend.idl
+++ b/offapi/com/sun/star/deployment/PackageRegistryBackend.idl
@@ -40,7 +40,7 @@ module com { module sun { module star { module deployment {
are related to a <type>XPackageManager</type> instance.
</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
service PackageRegistryBackend : XPackageRegistry
{
diff --git a/offapi/com/sun/star/deployment/PlatformException.idl b/offapi/com/sun/star/deployment/PlatformException.idl
index fca14c2f2c6a..c67b204a59fb 100644
--- a/offapi/com/sun/star/deployment/PlatformException.idl
+++ b/offapi/com/sun/star/deployment/PlatformException.idl
@@ -36,7 +36,7 @@ module com { module sun { module star { module deployment {
/** A DeploymentException indicates that the current platform
is not supported.
- @since OOo 3.0.0
+ @since OOo 3.0
*/
exception PlatformException : com::sun::star::uno::Exception
{
diff --git a/offapi/com/sun/star/deployment/XExtensionManager.idl b/offapi/com/sun/star/deployment/XExtensionManager.idl
index 991e4b476db7..333fb1a06b49 100644
--- a/offapi/com/sun/star/deployment/XExtensionManager.idl
+++ b/offapi/com/sun/star/deployment/XExtensionManager.idl
@@ -45,7 +45,7 @@ module com { module sun { module star { module deployment {
in the user, shared and bundled repository.
@see ExtensionManager
- @since OOo 3.3.0
+ @since OOo 3.3
*/
interface XExtensionManager
{
diff --git a/offapi/com/sun/star/deployment/XPackage.idl b/offapi/com/sun/star/deployment/XPackage.idl
index a87708596943..d1f2b6b72d31 100755
--- a/offapi/com/sun/star/deployment/XPackage.idl
+++ b/offapi/com/sun/star/deployment/XPackage.idl
@@ -49,7 +49,7 @@ module com { module sun { module star { module deployment {
/** Objects of this interface reflect a bound package and are issued by a
<type>PackageRegistryBackend</type>.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XPackage
{
@@ -100,7 +100,7 @@ interface XPackage
After updating the OpenOffice.org, some dependencies for packages might
no longer be satisfied.
- @since OOo 3.2.0
+ @since OOo 3.2
@param xCmdEnv
command environment for error handling and other interaction.
diff --git a/offapi/com/sun/star/deployment/XPackageManager.idl b/offapi/com/sun/star/deployment/XPackageManager.idl
index 463c09efe4a7..06a643c54800 100644
--- a/offapi/com/sun/star/deployment/XPackageManager.idl
+++ b/offapi/com/sun/star/deployment/XPackageManager.idl
@@ -67,7 +67,7 @@ module com { module sun { module star { module deployment {
</p>
@see thePackageManagerFactory
- @since OOo 2.0.0
+ @since OOo 2.0
@deprecated
Use <type>XExtensionManager</type>.
*/
diff --git a/offapi/com/sun/star/deployment/XPackageManagerFactory.idl b/offapi/com/sun/star/deployment/XPackageManagerFactory.idl
index 4b5b7183ba47..f7e67543f4cd 100644
--- a/offapi/com/sun/star/deployment/XPackageManagerFactory.idl
+++ b/offapi/com/sun/star/deployment/XPackageManagerFactory.idl
@@ -44,7 +44,7 @@ module com { module sun { module star { module deployment {
exclusively.
</p>
- @since OOo 2.0.0
+ @since OOo 2.0
@deprecated
Use <type>XExtensionManager</type>.
*/
diff --git a/offapi/com/sun/star/deployment/XPackageRegistry.idl b/offapi/com/sun/star/deployment/XPackageRegistry.idl
index 98501de6c6fa..0c380a96924c 100644
--- a/offapi/com/sun/star/deployment/XPackageRegistry.idl
+++ b/offapi/com/sun/star/deployment/XPackageRegistry.idl
@@ -38,7 +38,7 @@ module com { module sun { module star { module deployment {
/** Interface to bind an UNO package.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XPackageRegistry
{
diff --git a/offapi/com/sun/star/deployment/XPackageTypeInfo.idl b/offapi/com/sun/star/deployment/XPackageTypeInfo.idl
index 7252f73d200b..9ba54160ade9 100644
--- a/offapi/com/sun/star/deployment/XPackageTypeInfo.idl
+++ b/offapi/com/sun/star/deployment/XPackageTypeInfo.idl
@@ -35,7 +35,7 @@ module com { module sun { module star { module deployment {
/** Objects of this interface provide information about a package's type.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XPackageTypeInfo
{
diff --git a/offapi/com/sun/star/deployment/thePackageManagerFactory.idl b/offapi/com/sun/star/deployment/thePackageManagerFactory.idl
index 85e95acea598..a0fbd4a35b7a 100644
--- a/offapi/com/sun/star/deployment/thePackageManagerFactory.idl
+++ b/offapi/com/sun/star/deployment/thePackageManagerFactory.idl
@@ -42,7 +42,7 @@ module com { module sun { module star { module deployment {
</code>.
</p>
- @since OOo 2.0.0
+ @since OOo 2.0
@deprecated
Use <type>XExtensionManager</type>.
*/
diff --git a/offapi/com/sun/star/deployment/ui/PackageManagerDialog.idl b/offapi/com/sun/star/deployment/ui/PackageManagerDialog.idl
index 8c9b6374e581..19b3075509ac 100644
--- a/offapi/com/sun/star/deployment/ui/PackageManagerDialog.idl
+++ b/offapi/com/sun/star/deployment/ui/PackageManagerDialog.idl
@@ -38,7 +38,7 @@ module com { module sun { module star { module deployment { module ui {
packages of the user and shared installation as well as currently open
documents.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
service PackageManagerDialog : com::sun::star::ui::dialogs::XAsynchronousExecutableDialog
{
diff --git a/offapi/com/sun/star/deployment/ui/UpdateRequiredDialog.idl b/offapi/com/sun/star/deployment/ui/UpdateRequiredDialog.idl
index 35b314b74f92..6e475539bab9 100644
--- a/offapi/com/sun/star/deployment/ui/UpdateRequiredDialog.idl
+++ b/offapi/com/sun/star/deployment/ui/UpdateRequiredDialog.idl
@@ -36,7 +36,7 @@ module com { module sun { module star { module deployment { module ui {
/** The <type>UpdateRequiredDialog</type> is used to show a list of extensions not compatible with this office version.
- @since OOo 3.2.0
+ @since OOo 3.2
*/
service UpdateRequiredDialog : com::sun::star::ui::dialogs::XExecutableDialog
{
diff --git a/offapi/com/sun/star/document/CorruptedFilterConfigurationException.idl b/offapi/com/sun/star/document/CorruptedFilterConfigurationException.idl
index af7116b085ea..e3fbf81c7223 100644
--- a/offapi/com/sun/star/document/CorruptedFilterConfigurationException.idl
+++ b/offapi/com/sun/star/document/CorruptedFilterConfigurationException.idl
@@ -41,7 +41,7 @@ module com { module sun { module star { module document {
/** This exception is thrown in case the global filter configuration
does not exists or contains corrupted data.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
published exception CorruptedFilterConfigurationException : ::com::sun::star::uno::RuntimeException
{
diff --git a/offapi/com/sun/star/document/DocumentEvent.idl b/offapi/com/sun/star/document/DocumentEvent.idl
index 1ec7f599ad6a..caa717a8217a 100644
--- a/offapi/com/sun/star/document/DocumentEvent.idl
+++ b/offapi/com/sun/star/document/DocumentEvent.idl
@@ -49,7 +49,7 @@ module com { module sun { module star { module document {
anymore.</p>
@see XDocumentEventBroadcaster
- @since OpenOffice.org 3.1
+ @since OOo 3.1
*/
struct DocumentEvent : ::com::sun::star::lang::EventObject
{
diff --git a/offapi/com/sun/star/document/XDocumentEventBroadcaster.idl b/offapi/com/sun/star/document/XDocumentEventBroadcaster.idl
index 61f4e49b886b..7885f9cde7da 100644
--- a/offapi/com/sun/star/document/XDocumentEventBroadcaster.idl
+++ b/offapi/com/sun/star/document/XDocumentEventBroadcaster.idl
@@ -58,7 +58,7 @@ interface XDocumentEventListener;
anymore.</p>
@see DocumentEvent
- @since OpenOffice.org 3.1
+ @since OOo 3.1
*/
interface XDocumentEventBroadcaster
{
diff --git a/offapi/com/sun/star/document/XDocumentEventListener.idl b/offapi/com/sun/star/document/XDocumentEventListener.idl
index 4d151b844659..bcaa6ecd8321 100644
--- a/offapi/com/sun/star/document/XDocumentEventListener.idl
+++ b/offapi/com/sun/star/document/XDocumentEventListener.idl
@@ -47,7 +47,7 @@ module com { module sun { module star { module document {
anymore.</p>
@see XDocumentEventBroadcaster
- @since OpenOffice.org 3.1
+ @since OOo 3.1
*/
interface XDocumentEventListener : ::com::sun::star::lang::XEventListener
{
diff --git a/offapi/com/sun/star/document/XMLBasicExporter.idl b/offapi/com/sun/star/document/XMLBasicExporter.idl
index 4e11911e3181..7766282276dd 100644
--- a/offapi/com/sun/star/document/XMLBasicExporter.idl
+++ b/offapi/com/sun/star/document/XMLBasicExporter.idl
@@ -53,7 +53,7 @@ module com { module sun { module star { module document {
from which the data should be exported. After that, the export is started
by calling the <method>XFilter::filter</method> method.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
published service XMLBasicExporter
{
diff --git a/offapi/com/sun/star/document/XMLBasicImporter.idl b/offapi/com/sun/star/document/XMLBasicImporter.idl
index 38f3bf3ff086..74b789c954ed 100644
--- a/offapi/com/sun/star/document/XMLBasicImporter.idl
+++ b/offapi/com/sun/star/document/XMLBasicImporter.idl
@@ -50,7 +50,7 @@ module com { module sun { module star { module document {
The <type scope="com::sun::star::xml::sax">XDocumentHandler</type>
interface is used to stream the XML data into the filter.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
published service XMLBasicImporter
{
diff --git a/offapi/com/sun/star/document/XMLOasisBasicExporter.idl b/offapi/com/sun/star/document/XMLOasisBasicExporter.idl
index 8c59e34f4301..b5817e99e8ee 100644
--- a/offapi/com/sun/star/document/XMLOasisBasicExporter.idl
+++ b/offapi/com/sun/star/document/XMLOasisBasicExporter.idl
@@ -53,7 +53,7 @@ module com { module sun { module star { module document {
from which the data should be exported. After that, the export is started
by calling the <method>XFilter::filter</method> method.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
published service XMLOasisBasicExporter
{
diff --git a/offapi/com/sun/star/document/XMLOasisBasicImporter.idl b/offapi/com/sun/star/document/XMLOasisBasicImporter.idl
index c0aadd8c4941..c77c6395a9be 100644
--- a/offapi/com/sun/star/document/XMLOasisBasicImporter.idl
+++ b/offapi/com/sun/star/document/XMLOasisBasicImporter.idl
@@ -50,7 +50,7 @@ module com { module sun { module star { module document {
The <type scope="com::sun::star::xml::sax">XDocumentHandler</type>
interface is used to stream the XML data into the filter.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
published service XMLOasisBasicImporter
{
diff --git a/offapi/com/sun/star/form/FormComponent.idl b/offapi/com/sun/star/form/FormComponent.idl
index 1b817310d702..bb48e67df44d 100644
--- a/offapi/com/sun/star/form/FormComponent.idl
+++ b/offapi/com/sun/star/form/FormComponent.idl
@@ -104,7 +104,7 @@ published service FormComponent
will always be set, even if you do not specify it in the
<member scope="com::sun::star::beans">XPropertyContainer::addProperty</member> call.</p>
- @since OpenOffice.org 2.3.0
+ @since OOo 2.3
*/
[optional] service com::sun::star::beans::PropertyBag;
diff --git a/offapi/com/sun/star/form/XErrorListener.idl b/offapi/com/sun/star/form/XErrorListener.idl
index 3e71453a8dda..6deca2e9ba7c 100644
--- a/offapi/com/sun/star/form/XErrorListener.idl
+++ b/offapi/com/sun/star/form/XErrorListener.idl
@@ -51,7 +51,6 @@
<p>Please do <em><b>not</b></em> use anymore, this interface is superseded
by <type scope="com::sun::star::sdb">XSQLErrorListener</type>.</p>
-@since foo
@deprecated
*/
published interface XErrorListener: com::sun::star::lang::XEventListener
diff --git a/offapi/com/sun/star/form/component/GridControl.idl b/offapi/com/sun/star/form/component/GridControl.idl
index a5db6e556f5b..d5e61c377b69 100644
--- a/offapi/com/sun/star/form/component/GridControl.idl
+++ b/offapi/com/sun/star/form/component/GridControl.idl
@@ -162,7 +162,7 @@ published service GridControl
<p>Not every border style (see <member>Border</member>) may support coloring.
For instance, usually a border with 3D effect will ignore the BorderColor setting.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] long BorderColor;
diff --git a/offapi/com/sun/star/form/inspection/DefaultFormComponentInspectorModel.idl b/offapi/com/sun/star/form/inspection/DefaultFormComponentInspectorModel.idl
index b743fe4be85b..11140ee20476 100644
--- a/offapi/com/sun/star/form/inspection/DefaultFormComponentInspectorModel.idl
+++ b/offapi/com/sun/star/form/inspection/DefaultFormComponentInspectorModel.idl
@@ -62,7 +62,7 @@ service DefaultFormComponentInspectorModel : com::sun::star::inspection::XObject
/** creates a default DefaultFormComponentInspectorModel, providing factories for all
handlers listed above.
- @since OOo 2.2.0
+ @since OOo 2.2
*/
createDefault();
@@ -85,7 +85,7 @@ service DefaultFormComponentInspectorModel : com::sun::star::inspection::XObject
@see XObjectInspectorModel::MinHelpTextLines
@see XObjectInspectorModel::MaxHelpTextLines
- @since OOo 2.2.0
+ @since OOo 2.2
*/
createWithHelpSection(
[in] long minHelpTextLines,
diff --git a/offapi/com/sun/star/form/runtime/FeatureState.idl b/offapi/com/sun/star/form/runtime/FeatureState.idl
index 996aff1e8076..f50c8d36ce05 100644
--- a/offapi/com/sun/star/form/runtime/FeatureState.idl
+++ b/offapi/com/sun/star/form/runtime/FeatureState.idl
@@ -37,7 +37,7 @@ module com { module sun { module star { module form { module runtime {
@see XFormOperations
- @since OpenOffice.org 2.2.0
+ @since OOo 2.2
*/
struct FeatureState
{
diff --git a/offapi/com/sun/star/form/runtime/FilterEvent.idl b/offapi/com/sun/star/form/runtime/FilterEvent.idl
index b7cc035113cb..f58b9e101e6f 100644
--- a/offapi/com/sun/star/form/runtime/FilterEvent.idl
+++ b/offapi/com/sun/star/form/runtime/FilterEvent.idl
@@ -39,7 +39,7 @@ module com { module sun { module star { module form { module runtime {
@see XFilterController
- @since OpenOffice.org 3.3
+ @since OOo 3.3
*/
struct FilterEvent : ::com::sun::star::lang::EventObject
{
diff --git a/offapi/com/sun/star/form/runtime/FormFeature.idl b/offapi/com/sun/star/form/runtime/FormFeature.idl
index 8a49e98bb900..4c7cbc0905be 100644
--- a/offapi/com/sun/star/form/runtime/FormFeature.idl
+++ b/offapi/com/sun/star/form/runtime/FormFeature.idl
@@ -37,7 +37,7 @@ module com { module sun { module star { module form { module runtime {
/** specifies the operations on a user interface form, as supported by the
<type>XFormOperations</type> interface.
- @since OpenOffice.org 2.2.0
+ @since OOo 2.2
*/
constants FormFeature
{
diff --git a/offapi/com/sun/star/form/runtime/FormOperations.idl b/offapi/com/sun/star/form/runtime/FormOperations.idl
index aa4b7e825c8c..c96844ded821 100644
--- a/offapi/com/sun/star/form/runtime/FormOperations.idl
+++ b/offapi/com/sun/star/form/runtime/FormOperations.idl
@@ -50,7 +50,7 @@ module com { module sun { module star { module form { module runtime {
/** encapsulates operations on a database form which has a UI representation,
and is interacting with the user.
- @since OpenOffice.org 2.2.0
+ @since OOo 2.2
*/
service FormOperations : XFormOperations
{
diff --git a/offapi/com/sun/star/form/runtime/XFeatureInvalidation.idl b/offapi/com/sun/star/form/runtime/XFeatureInvalidation.idl
index b435e64a6d81..0f1ca0df7578 100644
--- a/offapi/com/sun/star/form/runtime/XFeatureInvalidation.idl
+++ b/offapi/com/sun/star/form/runtime/XFeatureInvalidation.idl
@@ -43,7 +43,7 @@ module com { module sun { module star { module form { module runtime {
@see XFormOperations
- @since OpenOffice.org 2.2.0
+ @since OOo 2.2
*/
interface XFeatureInvalidation
{
diff --git a/offapi/com/sun/star/form/runtime/XFilterController.idl b/offapi/com/sun/star/form/runtime/XFilterController.idl
index cbaa3cca042a..d1c3471148f5 100644
--- a/offapi/com/sun/star/form/runtime/XFilterController.idl
+++ b/offapi/com/sun/star/form/runtime/XFilterController.idl
@@ -73,7 +73,7 @@ interface XFilterControllerListener;
@see com::sun::star::sdb::XSingleSelectQueryAnalyzer::getStructuredFilter
@see com::sun::star::sdb::SQLFilterOperator
- @since OpenOffice.org 3.3
+ @since OOo 3.3
*/
interface XFilterController
{
diff --git a/offapi/com/sun/star/form/runtime/XFilterControllerListener.idl b/offapi/com/sun/star/form/runtime/XFilterControllerListener.idl
index c737f9b24c70..86068c745640 100644
--- a/offapi/com/sun/star/form/runtime/XFilterControllerListener.idl
+++ b/offapi/com/sun/star/form/runtime/XFilterControllerListener.idl
@@ -38,7 +38,7 @@ module com { module sun { module star { module form { module runtime {
/** is implemented by components listening for events fired by an <type>XFilterController</type>.
- @since OpenOffice.org 3.3
+ @since OOo 3.3
*/
interface XFilterControllerListener : ::com::sun::star::lang::XEventListener
{
diff --git a/offapi/com/sun/star/form/runtime/XFormController.idl b/offapi/com/sun/star/form/runtime/XFormController.idl
index 01e199ba0d72..629f2ebc4945 100644
--- a/offapi/com/sun/star/form/runtime/XFormController.idl
+++ b/offapi/com/sun/star/form/runtime/XFormController.idl
@@ -248,7 +248,7 @@ interface XFormControllerContext;
@see ::com::sun::star::form::binding::BindableControlModel
@see ::com::sun::star::sdb::DataSource::Settings
- @since OpenOffice.org 3.3
+ @since OOo 3.3
*/
interface XFormController
{
diff --git a/offapi/com/sun/star/form/runtime/XFormOperations.idl b/offapi/com/sun/star/form/runtime/XFormOperations.idl
index 9098b7cad790..c41c081d58e6 100644
--- a/offapi/com/sun/star/form/runtime/XFormOperations.idl
+++ b/offapi/com/sun/star/form/runtime/XFormOperations.idl
@@ -93,7 +93,7 @@ interface XFeatureInvalidation;
@see FormFeature
- @since OpenOffice.org 2.2.0
+ @since OOo 2.2
*/
interface XFormOperations : ::com::sun::star::lang::XComponent
{
diff --git a/offapi/com/sun/star/frame/CommandGroup.idl b/offapi/com/sun/star/frame/CommandGroup.idl
index 21b47df9a522..bb2d30d502b2 100644
--- a/offapi/com/sun/star/frame/CommandGroup.idl
+++ b/offapi/com/sun/star/frame/CommandGroup.idl
@@ -37,7 +37,7 @@ module com { module sun { module star { module frame {
@see XDispatchInformationProvider
@see Controller
- @since OOo 2.0.0
+ @since OOo 2.0
*/
published constants CommandGroup
{
diff --git a/offapi/com/sun/star/frame/DispatchInformation.idl b/offapi/com/sun/star/frame/DispatchInformation.idl
index 49789f003b8a..861699f018e7 100644
--- a/offapi/com/sun/star/frame/DispatchInformation.idl
+++ b/offapi/com/sun/star/frame/DispatchInformation.idl
@@ -41,7 +41,7 @@ module com { module sun { module star { module frame {
@see XDispatchInformationProvider
@see Controller
- @since OOo 2.0.0
+ @since OOo 2.0
*/
published struct DispatchInformation
{
diff --git a/offapi/com/sun/star/frame/Frame.idl b/offapi/com/sun/star/frame/Frame.idl
index c9b9041230bd..8c7a480e71d0 100644
--- a/offapi/com/sun/star/frame/Frame.idl
+++ b/offapi/com/sun/star/frame/Frame.idl
@@ -127,7 +127,7 @@ published service Frame
//-------------------------------------------------------------------------
/** provides information about supported commands
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional] interface XDispatchInformationProvider;
diff --git a/offapi/com/sun/star/frame/LayoutManager.idl b/offapi/com/sun/star/frame/LayoutManager.idl
index 7a2f25f39d20..e54df74e59d3 100644
--- a/offapi/com/sun/star/frame/LayoutManager.idl
+++ b/offapi/com/sun/star/frame/LayoutManager.idl
@@ -72,7 +72,7 @@
the size and position of those user interface elements.
</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
service LayoutManager
diff --git a/offapi/com/sun/star/frame/LayoutManagerEvents.idl b/offapi/com/sun/star/frame/LayoutManagerEvents.idl
index 8a7bafcf9880..3a41716d9b61 100644
--- a/offapi/com/sun/star/frame/LayoutManagerEvents.idl
+++ b/offapi/com/sun/star/frame/LayoutManagerEvents.idl
@@ -40,7 +40,7 @@ module com { module sun { module star { module frame {
@see com::sun::star::frame::LayoutManager
@see com::sun::star::frame::XLayoutManagerEventBroadcaster
- @since OOo 2.0.0
+ @since OOo 2.0
*/
constants LayoutManagerEvents
{
diff --git a/offapi/com/sun/star/frame/ModuleManager.idl b/offapi/com/sun/star/frame/ModuleManager.idl
index fd687688074e..ab8bff22d72e 100644
--- a/offapi/com/sun/star/frame/ModuleManager.idl
+++ b/offapi/com/sun/star/frame/ModuleManager.idl
@@ -48,7 +48,7 @@ module com { module sun { module star { module frame {
of office modules.
</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
service ModuleManager
diff --git a/offapi/com/sun/star/frame/PopupMenuController.idl b/offapi/com/sun/star/frame/PopupMenuController.idl
index 04ba675f1974..1c2cf9381b38 100644
--- a/offapi/com/sun/star/frame/PopupMenuController.idl
+++ b/offapi/com/sun/star/frame/PopupMenuController.idl
@@ -65,7 +65,7 @@ module com { module sun { module star { module frame {
worked on. This list gets changes consistently during a work session.
</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
service PopupMenuController
diff --git a/offapi/com/sun/star/frame/PopupMenuControllerFactory.idl b/offapi/com/sun/star/frame/PopupMenuControllerFactory.idl
index 5212d3b587c6..3c8d2babc495 100644
--- a/offapi/com/sun/star/frame/PopupMenuControllerFactory.idl
+++ b/offapi/com/sun/star/frame/PopupMenuControllerFactory.idl
@@ -50,7 +50,7 @@ module com { module sun { module star { module frame {
it contains a registered command URL.
</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
service PopupMenuControllerFactory
diff --git a/offapi/com/sun/star/frame/StatusbarController.idl b/offapi/com/sun/star/frame/StatusbarController.idl
index 39c1921235dd..4903f3b10d63 100644
--- a/offapi/com/sun/star/frame/StatusbarController.idl
+++ b/offapi/com/sun/star/frame/StatusbarController.idl
@@ -64,7 +64,7 @@
@see com::sun::star::frame::XDispatchProvider
@see com::sun::star::frame::XStatusbarController
- @since OOo 2.0.0
+ @since OOo 2.0
*/
service StatusbarController
diff --git a/offapi/com/sun/star/frame/StatusbarControllerFactory.idl b/offapi/com/sun/star/frame/StatusbarControllerFactory.idl
index 01d26117f1c1..dd2b756c319a 100644
--- a/offapi/com/sun/star/frame/StatusbarControllerFactory.idl
+++ b/offapi/com/sun/star/frame/StatusbarControllerFactory.idl
@@ -51,7 +51,7 @@ module com { module sun { module star { module frame {
if it contains a registered command URL.
</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
service StatusbarControllerFactory
diff --git a/offapi/com/sun/star/frame/ToolbarController.idl b/offapi/com/sun/star/frame/ToolbarController.idl
index a230abe4552d..4e2753125767 100644
--- a/offapi/com/sun/star/frame/ToolbarController.idl
+++ b/offapi/com/sun/star/frame/ToolbarController.idl
@@ -67,7 +67,7 @@
@see com::sun::star::frame::XDispatchProvider
- @since OOo 2.0.0
+ @since OOo 2.0
*/
service ToolbarController
diff --git a/offapi/com/sun/star/frame/TransientDocumentsDocumentContentFactory.idl b/offapi/com/sun/star/frame/TransientDocumentsDocumentContentFactory.idl
index 326981516522..0f982fa0f4cb 100644
--- a/offapi/com/sun/star/frame/TransientDocumentsDocumentContentFactory.idl
+++ b/offapi/com/sun/star/frame/TransientDocumentsDocumentContentFactory.idl
@@ -39,7 +39,7 @@ module com { module sun { module star { module frame {
/** specifies a factory for
<type scope="com::sun::star::ucb">TransientDocumentsDocumentContent</type>s.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
service TransientDocumentsDocumentContentFactory
{
diff --git a/offapi/com/sun/star/frame/UnknownModuleException.idl b/offapi/com/sun/star/frame/UnknownModuleException.idl
index c1c9aad21d8a..9b3169c1dcbe 100644
--- a/offapi/com/sun/star/frame/UnknownModuleException.idl
+++ b/offapi/com/sun/star/frame/UnknownModuleException.idl
@@ -40,7 +40,7 @@ module com { module sun { module star { module frame {
* module could not be classified or does not have
* a valid configuration.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
exception UnknownModuleException : ::com::sun::star::uno::Exception
{
diff --git a/offapi/com/sun/star/frame/XDispatchInformationProvider.idl b/offapi/com/sun/star/frame/XDispatchInformationProvider.idl
index 3bf6886ba17b..a7f50d78c79c 100644
--- a/offapi/com/sun/star/frame/XDispatchInformationProvider.idl
+++ b/offapi/com/sun/star/frame/XDispatchInformationProvider.idl
@@ -56,7 +56,7 @@ module com { module sun { module star { module frame {
@see Frame
- @since OOo 2.0.0
+ @since OOo 2.0
*/
published interface XDispatchInformationProvider: com::sun::star::uno::XInterface
{
diff --git a/offapi/com/sun/star/frame/XInplaceLayout.idl b/offapi/com/sun/star/frame/XInplaceLayout.idl
index 71344418bda3..fa2d8944f878 100644
--- a/offapi/com/sun/star/frame/XInplaceLayout.idl
+++ b/offapi/com/sun/star/frame/XInplaceLayout.idl
@@ -43,7 +43,7 @@ module com { module sun { module star { module frame {
@deprecated
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XInplaceLayout : com::sun::star::uno::XInterface
diff --git a/offapi/com/sun/star/frame/XLayoutManager.idl b/offapi/com/sun/star/frame/XLayoutManager.idl
index feacef7a8ffc..b0902aa4c0e9 100644
--- a/offapi/com/sun/star/frame/XLayoutManager.idl
+++ b/offapi/com/sun/star/frame/XLayoutManager.idl
@@ -95,7 +95,7 @@ module com { module sun { module star { module frame {
@see com::sun::star::frame::XFrame
</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XLayoutManager : com::sun::star::uno::XInterface
diff --git a/offapi/com/sun/star/frame/XLayoutManagerEventBroadcaster.idl b/offapi/com/sun/star/frame/XLayoutManagerEventBroadcaster.idl
index b79827dd4b3e..fc7636e21e56 100644
--- a/offapi/com/sun/star/frame/XLayoutManagerEventBroadcaster.idl
+++ b/offapi/com/sun/star/frame/XLayoutManagerEventBroadcaster.idl
@@ -40,7 +40,7 @@
@see ::com::sun::star::frame::LayoutManager
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XLayoutManagerEventBroadcaster : com::sun::star::uno::XInterface
diff --git a/offapi/com/sun/star/frame/XLayoutManagerListener.idl b/offapi/com/sun/star/frame/XLayoutManagerListener.idl
index ab2500cf6094..12b9af7ffb9f 100644
--- a/offapi/com/sun/star/frame/XLayoutManagerListener.idl
+++ b/offapi/com/sun/star/frame/XLayoutManagerListener.idl
@@ -47,7 +47,7 @@ module com { module sun { module star { module frame {
@see ::com::sun::star::frame::LayoutManager
@see ::com::sun::star::frame::LayoutManagerEvents
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XLayoutManagerListener : com::sun::star::lang::XEventListener
{
diff --git a/offapi/com/sun/star/frame/XMenuBarAcceptor.idl b/offapi/com/sun/star/frame/XMenuBarAcceptor.idl
index 7eec81bb5308..a5c2f54676d8 100644
--- a/offapi/com/sun/star/frame/XMenuBarAcceptor.idl
+++ b/offapi/com/sun/star/frame/XMenuBarAcceptor.idl
@@ -46,7 +46,7 @@ module com { module sun { module star { module frame {
@deprecated
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XMenuBarAcceptor : com::sun::star::uno::XInterface
diff --git a/offapi/com/sun/star/frame/XMenuBarMergingAcceptor.idl b/offapi/com/sun/star/frame/XMenuBarMergingAcceptor.idl
index b7c6a1b13c19..500c069006ee 100644
--- a/offapi/com/sun/star/frame/XMenuBarMergingAcceptor.idl
+++ b/offapi/com/sun/star/frame/XMenuBarMergingAcceptor.idl
@@ -45,7 +45,7 @@ module com { module sun { module star { module frame {
/** provides functions to set and remove a merged menu bar for inplace
editing.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XMenuBarMergingAcceptor : com::sun::star::uno::XInterface
diff --git a/offapi/com/sun/star/frame/XModule.idl b/offapi/com/sun/star/frame/XModule.idl
index e58999a0dc8f..ed591fb7316a 100644
--- a/offapi/com/sun/star/frame/XModule.idl
+++ b/offapi/com/sun/star/frame/XModule.idl
@@ -58,7 +58,7 @@ module com { module sun { module star { module frame {
@see XModuleManager
- @since OOo 2.3.0
+ @since OOo 2.3
*/
interface XModule : com::sun::star::uno::XInterface
{
diff --git a/offapi/com/sun/star/frame/XModuleManager.idl b/offapi/com/sun/star/frame/XModuleManager.idl
index fd9d2168852e..cdc9bba41b6e 100644
--- a/offapi/com/sun/star/frame/XModuleManager.idl
+++ b/offapi/com/sun/star/frame/XModuleManager.idl
@@ -47,7 +47,7 @@ module com { module sun { module star { module frame {
//===============================================
/** can be used to identify office modules.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XModuleManager : com::sun::star::uno::XInterface
{
diff --git a/offapi/com/sun/star/frame/XPopupMenuController.idl b/offapi/com/sun/star/frame/XPopupMenuController.idl
index 0dcf688d1615..fd9e3b4c2f2e 100644
--- a/offapi/com/sun/star/frame/XPopupMenuController.idl
+++ b/offapi/com/sun/star/frame/XPopupMenuController.idl
@@ -48,7 +48,7 @@ module com { module sun { module star { module frame {
briefs the controller whenever the pop-up menu gets activated by a user.
</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XPopupMenuController : com::sun::star::uno::XInterface
{
diff --git a/offapi/com/sun/star/frame/XStatusbarController.idl b/offapi/com/sun/star/frame/XStatusbarController.idl
index 6c72d82d013b..d524cb75acc6 100644
--- a/offapi/com/sun/star/frame/XStatusbarController.idl
+++ b/offapi/com/sun/star/frame/XStatusbarController.idl
@@ -62,7 +62,7 @@ module com { module sun { module star { module frame {
@see com::sun::star::frame::XDispatchProvider
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XStatusbarController : ::com::sun::star::uno::XInterface
{
diff --git a/offapi/com/sun/star/frame/XSubToolbarController.idl b/offapi/com/sun/star/frame/XSubToolbarController.idl
index e0de8b9b8e2f..a9614e5ba04a 100644
--- a/offapi/com/sun/star/frame/XSubToolbarController.idl
+++ b/offapi/com/sun/star/frame/XSubToolbarController.idl
@@ -47,7 +47,7 @@
@see com::sun::star::frame::ToolbarController
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XSubToolbarController : com::sun::star::uno::XInterface
{
diff --git a/offapi/com/sun/star/frame/XSynchronousDispatch.idl b/offapi/com/sun/star/frame/XSynchronousDispatch.idl
index 71efb91b6f5a..daa86152ac11 100644
--- a/offapi/com/sun/star/frame/XSynchronousDispatch.idl
+++ b/offapi/com/sun/star/frame/XSynchronousDispatch.idl
@@ -45,7 +45,7 @@ module com { module sun { module star { module frame {
//=============================================================================
/** additional interfaces for dispatch objects: allow to execute with return value
- @since OOo 2.0.0
+ @since OOo 2.0
@see XDispatch
*/
published interface XSynchronousDispatch: com::sun::star::uno::XInterface
diff --git a/offapi/com/sun/star/frame/XToolbarController.idl b/offapi/com/sun/star/frame/XToolbarController.idl
index eb8b9c0b0757..834cb5d8c84a 100644
--- a/offapi/com/sun/star/frame/XToolbarController.idl
+++ b/offapi/com/sun/star/frame/XToolbarController.idl
@@ -53,7 +53,7 @@
@see com::sun::star::frame::XDispatchProvider
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XToolbarController : com::sun::star::uno::XInterface
{
diff --git a/offapi/com/sun/star/frame/XToolbarControllerListener.idl b/offapi/com/sun/star/frame/XToolbarControllerListener.idl
index 6450d8ef910e..63b7b6ae4cca 100644
--- a/offapi/com/sun/star/frame/XToolbarControllerListener.idl
+++ b/offapi/com/sun/star/frame/XToolbarControllerListener.idl
@@ -36,7 +36,7 @@
@see com::sun::star::frame::ToolbarController
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XToolbarControllerListener : com::sun::star::uno::XInterface
{
diff --git a/offapi/com/sun/star/frame/XTransientDocumentsDocumentContentFactory.idl b/offapi/com/sun/star/frame/XTransientDocumentsDocumentContentFactory.idl
index ec3259b4ad06..9fc7172fd203 100644
--- a/offapi/com/sun/star/frame/XTransientDocumentsDocumentContentFactory.idl
+++ b/offapi/com/sun/star/frame/XTransientDocumentsDocumentContentFactory.idl
@@ -56,7 +56,7 @@ module com { module sun { module star { module frame {
@see com::sun::star::document::OfficeDocument
@see com::sun::star::ucb::TransientDocumentsDocumentContent
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XTransientDocumentsDocumentContentFactory : com::sun::star::uno::XInterface
{
diff --git a/offapi/com/sun/star/geometry/AffineMatrix2D.idl b/offapi/com/sun/star/geometry/AffineMatrix2D.idl
index 5bb5a0eba5d6..55d8c14473b8 100644
--- a/offapi/com/sun/star/geometry/AffineMatrix2D.idl
+++ b/offapi/com/sun/star/geometry/AffineMatrix2D.idl
@@ -65,7 +65,7 @@ module com { module sun { module star { module geometry {
printer, Then, the total transformation matrix and the device
resolution determine the actual measurement unit.<p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
struct AffineMatrix2D
{
diff --git a/offapi/com/sun/star/geometry/AffineMatrix3D.idl b/offapi/com/sun/star/geometry/AffineMatrix3D.idl
index d1d17441cd6f..7e838e9f92a2 100644
--- a/offapi/com/sun/star/geometry/AffineMatrix3D.idl
+++ b/offapi/com/sun/star/geometry/AffineMatrix3D.idl
@@ -67,7 +67,7 @@ module com { module sun { module star { module geometry {
Only then the total transformation matrix (including projection to 2D)
and the device resolution determine the actual measurement unit in 3D.<p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
struct AffineMatrix3D
{
diff --git a/offapi/com/sun/star/geometry/EllipticalArc.idl b/offapi/com/sun/star/geometry/EllipticalArc.idl
index d9b6b1ec82fb..9d7d064e3bc9 100644
--- a/offapi/com/sun/star/geometry/EllipticalArc.idl
+++ b/offapi/com/sun/star/geometry/EllipticalArc.idl
@@ -45,7 +45,7 @@ module com { module sun { module star { module geometry {
constrains. Thus, there are two flags indicating which one of those
ellipses should be taken.<p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
struct EllipticalArc
{
diff --git a/offapi/com/sun/star/geometry/IntegerBezierSegment2D.idl b/offapi/com/sun/star/geometry/IntegerBezierSegment2D.idl
index f26418aaf5c4..3ed8334178b4 100644
--- a/offapi/com/sun/star/geometry/IntegerBezierSegment2D.idl
+++ b/offapi/com/sun/star/geometry/IntegerBezierSegment2D.idl
@@ -41,7 +41,7 @@ module com { module sun { module star { module geometry {
ignored.<p>
@see com.sun.star.rendering.XBezierPolyPolygon2D
- @since OOo 2.0.0
+ @since OOo 2.0
*/
struct IntegerBezierSegment2D
{
diff --git a/offapi/com/sun/star/geometry/IntegerPoint2D.idl b/offapi/com/sun/star/geometry/IntegerPoint2D.idl
index 2b1e0d83efa6..ce2d60ab51a7 100644
--- a/offapi/com/sun/star/geometry/IntegerPoint2D.idl
+++ b/offapi/com/sun/star/geometry/IntegerPoint2D.idl
@@ -34,7 +34,7 @@ module com { module sun { module star { module geometry {
This structure contains x and y integer-valued coordinates of a
two-dimensional point.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
struct IntegerPoint2D
{
diff --git a/offapi/com/sun/star/geometry/IntegerRectangle2D.idl b/offapi/com/sun/star/geometry/IntegerRectangle2D.idl
index 289c3f081665..a9dc994717bb 100644
--- a/offapi/com/sun/star/geometry/IntegerRectangle2D.idl
+++ b/offapi/com/sun/star/geometry/IntegerRectangle2D.idl
@@ -45,7 +45,7 @@ module com { module sun { module star { module geometry {
/** This structure contains the necessary information for a
two-dimensional rectangle.<p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
struct IntegerRectangle2D
{
diff --git a/offapi/com/sun/star/geometry/IntegerSize2D.idl b/offapi/com/sun/star/geometry/IntegerSize2D.idl
index 3c8b665fedc3..cf3e1a215adb 100644
--- a/offapi/com/sun/star/geometry/IntegerSize2D.idl
+++ b/offapi/com/sun/star/geometry/IntegerSize2D.idl
@@ -33,7 +33,7 @@ module com { module sun { module star { module geometry {
The data is stored integer-valued.<p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
struct IntegerSize2D
{
diff --git a/offapi/com/sun/star/geometry/Matrix2D.idl b/offapi/com/sun/star/geometry/Matrix2D.idl
index 4d2bacb24e2f..d0e8bf357f2a 100644
--- a/offapi/com/sun/star/geometry/Matrix2D.idl
+++ b/offapi/com/sun/star/geometry/Matrix2D.idl
@@ -68,7 +68,7 @@ module com { module sun { module star { module geometry {
printer. Then, the total transformation matrix and the device
resolution determine the actual measurement unit.<p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
struct Matrix2D
{
diff --git a/offapi/com/sun/star/geometry/RealBezierSegment2D.idl b/offapi/com/sun/star/geometry/RealBezierSegment2D.idl
index 97a9772fb006..6ec7e1b8b83d 100644
--- a/offapi/com/sun/star/geometry/RealBezierSegment2D.idl
+++ b/offapi/com/sun/star/geometry/RealBezierSegment2D.idl
@@ -41,7 +41,7 @@ module com { module sun { module star { module geometry {
ignored.<p>
@see com.sun.star.rendering.XBezierPolyPolygon2D
- @since OOo 2.0.0
+ @since OOo 2.0
*/
struct RealBezierSegment2D
{
diff --git a/offapi/com/sun/star/geometry/RealPoint2D.idl b/offapi/com/sun/star/geometry/RealPoint2D.idl
index 8c0e594aa5e6..1ac34b7a380e 100644
--- a/offapi/com/sun/star/geometry/RealPoint2D.idl
+++ b/offapi/com/sun/star/geometry/RealPoint2D.idl
@@ -34,7 +34,7 @@ module com { module sun { module star { module geometry {
This structure contains x and y real-valued coordinates of a
two-dimensional point.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
struct RealPoint2D
{
diff --git a/offapi/com/sun/star/geometry/RealRectangle2D.idl b/offapi/com/sun/star/geometry/RealRectangle2D.idl
index b12ead639200..39cd783f3c08 100644
--- a/offapi/com/sun/star/geometry/RealRectangle2D.idl
+++ b/offapi/com/sun/star/geometry/RealRectangle2D.idl
@@ -45,7 +45,7 @@ module com { module sun { module star { module geometry {
/** This structure contains the necessary information for a
two-dimensional rectangle.<p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
struct RealRectangle2D
{
diff --git a/offapi/com/sun/star/geometry/RealRectangle3D.idl b/offapi/com/sun/star/geometry/RealRectangle3D.idl
index 826c73c27679..4265ae3088ae 100644
--- a/offapi/com/sun/star/geometry/RealRectangle3D.idl
+++ b/offapi/com/sun/star/geometry/RealRectangle3D.idl
@@ -32,7 +32,7 @@ module com { module sun { module star { module geometry {
/** This structure contains the necessary information for a
three-dimensional cube.<p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
struct RealRectangle3D
{
diff --git a/offapi/com/sun/star/geometry/RealSize2D.idl b/offapi/com/sun/star/geometry/RealSize2D.idl
index 5ed2fc8a34c3..dab80a5c7deb 100644
--- a/offapi/com/sun/star/geometry/RealSize2D.idl
+++ b/offapi/com/sun/star/geometry/RealSize2D.idl
@@ -33,7 +33,7 @@ module com { module sun { module star { module geometry {
The data is stored real-valued.<p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
struct RealSize2D
{
diff --git a/offapi/com/sun/star/geometry/XMapping2D.idl b/offapi/com/sun/star/geometry/XMapping2D.idl
index bf435389582a..1d2465d91f8e 100644
--- a/offapi/com/sun/star/geometry/XMapping2D.idl
+++ b/offapi/com/sun/star/geometry/XMapping2D.idl
@@ -48,7 +48,7 @@ module com { module sun { module star { module geometry {
pair of real numbers there must be another pair that is mapped
upon them.<p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XMapping2D : ::com::sun::star::uno::XInterface
{
diff --git a/offapi/com/sun/star/i18n/OrdinalSuffix.idl b/offapi/com/sun/star/i18n/OrdinalSuffix.idl
index 500ef74ccffc..d754a572e058 100644
--- a/offapi/com/sun/star/i18n/OrdinalSuffix.idl
+++ b/offapi/com/sun/star/i18n/OrdinalSuffix.idl
@@ -37,7 +37,7 @@ module com { module sun { module star { module i18n {
/** provides access to locale specific ordinal suffix systems.
- @since OOo2.2
+ @since OOo 2.2
@internal
diff --git a/offapi/com/sun/star/i18n/TextConversionOption.idl b/offapi/com/sun/star/i18n/TextConversionOption.idl
index 82ae9a217043..a7fe61a64a05 100644
--- a/offapi/com/sun/star/i18n/TextConversionOption.idl
+++ b/offapi/com/sun/star/i18n/TextConversionOption.idl
@@ -59,7 +59,7 @@ published constants TextConversionOption
/** Use Taiwan, HongKong SAR, and Macao SAR character variants for
Simplified to Traditional Chinese conversion
- @since OOo 2.0.0
+ @since OOo 2.0
*/
const long USE_CHARACTER_VARIANTS = 2; // (1 << 1)
};
diff --git a/offapi/com/sun/star/i18n/XOrdinalSuffix.idl b/offapi/com/sun/star/i18n/XOrdinalSuffix.idl
index 6c70246af7a2..2ddbdfd93790 100644
--- a/offapi/com/sun/star/i18n/XOrdinalSuffix.idl
+++ b/offapi/com/sun/star/i18n/XOrdinalSuffix.idl
@@ -38,7 +38,7 @@ module com { module sun { module star { module i18n {
/** provides access to locale specific ordinal suffix systems.
- @since OOo2.2
+ @since OOo 2.2
@internal
diff --git a/offapi/com/sun/star/linguistic2/ConversionDictionary.idl b/offapi/com/sun/star/linguistic2/ConversionDictionary.idl
index ab242d2c40f6..b501478f8ebd 100644
--- a/offapi/com/sun/star/linguistic2/ConversionDictionary.idl
+++ b/offapi/com/sun/star/linguistic2/ConversionDictionary.idl
@@ -69,7 +69,7 @@ published service ConversionDictionary
[optional] interface com::sun::star::util::XFlushable;
/**
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional] interface com::sun::star::linguistic2::XConversionPropertyType;
};
diff --git a/offapi/com/sun/star/linguistic2/ConversionDictionaryType.idl b/offapi/com/sun/star/linguistic2/ConversionDictionaryType.idl
index 93663151a35e..e5a9c4d0233e 100644
--- a/offapi/com/sun/star/linguistic2/ConversionDictionaryType.idl
+++ b/offapi/com/sun/star/linguistic2/ConversionDictionaryType.idl
@@ -44,7 +44,7 @@ constants ConversionDictionaryType
/** Dictionary type for the conversion between Simplified and Traditional Chinese
- @since OOo 2.0.0
+ @since OOo 2.0
*/
const short SCHINESE_TCHINESE = 2;
};
diff --git a/offapi/com/sun/star/linguistic2/ConversionPropertyType.idl b/offapi/com/sun/star/linguistic2/ConversionPropertyType.idl
index e0e2e37357fe..424ece6e23d6 100644
--- a/offapi/com/sun/star/linguistic2/ConversionPropertyType.idl
+++ b/offapi/com/sun/star/linguistic2/ConversionPropertyType.idl
@@ -37,7 +37,7 @@ module com { module sun { module star { module linguistic2 {
@see com::sun::star::linguistic2::XConversionDictionary
@see com::sun::star::linguistic2::XConversionPropertyType
- @since OOo 2.0.0
+ @since OOo 2.0
*/
constants ConversionPropertyType
{
diff --git a/offapi/com/sun/star/linguistic2/XConversionPropertyType.idl b/offapi/com/sun/star/linguistic2/XConversionPropertyType.idl
index 0a847f046e78..7dcccf3d05f8 100644
--- a/offapi/com/sun/star/linguistic2/XConversionPropertyType.idl
+++ b/offapi/com/sun/star/linguistic2/XConversionPropertyType.idl
@@ -56,7 +56,7 @@ module com { module sun { module star { module linguistic2 {
@see com::sun::star::linguistic2::XConversionDictionary
@see com::sun::star::linguistic2::ConversionPropertyType
- @since OOo 2.0.0
+ @since OOo 2.0
*/
published interface XConversionPropertyType : com::sun::star::uno::XInterface
{
diff --git a/offapi/com/sun/star/mail/MailAttachment.idl b/offapi/com/sun/star/mail/MailAttachment.idl
index 24a181ff3c0f..67bd662629af 100644
--- a/offapi/com/sun/star/mail/MailAttachment.idl
+++ b/offapi/com/sun/star/mail/MailAttachment.idl
@@ -39,7 +39,7 @@ module com { module sun { module star { module mail {
@see ::com::sun::star::mail::XMailMessage
- @since OOo 2.0.0
+ @since OOo 2.0
*/
struct MailAttachment
{
diff --git a/offapi/com/sun/star/mail/MailException.idl b/offapi/com/sun/star/mail/MailException.idl
index 5f5bfff11f81..2022c2aee483 100644
--- a/offapi/com/sun/star/mail/MailException.idl
+++ b/offapi/com/sun/star/mail/MailException.idl
@@ -38,7 +38,7 @@ module com { module sun { module star { module mail {
An MailException is the base of all mail related
exceptions.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
exception MailException: com::sun::star::uno::Exception
{
diff --git a/offapi/com/sun/star/mail/MailMessage.idl b/offapi/com/sun/star/mail/MailMessage.idl
index 2112865d00f8..71dea28cb36c 100644
--- a/offapi/com/sun/star/mail/MailMessage.idl
+++ b/offapi/com/sun/star/mail/MailMessage.idl
@@ -45,7 +45,7 @@ module com { module sun { module star { module mail {
interface XMailMessage;
/**
- @since OOo 2.0.0
+ @since OOo 2.0
*/
service MailMessage: XMailMessage
{
diff --git a/offapi/com/sun/star/mail/MailServer.idl b/offapi/com/sun/star/mail/MailServer.idl
index f6b448946eb4..2ae7afc016bf 100644
--- a/offapi/com/sun/star/mail/MailServer.idl
+++ b/offapi/com/sun/star/mail/MailServer.idl
@@ -37,7 +37,7 @@ module com { module sun { module star { module mail {
interface XMailServer;
/**
- @since OOo 2.0.0
+ @since OOo 2.0
*/
service MailServer: XMailServer
{
diff --git a/offapi/com/sun/star/mail/MailServiceProvider.idl b/offapi/com/sun/star/mail/MailServiceProvider.idl
index af48d9e9b3e7..0645d9556e66 100644
--- a/offapi/com/sun/star/mail/MailServiceProvider.idl
+++ b/offapi/com/sun/star/mail/MailServiceProvider.idl
@@ -45,7 +45,7 @@ module com { module sun { module star { module mail {
interface XMailService;
/**
- @since OOo 2.0.0
+ @since OOo 2.0
*/
service MailServiceProvider: XMailServiceProvider
{
diff --git a/offapi/com/sun/star/mail/MailServiceType.idl b/offapi/com/sun/star/mail/MailServiceType.idl
index 94aa985a06c2..ecb960b3ed12 100644
--- a/offapi/com/sun/star/mail/MailServiceType.idl
+++ b/offapi/com/sun/star/mail/MailServiceType.idl
@@ -31,7 +31,7 @@
module com { module sun { module star { module mail {
/**
- @since OOo 2.0.0
+ @since OOo 2.0
*/
enum MailServiceType
{
diff --git a/offapi/com/sun/star/mail/NoMailServiceProviderException.idl b/offapi/com/sun/star/mail/NoMailServiceProviderException.idl
index a8e3d52396b9..f1a2074d66ea 100644
--- a/offapi/com/sun/star/mail/NoMailServiceProviderException.idl
+++ b/offapi/com/sun/star/mail/NoMailServiceProviderException.idl
@@ -41,7 +41,7 @@ module com { module sun { module star { module mail {
@see com::sun::star::mail::MailService
- @since OOo 2.0.0
+ @since OOo 2.0
*/
exception NoMailServiceProviderException: com::sun::star::mail::MailException
{
diff --git a/offapi/com/sun/star/mail/NoMailTransportProviderException.idl b/offapi/com/sun/star/mail/NoMailTransportProviderException.idl
index 3cad64b8f900..fa275ed7f7f2 100644
--- a/offapi/com/sun/star/mail/NoMailTransportProviderException.idl
+++ b/offapi/com/sun/star/mail/NoMailTransportProviderException.idl
@@ -41,7 +41,7 @@ module com { module sun { module star { module mail {
@see com::sun::star::mail::MailServer
- @since OOo 2.0.0
+ @since OOo 2.0
*/
exception NoMailTransportProviderException: com::sun::star::mail::MailException
{
diff --git a/offapi/com/sun/star/mail/SendMailMessageFailedException.idl b/offapi/com/sun/star/mail/SendMailMessageFailedException.idl
index 8987bf587596..91a6cb29b5d8 100644
--- a/offapi/com/sun/star/mail/SendMailMessageFailedException.idl
+++ b/offapi/com/sun/star/mail/SendMailMessageFailedException.idl
@@ -42,7 +42,7 @@ module com { module sun { module star { module mail {
@see com::sun::star::mail::XMailServer
- @since OOo 2.0.0
+ @since OOo 2.0
*/
exception SendMailMessageFailedException: com::sun::star::mail::MailException
{
diff --git a/offapi/com/sun/star/mail/XAuthenticator.idl b/offapi/com/sun/star/mail/XAuthenticator.idl
index 564ad4e484f1..6ae813a161ef 100644
--- a/offapi/com/sun/star/mail/XAuthenticator.idl
+++ b/offapi/com/sun/star/mail/XAuthenticator.idl
@@ -40,7 +40,7 @@ module com { module sun { module star { module mail {
An implementation of this interface may for instance show a
dialog to query the user for the necessary data.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XAuthenticator: ::com::sun::star::uno::XInterface {
diff --git a/offapi/com/sun/star/mail/XConnectionListener.idl b/offapi/com/sun/star/mail/XConnectionListener.idl
index 5ca8511f7c97..cd5153f5e96e 100644
--- a/offapi/com/sun/star/mail/XConnectionListener.idl
+++ b/offapi/com/sun/star/mail/XConnectionListener.idl
@@ -43,7 +43,7 @@ module com { module sun { module star { module mail {
@see com::sun::star::mail::XMailServer
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XConnectionListener: ::com::sun::star::lang::XEventListener {
diff --git a/offapi/com/sun/star/mail/XMailMessage.idl b/offapi/com/sun/star/mail/XMailMessage.idl
index f9887f8be8b7..596596e6bec3 100644
--- a/offapi/com/sun/star/mail/XMailMessage.idl
+++ b/offapi/com/sun/star/mail/XMailMessage.idl
@@ -47,7 +47,7 @@ module com { module sun { module star { module mail {
@see com::sun::star::mail::XMailServer
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XMailMessage: ::com::sun::star::uno::XInterface {
diff --git a/offapi/com/sun/star/mail/XMailServer.idl b/offapi/com/sun/star/mail/XMailServer.idl
index fa0f13a955f4..ade044ebcbea 100644
--- a/offapi/com/sun/star/mail/XMailServer.idl
+++ b/offapi/com/sun/star/mail/XMailServer.idl
@@ -95,7 +95,7 @@ module com { module sun { module star { module mail {
@see com::sun::star::mail::XMailMessage
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XMailServer: ::com::sun::star::uno::XInterface {
diff --git a/offapi/com/sun/star/mail/XMailService.idl b/offapi/com/sun/star/mail/XMailService.idl
index dc5a3041e93d..2444e4b39d0a 100644
--- a/offapi/com/sun/star/mail/XMailService.idl
+++ b/offapi/com/sun/star/mail/XMailService.idl
@@ -82,7 +82,7 @@ module com { module sun { module star { module mail {
/**
Represents a mail server abstraction.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XMailService: ::com::sun::star::uno::XInterface {
diff --git a/offapi/com/sun/star/mail/XMailServiceProvider.idl b/offapi/com/sun/star/mail/XMailServiceProvider.idl
index 5f389a57ee58..5430a45fced0 100644
--- a/offapi/com/sun/star/mail/XMailServiceProvider.idl
+++ b/offapi/com/sun/star/mail/XMailServiceProvider.idl
@@ -45,7 +45,7 @@ module com { module sun { module star { module mail {
/**
A factory for creating different mail services.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XMailServiceProvider: ::com::sun::star::uno::XInterface {
diff --git a/offapi/com/sun/star/mail/XSmtpService.idl b/offapi/com/sun/star/mail/XSmtpService.idl
index 62205f5f5923..a93b82f1bceb 100644
--- a/offapi/com/sun/star/mail/XSmtpService.idl
+++ b/offapi/com/sun/star/mail/XSmtpService.idl
@@ -64,7 +64,7 @@ module com { module sun { module star { module mail {
@see com::sun::star::mail::XMailService
@see com::sun::star::mail::XMailMessage
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XSmtpService: ::com::sun::star::mail::XMailService {
diff --git a/offapi/com/sun/star/rendering/AnimationAttributes.idl b/offapi/com/sun/star/rendering/AnimationAttributes.idl
index c4440e0d428c..a208aff1ee0f 100644
--- a/offapi/com/sun/star/rendering/AnimationAttributes.idl
+++ b/offapi/com/sun/star/rendering/AnimationAttributes.idl
@@ -35,7 +35,7 @@ module com { module sun { module star { module rendering {
/** This structure contains attributes needed to run an animation.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
struct AnimationAttributes
{
diff --git a/offapi/com/sun/star/rendering/AnimationRepeat.idl b/offapi/com/sun/star/rendering/AnimationRepeat.idl
index 87e79a85f67f..fb1080440fac 100644
--- a/offapi/com/sun/star/rendering/AnimationRepeat.idl
+++ b/offapi/com/sun/star/rendering/AnimationRepeat.idl
@@ -35,7 +35,7 @@ module com { module sun { module star { module rendering {
animation is driven through, thus defining the possible repeat
modes.<p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
constants AnimationRepeat
{
diff --git a/offapi/com/sun/star/rendering/CanvasFactory.idl b/offapi/com/sun/star/rendering/CanvasFactory.idl
index d735dc368855..7935d5f30b1a 100644
--- a/offapi/com/sun/star/rendering/CanvasFactory.idl
+++ b/offapi/com/sun/star/rendering/CanvasFactory.idl
@@ -49,7 +49,7 @@ module com { module sun { module star { module rendering {
a service name to try first.
</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
service CanvasFactory : com::sun::star::lang::XMultiComponentFactory;
diff --git a/offapi/com/sun/star/rendering/Caret.idl b/offapi/com/sun/star/rendering/Caret.idl
index 7d04213987ee..8d8999160ac2 100644
--- a/offapi/com/sun/star/rendering/Caret.idl
+++ b/offapi/com/sun/star/rendering/Caret.idl
@@ -34,7 +34,7 @@ module com { module sun { module star { module rendering {
This structure is used from the <type>XTextLayout</type> interface
to transport information regarding a text caret.<p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
struct Caret
{
diff --git a/offapi/com/sun/star/rendering/CompositeOperation.idl b/offapi/com/sun/star/rendering/CompositeOperation.idl
index 0c1c4448ee05..169e7af6517c 100644
--- a/offapi/com/sun/star/rendering/CompositeOperation.idl
+++ b/offapi/com/sun/star/rendering/CompositeOperation.idl
@@ -44,7 +44,7 @@ module com { module sun { module star { module rendering {
different composite modes (wherein Aa and Ab denote source and
destination alpha, respectively).<p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
constants CompositeOperation
{
diff --git a/offapi/com/sun/star/rendering/EmphasisMark.idl b/offapi/com/sun/star/rendering/EmphasisMark.idl
index be0847a0dcd2..fe9d3d683f55 100644
--- a/offapi/com/sun/star/rendering/EmphasisMark.idl
+++ b/offapi/com/sun/star/rendering/EmphasisMark.idl
@@ -34,7 +34,7 @@ module com { module sun { module star { module rendering {
These constants control the automatic rendering of emphasis marks
for a given font.<p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
constants EmphasisMark
{
diff --git a/offapi/com/sun/star/rendering/FillRule.idl b/offapi/com/sun/star/rendering/FillRule.idl
index 6507a56cc9c9..58d76ffcfd58 100644
--- a/offapi/com/sun/star/rendering/FillRule.idl
+++ b/offapi/com/sun/star/rendering/FillRule.idl
@@ -32,7 +32,7 @@ module com { module sun { module star { module rendering {
/** Determines which algorithm to use when determining inside and
outside of filled poly-polygons.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
enum FillRule
{
diff --git a/offapi/com/sun/star/rendering/FloatingPointBitmapFormat.idl b/offapi/com/sun/star/rendering/FloatingPointBitmapFormat.idl
index 7fd0a972f56f..0c10b65ff572 100644
--- a/offapi/com/sun/star/rendering/FloatingPointBitmapFormat.idl
+++ b/offapi/com/sun/star/rendering/FloatingPointBitmapFormat.idl
@@ -31,7 +31,7 @@ module com { module sun { module star { module rendering {
/** This structure describes format of a floating point bitmap.<p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
constants FloatingPointBitmapFormat
{
diff --git a/offapi/com/sun/star/rendering/FloatingPointBitmapLayout.idl b/offapi/com/sun/star/rendering/FloatingPointBitmapLayout.idl
index bef73dc7fc35..714a20e8bf3e 100644
--- a/offapi/com/sun/star/rendering/FloatingPointBitmapLayout.idl
+++ b/offapi/com/sun/star/rendering/FloatingPointBitmapLayout.idl
@@ -42,7 +42,7 @@ module com { module sun { module star { module rendering {
This structure collects all necessary information to describe the
memory layout of a bitmap having floating point color channels<p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
struct FloatingPointBitmapLayout
{
diff --git a/offapi/com/sun/star/rendering/FontInfo.idl b/offapi/com/sun/star/rendering/FontInfo.idl
index c24ad411fa6c..6c00c2c2ff93 100644
--- a/offapi/com/sun/star/rendering/FontInfo.idl
+++ b/offapi/com/sun/star/rendering/FontInfo.idl
@@ -40,7 +40,7 @@ module com { module sun { module star { module rendering {
/** This structure provides information about a specific font.<p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
struct FontInfo
{
diff --git a/offapi/com/sun/star/rendering/FontMetrics.idl b/offapi/com/sun/star/rendering/FontMetrics.idl
index 0008b7945aed..2b66bb5e0f8c 100644
--- a/offapi/com/sun/star/rendering/FontMetrics.idl
+++ b/offapi/com/sun/star/rendering/FontMetrics.idl
@@ -49,7 +49,7 @@ module com { module sun { module star { module rendering {
underlying font technology, actual device output might be off by
up to one device pixel from the transformed metrics.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
struct FontMetrics
{
diff --git a/offapi/com/sun/star/rendering/FontRequest.idl b/offapi/com/sun/star/rendering/FontRequest.idl
index 538a1f9f1840..0a5caa06ee18 100644
--- a/offapi/com/sun/star/rendering/FontRequest.idl
+++ b/offapi/com/sun/star/rendering/FontRequest.idl
@@ -48,7 +48,7 @@ module com { module sun { module star { module rendering {
<member>FontInfo::StyleName</member> empty, if font selection
should only happen via the PANOSE description.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
struct FontRequest
{
diff --git a/offapi/com/sun/star/rendering/IntegerBitmapLayout.idl b/offapi/com/sun/star/rendering/IntegerBitmapLayout.idl
index 45787bc206e7..fae628f0d9b6 100644
--- a/offapi/com/sun/star/rendering/IntegerBitmapLayout.idl
+++ b/offapi/com/sun/star/rendering/IntegerBitmapLayout.idl
@@ -42,7 +42,7 @@ module com { module sun { module star { module rendering {
This structure collects all necessary information to describe the
memory layout of a bitmap having integer color channels<p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
struct IntegerBitmapLayout
{
diff --git a/offapi/com/sun/star/rendering/InterpolationMode.idl b/offapi/com/sun/star/rendering/InterpolationMode.idl
index e4849541a260..4711d995b73e 100644
--- a/offapi/com/sun/star/rendering/InterpolationMode.idl
+++ b/offapi/com/sun/star/rendering/InterpolationMode.idl
@@ -36,7 +36,7 @@ module com { module sun { module star { module rendering {
takes place between two consecutive frames of a discrete animation
sequence.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
constants InterpolationMode
{
diff --git a/offapi/com/sun/star/rendering/PathCapType.idl b/offapi/com/sun/star/rendering/PathCapType.idl
index e436eaa738db..e72f9a24dff2 100644
--- a/offapi/com/sun/star/rendering/PathCapType.idl
+++ b/offapi/com/sun/star/rendering/PathCapType.idl
@@ -36,7 +36,7 @@ module com { module sun { module star { module rendering {
different shapes (which are, of course, only visible for strokes
wider than one device pixel).<p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
constants PathCapType
{
diff --git a/offapi/com/sun/star/rendering/PathJoinType.idl b/offapi/com/sun/star/rendering/PathJoinType.idl
index b2fc8d31d747..99e2fad61bb4 100644
--- a/offapi/com/sun/star/rendering/PathJoinType.idl
+++ b/offapi/com/sun/star/rendering/PathJoinType.idl
@@ -35,7 +35,7 @@ module com { module sun { module star { module rendering {
several different shapes (which are of course only visible for
strokes wider than one device pixel).<p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
constants PathJoinType
{
diff --git a/offapi/com/sun/star/rendering/RenderState.idl b/offapi/com/sun/star/rendering/RenderState.idl
index 7ba8d8e35536..ecb5b169d3a3 100644
--- a/offapi/com/sun/star/rendering/RenderState.idl
+++ b/offapi/com/sun/star/rendering/RenderState.idl
@@ -45,7 +45,7 @@ interface XPolyPolygon2D;
state, i.e. the common setup required to render each individual
<type>XCanvas</type> primitive.<p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
struct RenderState
{
diff --git a/offapi/com/sun/star/rendering/RenderingIntent.idl b/offapi/com/sun/star/rendering/RenderingIntent.idl
index 51ed8a96767b..25ebd6046cc1 100644
--- a/offapi/com/sun/star/rendering/RenderingIntent.idl
+++ b/offapi/com/sun/star/rendering/RenderingIntent.idl
@@ -36,7 +36,7 @@ module com { module sun { module star { module rendering {
href="http://en.wikipedia.org/wiki/Rendering_intent">Wikipedia</a>
for a thorough explanation.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
constants RenderingIntent
{
diff --git a/offapi/com/sun/star/rendering/RepaintResult.idl b/offapi/com/sun/star/rendering/RepaintResult.idl
index 9e221b3ff504..8b66654150fa 100644
--- a/offapi/com/sun/star/rendering/RepaintResult.idl
+++ b/offapi/com/sun/star/rendering/RepaintResult.idl
@@ -32,7 +32,7 @@ module com { module sun { module star { module rendering {
/** These constants specify the result of the
<type>XCachedPrimitive</type> render operation.<p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
constants RepaintResult
{
diff --git a/offapi/com/sun/star/rendering/StringContext.idl b/offapi/com/sun/star/rendering/StringContext.idl
index 54c4b5868e98..3f9c833ceb74 100644
--- a/offapi/com/sun/star/rendering/StringContext.idl
+++ b/offapi/com/sun/star/rendering/StringContext.idl
@@ -36,7 +36,7 @@ module com { module sun { module star { module rendering {
here, because in several languages, glyph selection is context
dependent.<p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
struct StringContext
{
diff --git a/offapi/com/sun/star/rendering/TextDirection.idl b/offapi/com/sun/star/rendering/TextDirection.idl
index 33eea1fd4036..cec5d680be0f 100644
--- a/offapi/com/sun/star/rendering/TextDirection.idl
+++ b/offapi/com/sun/star/rendering/TextDirection.idl
@@ -33,7 +33,7 @@ module com { module sun { module star { module rendering {
This also changes the interpretation of the start point.<p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
constants TextDirection
{
diff --git a/offapi/com/sun/star/rendering/TextHit.idl b/offapi/com/sun/star/rendering/TextHit.idl
index 321e1b7802a2..88c689e34557 100644
--- a/offapi/com/sun/star/rendering/TextHit.idl
+++ b/offapi/com/sun/star/rendering/TextHit.idl
@@ -34,7 +34,7 @@ module com { module sun { module star { module rendering {
This structure is used from the <type>XTextLayout</type> interface
to transport information regarding hit tests.<p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
struct TextHit
{
diff --git a/offapi/com/sun/star/rendering/Texture.idl b/offapi/com/sun/star/rendering/Texture.idl
index a8eacf515c76..ea033b3e21a8 100644
--- a/offapi/com/sun/star/rendering/Texture.idl
+++ b/offapi/com/sun/star/rendering/Texture.idl
@@ -51,7 +51,7 @@ interface XParametricPolyPolygon2D;
as the hatch and the gradient. The transformation member can then
be used to scale the complete texture as it fits suit.<p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
struct Texture
{
diff --git a/offapi/com/sun/star/rendering/TexturingMode.idl b/offapi/com/sun/star/rendering/TexturingMode.idl
index b44a78eae6ce..10ca7679caa5 100644
--- a/offapi/com/sun/star/rendering/TexturingMode.idl
+++ b/offapi/com/sun/star/rendering/TexturingMode.idl
@@ -32,7 +32,7 @@ module com { module sun { module star { module rendering {
/** Enumeration of possible values to spread a texture across a
primitive.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
constants TexturingMode
{
diff --git a/offapi/com/sun/star/rendering/ViewState.idl b/offapi/com/sun/star/rendering/ViewState.idl
index b0ed7b62d3b5..fe4de1fc17bf 100644
--- a/offapi/com/sun/star/rendering/ViewState.idl
+++ b/offapi/com/sun/star/rendering/ViewState.idl
@@ -41,7 +41,7 @@ interface XPolyPolygon2D;
i.e. the invariant setup used when painting a whole view of
something.<p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
struct ViewState
{
diff --git a/offapi/com/sun/star/rendering/VolatileContentDestroyedException.idl b/offapi/com/sun/star/rendering/VolatileContentDestroyedException.idl
index 23e0531f876f..718444f91a25 100644
--- a/offapi/com/sun/star/rendering/VolatileContentDestroyedException.idl
+++ b/offapi/com/sun/star/rendering/VolatileContentDestroyedException.idl
@@ -38,7 +38,7 @@ module com { module sun { module star { module rendering {
When accessing or rendering XVolatileBitmap data, that has
been invalidated by the system, this exception will be thrown.<p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
exception VolatileContentDestroyedException : ::com::sun::star::uno::Exception
{
diff --git a/offapi/com/sun/star/rendering/XAnimatedSprite.idl b/offapi/com/sun/star/rendering/XAnimatedSprite.idl
index c5a99799e49e..9db5b0e6d6f5 100644
--- a/offapi/com/sun/star/rendering/XAnimatedSprite.idl
+++ b/offapi/com/sun/star/rendering/XAnimatedSprite.idl
@@ -54,7 +54,7 @@ module com { module sun { module star { module rendering {
This interface can be used to control an animated sprite object on
an XSpriteCanvas. Sprites are moving, animated objects.<p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XAnimatedSprite : XSprite
{
diff --git a/offapi/com/sun/star/rendering/XAnimation.idl b/offapi/com/sun/star/rendering/XAnimation.idl
index 3958c9c0c89f..26ee03e3cb87 100644
--- a/offapi/com/sun/star/rendering/XAnimation.idl
+++ b/offapi/com/sun/star/rendering/XAnimation.idl
@@ -58,7 +58,7 @@ module com { module sun { module star { module rendering {
is used by the <type>XCanvas</type> interface to render generic
animations.<p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XAnimation : ::com::sun::star::uno::XInterface
{
diff --git a/offapi/com/sun/star/rendering/XBezierPolyPolygon2D.idl b/offapi/com/sun/star/rendering/XBezierPolyPolygon2D.idl
index fa329875c2f7..1d57ccea9e8a 100644
--- a/offapi/com/sun/star/rendering/XBezierPolyPolygon2D.idl
+++ b/offapi/com/sun/star/rendering/XBezierPolyPolygon2D.idl
@@ -54,7 +54,7 @@ module com { module sun { module star { module rendering {
By convention, a <type>RealBezierSegment2D</type> is a straight
line segment, if all three contained points are strictly equal.<p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XBezierPolyPolygon2D : XPolyPolygon2D
{
diff --git a/offapi/com/sun/star/rendering/XBitmap.idl b/offapi/com/sun/star/rendering/XBitmap.idl
index 3eedd46357e2..c061d2908f2e 100644
--- a/offapi/com/sun/star/rendering/XBitmap.idl
+++ b/offapi/com/sun/star/rendering/XBitmap.idl
@@ -55,7 +55,7 @@ interface XBitmapCanvas;
<type>XIeeeDoubleBitmap</type>, <type>XIeeeFloatBitmap</type> and
<type>XHalfFloatBitmap</type> interfaces.<p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XBitmap : ::com::sun::star::uno::XInterface
{
diff --git a/offapi/com/sun/star/rendering/XBitmapCanvas.idl b/offapi/com/sun/star/rendering/XBitmapCanvas.idl
index b87be2ae8394..fed3cd4238dc 100644
--- a/offapi/com/sun/star/rendering/XBitmapCanvas.idl
+++ b/offapi/com/sun/star/rendering/XBitmapCanvas.idl
@@ -59,7 +59,7 @@ module com { module sun { module star { module rendering {
bitmapped canvases, where additional methods for accessing and
moving of bitmap content are provided.<p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XBitmapCanvas : XCanvas
{
diff --git a/offapi/com/sun/star/rendering/XBitmapPalette.idl b/offapi/com/sun/star/rendering/XBitmapPalette.idl
index b89bc8221cd0..f36629285d9a 100644
--- a/offapi/com/sun/star/rendering/XBitmapPalette.idl
+++ b/offapi/com/sun/star/rendering/XBitmapPalette.idl
@@ -45,7 +45,7 @@ module com { module sun { module star { module rendering {
/** Interface to access the palette of a color-indexed bitmap.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XBitmapPalette : ::com::sun::star::uno::XInterface
{
diff --git a/offapi/com/sun/star/rendering/XBufferController.idl b/offapi/com/sun/star/rendering/XBufferController.idl
index 949a358f4335..f90f6b8a31c7 100644
--- a/offapi/com/sun/star/rendering/XBufferController.idl
+++ b/offapi/com/sun/star/rendering/XBufferController.idl
@@ -42,7 +42,7 @@ module com { module sun { module star { module rendering {
This interface provides methods to enable and control
double/multi-buffering facilities on screen devices.<p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XBufferController : ::com::sun::star::uno::XInterface
{
diff --git a/offapi/com/sun/star/rendering/XCachedPrimitive.idl b/offapi/com/sun/star/rendering/XCachedPrimitive.idl
index c24a74df3135..9793374ad913 100644
--- a/offapi/com/sun/star/rendering/XCachedPrimitive.idl
+++ b/offapi/com/sun/star/rendering/XCachedPrimitive.idl
@@ -45,7 +45,7 @@ module com { module sun { module star { module rendering {
This interface provides a method to quickly redraw some
<type>XCanvas</type> primitives, using cached data.<p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XCachedPrimitive : ::com::sun::star::uno::XInterface
{
diff --git a/offapi/com/sun/star/rendering/XCanvas.idl b/offapi/com/sun/star/rendering/XCanvas.idl
index 3b9e25d8ae2d..78658a11f0f8 100644
--- a/offapi/com/sun/star/rendering/XCanvas.idl
+++ b/offapi/com/sun/star/rendering/XCanvas.idl
@@ -148,7 +148,7 @@ interface XTextLayout;
<member>getDevice()</member> call) - they will then internally
optimize to the underlying graphics subsystem.<p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XCanvas : ::com::sun::star::uno::XInterface
{
diff --git a/offapi/com/sun/star/rendering/XIntegerBitmap.idl b/offapi/com/sun/star/rendering/XIntegerBitmap.idl
index c56d46d948c1..b416d30debd1 100644
--- a/offapi/com/sun/star/rendering/XIntegerBitmap.idl
+++ b/offapi/com/sun/star/rendering/XIntegerBitmap.idl
@@ -52,7 +52,7 @@ module com { module sun { module star { module rendering {
/** This is a specialized interface for bitmaps having integer color
channels.<p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XIntegerBitmap : XIntegerReadOnlyBitmap
{
diff --git a/offapi/com/sun/star/rendering/XLinePolyPolygon2D.idl b/offapi/com/sun/star/rendering/XLinePolyPolygon2D.idl
index a44e1d4fa7dd..bbd2606297ba 100644
--- a/offapi/com/sun/star/rendering/XLinePolyPolygon2D.idl
+++ b/offapi/com/sun/star/rendering/XLinePolyPolygon2D.idl
@@ -44,7 +44,7 @@ module com { module sun { module star { module rendering {
/** Specialized interface for a 2D poly-polygon containing only straight line segments.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XLinePolyPolygon2D : XPolyPolygon2D
{
diff --git a/offapi/com/sun/star/rendering/XPolyPolygon2D.idl b/offapi/com/sun/star/rendering/XPolyPolygon2D.idl
index aa3963157a40..97319e9ce8d9 100644
--- a/offapi/com/sun/star/rendering/XPolyPolygon2D.idl
+++ b/offapi/com/sun/star/rendering/XPolyPolygon2D.idl
@@ -47,7 +47,7 @@ module com { module sun { module star { module rendering {
/** Generic interface for poly-polygons in 2D.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XPolyPolygon2D : ::com::sun::star::uno::XInterface
{
diff --git a/offapi/com/sun/star/rendering/XTextLayout.idl b/offapi/com/sun/star/rendering/XTextLayout.idl
index 091637a87e7d..0861d547bf13 100644
--- a/offapi/com/sun/star/rendering/XTextLayout.idl
+++ b/offapi/com/sun/star/rendering/XTextLayout.idl
@@ -90,7 +90,7 @@ interface XPolyPolygon2D;
might be off by up to one device pixel from the transformed
metrics.<p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XTextLayout : ::com::sun::star::uno::XInterface
{
diff --git a/offapi/com/sun/star/report/XReportControlFormat.idl b/offapi/com/sun/star/report/XReportControlFormat.idl
index 7146a68353e4..da9ee7ef4414 100644
--- a/offapi/com/sun/star/report/XReportControlFormat.idl
+++ b/offapi/com/sun/star/report/XReportControlFormat.idl
@@ -143,7 +143,7 @@ interface XReportControlFormat
/** If this optional property is <TRUE/>, then the characters are invisible.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[attribute,bound] boolean CharHidden
{
diff --git a/offapi/com/sun/star/resource/OfficeResourceLoader.idl b/offapi/com/sun/star/resource/OfficeResourceLoader.idl
index 3c3ec7e148d5..1d9d00925e34 100644
--- a/offapi/com/sun/star/resource/OfficeResourceLoader.idl
+++ b/offapi/com/sun/star/resource/OfficeResourceLoader.idl
@@ -70,7 +70,7 @@ module com { module sun { module star { module resource {
OpenOffice.org build), you are <strong>strongly</strong> discouraged from using the <type>OfficeResoureLoader</type>
service in a component which targets more than one particular OpenOffice.org build.</p>
- @since OpenOffice.org 2.0.3
+ @since OOo 2.0.3
*/
singleton OfficeResourceLoader : XResourceBundleLoader;
diff --git a/offapi/com/sun/star/script/browse/BrowseNode.idl b/offapi/com/sun/star/script/browse/BrowseNode.idl
index fa209b84efa1..502f16f5799a 100644
--- a/offapi/com/sun/star/script/browse/BrowseNode.idl
+++ b/offapi/com/sun/star/script/browse/BrowseNode.idl
@@ -46,7 +46,7 @@ module com {
XBrowseNode interface. XInvocation is an optional interface that is used
to execute macros, or to create/delete/rename macros or macro containers.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
service BrowseNode
{
diff --git a/offapi/com/sun/star/script/browse/BrowseNodeFactory.idl b/offapi/com/sun/star/script/browse/BrowseNodeFactory.idl
index b54d8e7e6137..92897a44080a 100644
--- a/offapi/com/sun/star/script/browse/BrowseNodeFactory.idl
+++ b/offapi/com/sun/star/script/browse/BrowseNodeFactory.idl
@@ -37,7 +37,7 @@ module com { module sun { module star { module script { module browse {
/**
This service is used to create Root XBrowseNodes.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
service BrowseNodeFactory
{
@@ -52,7 +52,7 @@ service BrowseNodeFactory
/singletons/com.sun.star.script.theBrowseNodeFactory
</pre>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
singleton theBrowseNodeFactory
{
diff --git a/offapi/com/sun/star/sdb/DatabaseContext.idl b/offapi/com/sun/star/sdb/DatabaseContext.idl
index d2e660058e70..ac990e02c709 100644
--- a/offapi/com/sun/star/sdb/DatabaseContext.idl
+++ b/offapi/com/sun/star/sdb/DatabaseContext.idl
@@ -96,7 +96,7 @@ published service DatabaseContext
are maintained, so if possible at all, you should use this interface, instead of modifying or
querying the configuration data directly.</p>
- @since OpenOffice.org 3.3
+ @since OOo 3.3
*/
[optional] interface XDatabaseRegistrations;
};
diff --git a/offapi/com/sun/star/sdb/DatabaseDocument.idl b/offapi/com/sun/star/sdb/DatabaseDocument.idl
index b7a626579ec5..6690c2929de4 100644
--- a/offapi/com/sun/star/sdb/DatabaseDocument.idl
+++ b/offapi/com/sun/star/sdb/DatabaseDocument.idl
@@ -43,7 +43,7 @@
module com { module sun { module star { module sdb {
/** specifies a link to a document associated with a database document
- @since OOo 2.0.0
+ @since OOo 2.0
@deprecated
*/
published service DatabaseDocument
diff --git a/offapi/com/sun/star/sdb/DocumentSaveRequest.idl b/offapi/com/sun/star/sdb/DocumentSaveRequest.idl
index f3a90b4f467f..a2a579fc47ac 100644
--- a/offapi/com/sun/star/sdb/DocumentSaveRequest.idl
+++ b/offapi/com/sun/star/sdb/DocumentSaveRequest.idl
@@ -44,7 +44,7 @@
<p>
Usually thrown if someone tries to save a document which hasn't a name yet.
</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
exception DocumentSaveRequest: com::sun::star::task::ClassifiedInteractionRequest
{
diff --git a/offapi/com/sun/star/sdb/OfficeDatabaseDocument.idl b/offapi/com/sun/star/sdb/OfficeDatabaseDocument.idl
index f619222be8a1..b01809802b2c 100644
--- a/offapi/com/sun/star/sdb/OfficeDatabaseDocument.idl
+++ b/offapi/com/sun/star/sdb/OfficeDatabaseDocument.idl
@@ -63,7 +63,7 @@ module com { module sun { module star { module sdb {
@see com::sun::star::sdb::XOfficeDatabaseDocument
@see com::sun::star::document::OfficeDocument
- @since OOo 2.0.0
+ @since OOo 2.0
*/
service OfficeDatabaseDocument
{
diff --git a/offapi/com/sun/star/sdb/XDatabaseRegistrations.idl b/offapi/com/sun/star/sdb/XDatabaseRegistrations.idl
index 81f878d2441d..8151e7e22de9 100644
--- a/offapi/com/sun/star/sdb/XDatabaseRegistrations.idl
+++ b/offapi/com/sun/star/sdb/XDatabaseRegistrations.idl
@@ -47,7 +47,7 @@ interface XDatabaseRegistrationsListener;
if possible at all, use this interface, instead of modifying or querying the configuration
data directly.</p>
- @since OpenOffice.org 3.3
+ @since OOo 3.3
*/
interface XDatabaseRegistrations
{
diff --git a/offapi/com/sun/star/sdb/XDatabaseRegistrationsListener.idl b/offapi/com/sun/star/sdb/XDatabaseRegistrationsListener.idl
index 57135f8de012..9ba6c6e6df9a 100644
--- a/offapi/com/sun/star/sdb/XDatabaseRegistrationsListener.idl
+++ b/offapi/com/sun/star/sdb/XDatabaseRegistrationsListener.idl
@@ -41,7 +41,7 @@ module com { module sun { module star { module sdb {
@see XDatabaseRegistrations
- @since OpenOffice.org 3.3
+ @since OOo 3.3
*/
interface XDatabaseRegistrationsListener : ::com::sun::star::lang::XEventListener
{
diff --git a/offapi/com/sun/star/sdb/XInteractionDocumentSave.idl b/offapi/com/sun/star/sdb/XInteractionDocumentSave.idl
index e4de2af39d98..4d89d66a6ca4 100644
--- a/offapi/com/sun/star/sdb/XInteractionDocumentSave.idl
+++ b/offapi/com/sun/star/sdb/XInteractionDocumentSave.idl
@@ -43,7 +43,7 @@ module com { module sun { module star { module sdb {
This continuation is typically used in conjunction with a
<type scope="com::sun::star::sdb">DocumentSaveRequest</type>.
</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XInteractionDocumentSave: com::sun::star::task::XInteractionContinuation
{
diff --git a/offapi/com/sun/star/sdb/application/DatabaseObject.idl b/offapi/com/sun/star/sdb/application/DatabaseObject.idl
index 3239d69a58f4..46f9f95a7500 100644
--- a/offapi/com/sun/star/sdb/application/DatabaseObject.idl
+++ b/offapi/com/sun/star/sdb/application/DatabaseObject.idl
@@ -40,7 +40,7 @@ module com { module sun { module star { module sdb { module application {
/** denotes different objects within a database document
- @since OOo 2.2.0
+ @since OOo 2.2
@see DatabaseObjectContainer
*/
diff --git a/offapi/com/sun/star/sdb/application/XDatabaseDocumentUI.idl b/offapi/com/sun/star/sdb/application/XDatabaseDocumentUI.idl
index c0ad40f97db9..aef6d49dff40 100644
--- a/offapi/com/sun/star/sdb/application/XDatabaseDocumentUI.idl
+++ b/offapi/com/sun/star/sdb/application/XDatabaseDocumentUI.idl
@@ -52,7 +52,7 @@ module com { module sun { module star { module sdb { module application {
@see com::sun::star::frame::Controller
@see com::sun::star::sdb::DatabaseDocument
- @since OOo 2.2.0
+ @since OOo 2.2
*/
interface XDatabaseDocumentUI
{
diff --git a/offapi/com/sun/star/sdb/application/XTableUIProvider.idl b/offapi/com/sun/star/sdb/application/XTableUIProvider.idl
index e93df6429684..9c0c7bca28f4 100644
--- a/offapi/com/sun/star/sdb/application/XTableUIProvider.idl
+++ b/offapi/com/sun/star/sdb/application/XTableUIProvider.idl
@@ -45,7 +45,7 @@ interface XDatabaseDocumentUI;
@see com::sun::star::sdb::Connection
- @since OOo 2.2.0
+ @since OOo 2.2
*/
interface XTableUIProvider
{
diff --git a/offapi/com/sun/star/sdbc/DataType.idl b/offapi/com/sun/star/sdbc/DataType.idl
index 4923f85f461a..cc5c33cf028a 100644
--- a/offapi/com/sun/star/sdbc/DataType.idl
+++ b/offapi/com/sun/star/sdbc/DataType.idl
@@ -133,7 +133,7 @@ published constants DataType
/** identifies the generic SQL type
* <code>BOOLEAN</code>.
*
- * @since OOo 2.0.0
+ * @since OOo 2.0
*/
const long BOOLEAN = 16;
};
diff --git a/offapi/com/sun/star/security/SerialNumberAdapter.idl b/offapi/com/sun/star/security/SerialNumberAdapter.idl
index 258426fe3f1b..adeb0ca71079 100644
--- a/offapi/com/sun/star/security/SerialNumberAdapter.idl
+++ b/offapi/com/sun/star/security/SerialNumberAdapter.idl
@@ -45,7 +45,7 @@ module com { module sun { module star { module security {
<p>An implementation of this service enables the conversion of certificate
serial number to and from a string</p>
- @since OOo 3.1.0
+ @since OOo 3.1
*/
service SerialNumberAdapter : XSerialNumberAdapter;
diff --git a/offapi/com/sun/star/sheet/ActivationEvent.idl b/offapi/com/sun/star/sheet/ActivationEvent.idl
index 481b4cca723a..f53c3509874b 100644
--- a/offapi/com/sun/star/sheet/ActivationEvent.idl
+++ b/offapi/com/sun/star/sheet/ActivationEvent.idl
@@ -44,7 +44,7 @@
/** describes a change of the active sheet. The new active sheet is given
with this event.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
published struct ActivationEvent: com::sun::star::lang::EventObject
diff --git a/offapi/com/sun/star/sheet/CellAreaLink.idl b/offapi/com/sun/star/sheet/CellAreaLink.idl
index 75c0a4d810b1..90e51f941eb8 100644
--- a/offapi/com/sun/star/sheet/CellAreaLink.idl
+++ b/offapi/com/sun/star/sheet/CellAreaLink.idl
@@ -106,7 +106,7 @@ published service CellAreaLink
/** specifies the time between two refresh actions in seconds.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] long RefreshPeriod;
diff --git a/offapi/com/sun/star/sheet/DDEItemInfo.idl b/offapi/com/sun/star/sheet/DDEItemInfo.idl
index bf884ea7cbfb..9ad23080fbd5 100644
--- a/offapi/com/sun/star/sheet/DDEItemInfo.idl
+++ b/offapi/com/sun/star/sheet/DDEItemInfo.idl
@@ -37,7 +37,7 @@ module com { module sun { module star { module sheet {
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
+ @since OOo 3.1
*/
struct DDEItemInfo
{
diff --git a/offapi/com/sun/star/sheet/DDELinkInfo.idl b/offapi/com/sun/star/sheet/DDELinkInfo.idl
index b9df62f3cd70..96c4b8e5c244 100644
--- a/offapi/com/sun/star/sheet/DDELinkInfo.idl
+++ b/offapi/com/sun/star/sheet/DDELinkInfo.idl
@@ -51,7 +51,7 @@ module com { module sun { module star { module sheet {
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
+ @since OOo 3.1
*/
struct DDELinkInfo
{
diff --git a/offapi/com/sun/star/sheet/DataPilotDescriptor.idl b/offapi/com/sun/star/sheet/DataPilotDescriptor.idl
index 992afdef5ed9..939ff469b674 100644
--- a/offapi/com/sun/star/sheet/DataPilotDescriptor.idl
+++ b/offapi/com/sun/star/sheet/DataPilotDescriptor.idl
@@ -80,7 +80,7 @@ published service DataPilotDescriptor
/** specifies parameters to create the data pilot table from a database.
@see DatabaseImportDescriptor
- @since OOo 3.3.0
+ @since OOo 3.3
*/
[optional, property] sequence< com::sun::star::beans::PropertyValue > ImportDescriptor;
@@ -90,7 +90,7 @@ published service DataPilotDescriptor
/** specifies the name of a <type>DataPilotSource</type> implementation
for the data pilot table.
- @since OOo 3.3.0
+ @since OOo 3.3
*/
[optional, property] string SourceServiceName;
@@ -100,7 +100,7 @@ published service DataPilotDescriptor
/** specifies arguments that are passed to the implementation named by
<member>SourceServiceName</member>.
- @since OOo 3.3.0
+ @since OOo 3.3
*/
[optional, property] sequence< com::sun::star::beans::PropertyValue > ServiceArguments;
diff --git a/offapi/com/sun/star/sheet/DataPilotItem.idl b/offapi/com/sun/star/sheet/DataPilotItem.idl
index 54f21820ed25..84be9bdc879a 100644
--- a/offapi/com/sun/star/sheet/DataPilotItem.idl
+++ b/offapi/com/sun/star/sheet/DataPilotItem.idl
@@ -77,7 +77,7 @@ service DataPilotItem
/** specifies the item's position in its field if sorting is manual.
- @since OOo 2.4.0
+ @since OOo 2.4
*/
[optional, property] long Position;
};
diff --git a/offapi/com/sun/star/sheet/DataPilotOutputRangeType.idl b/offapi/com/sun/star/sheet/DataPilotOutputRangeType.idl
index 7bb0bbbc9438..ffd9d274db97 100644
--- a/offapi/com/sun/star/sheet/DataPilotOutputRangeType.idl
+++ b/offapi/com/sun/star/sheet/DataPilotOutputRangeType.idl
@@ -40,7 +40,7 @@ module com { module sun { module star { module sheet {
@see com::sun::star::sheet::XDataPilotTable2
- @since OOo 3.0.0
+ @since OOo 3.0
*/
constants DataPilotOutputRangeType
{
diff --git a/offapi/com/sun/star/sheet/DataPilotSource.idl b/offapi/com/sun/star/sheet/DataPilotSource.idl
index d96bd6d1ba76..3629d48fd756 100644
--- a/offapi/com/sun/star/sheet/DataPilotSource.idl
+++ b/offapi/com/sun/star/sheet/DataPilotSource.idl
@@ -100,7 +100,7 @@ published service DataPilotSource
/** specifies the number of row fields.
- @since OOo 3.0.0
+ @since OOo 3.0
*/
[readonly, property, optional] long RowFieldCount;
@@ -108,7 +108,7 @@ published service DataPilotSource
/** specifies the number of column fields.
- @since OOo 3.0.0
+ @since OOo 3.0
*/
[readonly, property, optional] long ColumnFieldCount;
@@ -116,7 +116,7 @@ published service DataPilotSource
/** specifies the number of data fields.
- @since OOo 3.0.0
+ @since OOo 3.0
*/
[readonly, property, optional] long DataFieldCount;
};
diff --git a/offapi/com/sun/star/sheet/DataPilotSourceMember.idl b/offapi/com/sun/star/sheet/DataPilotSourceMember.idl
index 754fc955c30a..c83f1031e57a 100644
--- a/offapi/com/sun/star/sheet/DataPilotSourceMember.idl
+++ b/offapi/com/sun/star/sheet/DataPilotSourceMember.idl
@@ -86,7 +86,7 @@ published service DataPilotSourceMember
/** specifies the member's position in its hierarchy level if sorting
is manual.
- @since OOo 2.4.0
+ @since OOo 2.4
*/
[optional, property] boolean Position;
};
diff --git a/offapi/com/sun/star/sheet/DataPilotTable.idl b/offapi/com/sun/star/sheet/DataPilotTable.idl
index c2385c46e5fa..19c5b143a952 100644
--- a/offapi/com/sun/star/sheet/DataPilotTable.idl
+++ b/offapi/com/sun/star/sheet/DataPilotTable.idl
@@ -66,7 +66,7 @@ published service DataPilotTable
/** allows notification of modifications to the data pilot table.
- @since OOo 3.3.0
+ @since OOo 3.3
*/
[optional] interface com::sun::star::util::XModifyBroadcaster;
diff --git a/offapi/com/sun/star/sheet/DataPilotTableHeaderData.idl b/offapi/com/sun/star/sheet/DataPilotTableHeaderData.idl
index c98e4bbc2820..670b47db4f6a 100644
--- a/offapi/com/sun/star/sheet/DataPilotTableHeaderData.idl
+++ b/offapi/com/sun/star/sheet/DataPilotTableHeaderData.idl
@@ -51,7 +51,7 @@ module com { module sun { module star { module sheet {
@see com::sun::star::sheet::DataPilotFieldFilter
@see com::sun::star::sheet::DataResult
- @since OOo 3.0.0
+ @since OOo 3.0
*/
struct DataPilotTableHeaderData
{
diff --git a/offapi/com/sun/star/sheet/DataPilotTablePositionData.idl b/offapi/com/sun/star/sheet/DataPilotTablePositionData.idl
index aa97b0dba922..203990299c89 100644
--- a/offapi/com/sun/star/sheet/DataPilotTablePositionData.idl
+++ b/offapi/com/sun/star/sheet/DataPilotTablePositionData.idl
@@ -48,7 +48,7 @@ module com { module sun { module star { module sheet {
@see com::sun::star::sheet::DataPiotTableResultData
@see com::sun::star::sheet::DataPiotTableHeaderData
- @since OOo 3.0.0
+ @since OOo 3.0
*/
struct DataPilotTablePositionData
{
diff --git a/offapi/com/sun/star/sheet/DataPilotTablePositionType.idl b/offapi/com/sun/star/sheet/DataPilotTablePositionType.idl
index 8ef568079f12..f9b254921c6f 100644
--- a/offapi/com/sun/star/sheet/DataPilotTablePositionType.idl
+++ b/offapi/com/sun/star/sheet/DataPilotTablePositionType.idl
@@ -38,7 +38,7 @@ module com { module sun { module star { module sheet {
@see com::sun::star::sheet::DataPilotTableResultData
@see com::sun::star::sheet::DataPilotTableHeaderData
- @since OOo 3.0.0
+ @since OOo 3.0
*/
constants DataPilotTablePositionType
{
diff --git a/offapi/com/sun/star/sheet/DataPilotTableResultData.idl b/offapi/com/sun/star/sheet/DataPilotTableResultData.idl
index b0adfdfa4e3d..ff8f7064d537 100644
--- a/offapi/com/sun/star/sheet/DataPilotTableResultData.idl
+++ b/offapi/com/sun/star/sheet/DataPilotTableResultData.idl
@@ -47,7 +47,7 @@ module com { module sun { module star { module sheet {
@see com::sun::star::sheet::DataPilotFieldFilter
@see com::sun::star::sheet::DataResult
- @since OOo 3.0.0
+ @since OOo 3.0
*/
struct DataPilotTableResultData
{
diff --git a/offapi/com/sun/star/sheet/DatabaseImportDescriptor.idl b/offapi/com/sun/star/sheet/DatabaseImportDescriptor.idl
index eab5d41f3adf..0044b8801a03 100644
--- a/offapi/com/sun/star/sheet/DatabaseImportDescriptor.idl
+++ b/offapi/com/sun/star/sheet/DatabaseImportDescriptor.idl
@@ -72,7 +72,7 @@ published service DatabaseImportDescriptor
/** specifies whether the SQL statement is given directly to the database
or is parsed before.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] boolean IsNative;
@@ -80,7 +80,7 @@ published service DatabaseImportDescriptor
//-------------------------------------------------------------------------
/** indicates a connection URL, which locates a database driver.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] string ConnectionResource;
diff --git a/offapi/com/sun/star/sheet/DatabaseRange.idl b/offapi/com/sun/star/sheet/DatabaseRange.idl
index 2fb2121d9006..1a2e189ff14e 100644
--- a/offapi/com/sun/star/sheet/DatabaseRange.idl
+++ b/offapi/com/sun/star/sheet/DatabaseRange.idl
@@ -134,7 +134,7 @@ published service DatabaseRange
/** specifies the time between two refresh actions in seconds.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] long RefreshPeriod;
@@ -142,7 +142,7 @@ published service DatabaseRange
/** specifies whether the imported data is only a selection of the database.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] boolean FromSelection;
diff --git a/offapi/com/sun/star/sheet/ExternalDocLink.idl b/offapi/com/sun/star/sheet/ExternalDocLink.idl
index 357b0b4812ba..2c9842daa50e 100644
--- a/offapi/com/sun/star/sheet/ExternalDocLink.idl
+++ b/offapi/com/sun/star/sheet/ExternalDocLink.idl
@@ -41,7 +41,7 @@ module com { module sun { module star { module sheet {
@see com::sun::star::sheet::XExternalDocLink
- @since OOo 3.1.0
+ @since OOo 3.1
*/
service ExternalDocLink : XExternalDocLink
{
diff --git a/offapi/com/sun/star/sheet/ExternalDocLinks.idl b/offapi/com/sun/star/sheet/ExternalDocLinks.idl
index f0f216a0caf9..5f05d8666315 100644
--- a/offapi/com/sun/star/sheet/ExternalDocLinks.idl
+++ b/offapi/com/sun/star/sheet/ExternalDocLinks.idl
@@ -41,7 +41,7 @@ module com { module sun { module star { module sheet {
@see com::sun::star::sheet::ExternalDocLink
@see com::sun::star::sheet::XExternalDocLinks
- @since OOo 3.1.0
+ @since OOo 3.1
*/
service ExternalDocLinks : XExternalDocLinks
{
diff --git a/offapi/com/sun/star/sheet/ExternalLinkInfo.idl b/offapi/com/sun/star/sheet/ExternalLinkInfo.idl
index fa8590f7f678..0ad8d6dadeb4 100644
--- a/offapi/com/sun/star/sheet/ExternalLinkInfo.idl
+++ b/offapi/com/sun/star/sheet/ExternalLinkInfo.idl
@@ -38,7 +38,7 @@ module com { module sun { module star { module sheet {
//=============================================================================
/** describes an external link in a formula.
- @since OOo3.1
+ @since OOo 3.1
*/
struct ExternalLinkInfo
{
diff --git a/offapi/com/sun/star/sheet/ExternalLinkType.idl b/offapi/com/sun/star/sheet/ExternalLinkType.idl
index 7803a4c3b291..976524506775 100644
--- a/offapi/com/sun/star/sheet/ExternalLinkType.idl
+++ b/offapi/com/sun/star/sheet/ExternalLinkType.idl
@@ -38,7 +38,7 @@ module com { module sun { module star { module sheet {
<type>ExternalLinkInfo</type>, used with
<member>FormulaParser::ExternalLinks</member>.
- @since OOo3.1
+ @since OOo 3.1
*/
constants ExternalLinkType
{
diff --git a/offapi/com/sun/star/sheet/ExternalSheetCache.idl b/offapi/com/sun/star/sheet/ExternalSheetCache.idl
index 93652a6058f7..aabfb37d69da 100644
--- a/offapi/com/sun/star/sheet/ExternalSheetCache.idl
+++ b/offapi/com/sun/star/sheet/ExternalSheetCache.idl
@@ -41,7 +41,7 @@ module com { module sun { module star { module sheet {
@see com::sun::star::sheet::ExternalDocLink
@see com::sun::star::sheet::XExternalSheetCache
- @since OOo 3.1.0
+ @since OOo 3.1
*/
service ExternalSheetCache : XExternalSheetCache
{
diff --git a/offapi/com/sun/star/sheet/FormulaParser.idl b/offapi/com/sun/star/sheet/FormulaParser.idl
index 27fba17ff0c0..acf4eca4910b 100644
--- a/offapi/com/sun/star/sheet/FormulaParser.idl
+++ b/offapi/com/sun/star/sheet/FormulaParser.idl
@@ -103,7 +103,7 @@ service FormulaParser
that indices are 1-based, the sequence must start with an empty
element.</p>
- @since OOo3.1
+ @since OOo 3.1
*/
[property] sequence< ExternalLinkInfo > ExternalLinks;
diff --git a/offapi/com/sun/star/sheet/SheetCell.idl b/offapi/com/sun/star/sheet/SheetCell.idl
index dee529860646..c1117388ff35 100644
--- a/offapi/com/sun/star/sheet/SheetCell.idl
+++ b/offapi/com/sun/star/sheet/SheetCell.idl
@@ -241,7 +241,7 @@ published service SheetCell
/**
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional] interface com::sun::star::util::XModifyBroadcaster;
diff --git a/offapi/com/sun/star/sheet/SheetCellRange.idl b/offapi/com/sun/star/sheet/SheetCellRange.idl
index 6a791e68bb70..d841d6e1eef0 100644
--- a/offapi/com/sun/star/sheet/SheetCellRange.idl
+++ b/offapi/com/sun/star/sheet/SheetCellRange.idl
@@ -350,7 +350,7 @@ published service SheetCellRange
/**
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional] interface com::sun::star::util::XModifyBroadcaster;
diff --git a/offapi/com/sun/star/sheet/TablePageStyle.idl b/offapi/com/sun/star/sheet/TablePageStyle.idl
index 6673fb80f9de..686fb113d62c 100644
--- a/offapi/com/sun/star/sheet/TablePageStyle.idl
+++ b/offapi/com/sun/star/sheet/TablePageStyle.idl
@@ -197,7 +197,7 @@ published service TablePageStyle
/** contains the number of horizontal pages the sheet will printed on.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[property, optional] short ScaleToPagesX;
@@ -206,7 +206,7 @@ published service TablePageStyle
/** contains the number of vertical pages the sheet will printed on.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[property, optional] short ScaleToPagesY;
diff --git a/offapi/com/sun/star/sheet/XActivationBroadcaster.idl b/offapi/com/sun/star/sheet/XActivationBroadcaster.idl
index 7c57ab280508..e49a97e21d33 100644
--- a/offapi/com/sun/star/sheet/XActivationBroadcaster.idl
+++ b/offapi/com/sun/star/sheet/XActivationBroadcaster.idl
@@ -45,7 +45,7 @@ module com { module sun { module star { module sheet {
/** provides methods to add and remove XActivationEventListener
- @since OOo 2.0.0
+ @since OOo 2.0
*/
published interface XActivationBroadcaster: com::sun::star::uno::XInterface
diff --git a/offapi/com/sun/star/sheet/XActivationEventListener.idl b/offapi/com/sun/star/sheet/XActivationEventListener.idl
index 3976c26a32bd..f5478f8e07c7 100644
--- a/offapi/com/sun/star/sheet/XActivationEventListener.idl
+++ b/offapi/com/sun/star/sheet/XActivationEventListener.idl
@@ -60,7 +60,7 @@ published interface XActivationEventListener: com::sun::star::lang::XEventListen
@see ActivationEvent
@see XSpreadsheetViewEventProvider
- @since OOo 2.0.0
+ @since OOo 2.0
*/
void activeSpreadsheetChanged( [in] com::sun::star::sheet::ActivationEvent aEvent );
diff --git a/offapi/com/sun/star/sheet/XDataPilotTable2.idl b/offapi/com/sun/star/sheet/XDataPilotTable2.idl
index df7ec30041a8..a0fbd5934e8d 100644
--- a/offapi/com/sun/star/sheet/XDataPilotTable2.idl
+++ b/offapi/com/sun/star/sheet/XDataPilotTable2.idl
@@ -65,7 +65,7 @@ module com { module sun { module star { module sheet {
@see com::sun::star::sheet::XDataPilotTable
- @since OOo 3.0.0
+ @since OOo 3.0
*/
interface XDataPilotTable2: com::sun::star::sheet::XDataPilotTable
{
diff --git a/offapi/com/sun/star/sheet/XDrillDownDataSupplier.idl b/offapi/com/sun/star/sheet/XDrillDownDataSupplier.idl
index deb774b74227..b0cb6e212050 100644
--- a/offapi/com/sun/star/sheet/XDrillDownDataSupplier.idl
+++ b/offapi/com/sun/star/sheet/XDrillDownDataSupplier.idl
@@ -57,7 +57,7 @@ module com { module sun { module star { module sheet {
@see com::sun::star::sheet::DataPilotSource
- @since OOo 3.0.0
+ @since OOo 3.0
*/
interface XDrillDownDataSupplier: com::sun::star::uno::XInterface
{
diff --git a/offapi/com/sun/star/sheet/XEnhancedMouseClickBroadcaster.idl b/offapi/com/sun/star/sheet/XEnhancedMouseClickBroadcaster.idl
index 58461f90296a..16de0542a669 100644
--- a/offapi/com/sun/star/sheet/XEnhancedMouseClickBroadcaster.idl
+++ b/offapi/com/sun/star/sheet/XEnhancedMouseClickBroadcaster.idl
@@ -45,7 +45,7 @@ module com { module sun { module star { module sheet {
/** provides methods to add and remove EnhancedMouseClickHandler
- @since OOo 2.0.0
+ @since OOo 2.0
*/
published interface XEnhancedMouseClickBroadcaster: com::sun::star::uno::XInterface
diff --git a/offapi/com/sun/star/sheet/XExternalDocLink.idl b/offapi/com/sun/star/sheet/XExternalDocLink.idl
index 1a9662dbeed7..80b249e7d520 100644
--- a/offapi/com/sun/star/sheet/XExternalDocLink.idl
+++ b/offapi/com/sun/star/sheet/XExternalDocLink.idl
@@ -41,7 +41,7 @@ module com { module sun { module star { module sheet {
@see com::sun::star::sheet::ExternalDocLink
- @since OOo 3.1.0
+ @since OOo 3.1
*/
interface XExternalDocLink
{
diff --git a/offapi/com/sun/star/sheet/XExternalDocLinks.idl b/offapi/com/sun/star/sheet/XExternalDocLinks.idl
index 642b3c57eb14..0f9085ad7149 100644
--- a/offapi/com/sun/star/sheet/XExternalDocLinks.idl
+++ b/offapi/com/sun/star/sheet/XExternalDocLinks.idl
@@ -39,7 +39,7 @@ module com { module sun { module star { module sheet {
@see com::sun::star::sheet::ExternalDocLinks
- @since OOo 3.1.0
+ @since OOo 3.1
*/
interface XExternalDocLinks
{
diff --git a/offapi/com/sun/star/sheet/XExternalSheetCache.idl b/offapi/com/sun/star/sheet/XExternalSheetCache.idl
index 23827d7a04e2..89a1f70fb390 100644
--- a/offapi/com/sun/star/sheet/XExternalSheetCache.idl
+++ b/offapi/com/sun/star/sheet/XExternalSheetCache.idl
@@ -36,7 +36,7 @@ module com { module sun { module star { module sheet {
@see com::sun::star::sheet::ExternalSheetCache
- @since OOo 3.1.0
+ @since OOo 3.1
*/
interface XExternalSheetCache
{
diff --git a/offapi/com/sun/star/sheet/XScenarioEnhanced.idl b/offapi/com/sun/star/sheet/XScenarioEnhanced.idl
index cd4b895f1258..e61f6103e3b9 100644
--- a/offapi/com/sun/star/sheet/XScenarioEnhanced.idl
+++ b/offapi/com/sun/star/sheet/XScenarioEnhanced.idl
@@ -50,7 +50,7 @@ module com { module sun { module star { module sheet {
@see com::sun::star::sheet::XScenario
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XScenarioEnhanced: com::sun::star::uno::XInterface
diff --git a/offapi/com/sun/star/smarttags/SmartTagAction.idl b/offapi/com/sun/star/smarttags/SmartTagAction.idl
index a07c93eb5385..73c28ee87e07 100644
--- a/offapi/com/sun/star/smarttags/SmartTagAction.idl
+++ b/offapi/com/sun/star/smarttags/SmartTagAction.idl
@@ -46,7 +46,7 @@ module com { module sun { module star { module smarttags {
that can be performed for a smart tag which has been recognized
by a <type>SmartTagRecognizer</type> service.</p>
- @since OOo 2.3.0
+ @since OOo 2.3
*/
service SmartTagAction : XSmartTagAction {};
diff --git a/offapi/com/sun/star/smarttags/SmartTagRecognizer.idl b/offapi/com/sun/star/smarttags/SmartTagRecognizer.idl
index 60223c89d4ac..e77cbe1bd87f 100644
--- a/offapi/com/sun/star/smarttags/SmartTagRecognizer.idl
+++ b/offapi/com/sun/star/smarttags/SmartTagRecognizer.idl
@@ -47,7 +47,7 @@ module com { module sun { module star { module smarttags {
associated with specific actions which are defined by
implementations of the <type>SmartTagAction</type> service.</p>
- @since OOo 2.3.0
+ @since OOo 2.3
*/
service SmartTagRecognizer : XSmartTagRecognizer {};
diff --git a/offapi/com/sun/star/smarttags/SmartTagRecognizerMode.idl b/offapi/com/sun/star/smarttags/SmartTagRecognizerMode.idl
index b72034a64cb7..c4624cad3058 100644
--- a/offapi/com/sun/star/smarttags/SmartTagRecognizerMode.idl
+++ b/offapi/com/sun/star/smarttags/SmartTagRecognizerMode.idl
@@ -37,7 +37,7 @@
/** specifies the which type of text is passed to
<method>XSmartTagRecognizer::recognize()</method></p>
- @since OOo 2.3.0
+ @since OOo 2.3
*/
enum SmartTagRecognizerMode
diff --git a/offapi/com/sun/star/smarttags/XSmartTagAction.idl b/offapi/com/sun/star/smarttags/XSmartTagAction.idl
index 7aa66dc7132e..74ee62ffab11 100644
--- a/offapi/com/sun/star/smarttags/XSmartTagAction.idl
+++ b/offapi/com/sun/star/smarttags/XSmartTagAction.idl
@@ -64,7 +64,7 @@ module com { module sun { module star { module smarttags {
/** provides access to smart tag actions.
- @since OOo 2.3.0
+ @since OOo 2.3
*/
interface XSmartTagAction: com::sun::star::lang::XInitialization
diff --git a/offapi/com/sun/star/smarttags/XSmartTagRecognizer.idl b/offapi/com/sun/star/smarttags/XSmartTagRecognizer.idl
index fb3a551db19e..526d1bcabaa3 100644
--- a/offapi/com/sun/star/smarttags/XSmartTagRecognizer.idl
+++ b/offapi/com/sun/star/smarttags/XSmartTagRecognizer.idl
@@ -65,7 +65,7 @@ module com { module sun { module star { module smarttags {
/**
provides access to a smart tag recognizer.
- @since OOo 2.3.0
+ @since OOo 2.3
*/
interface XSmartTagRecognizer: com::sun::star::lang::XInitialization
diff --git a/offapi/com/sun/star/style/CharacterProperties.idl b/offapi/com/sun/star/style/CharacterProperties.idl
index e099443cf144..d2ab956c348f 100644
--- a/offapi/com/sun/star/style/CharacterProperties.idl
+++ b/offapi/com/sun/star/style/CharacterProperties.idl
@@ -428,7 +428,7 @@ published service CharacterProperties
/** If this optional property is <TRUE/>, then the characters are invisible.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] boolean CharHidden;
diff --git a/offapi/com/sun/star/style/NumberingType.idl b/offapi/com/sun/star/style/NumberingType.idl
index 9ba5b3a6588b..da9a9865b6dc 100644
--- a/offapi/com/sun/star/style/NumberingType.idl
+++ b/offapi/com/sun/star/style/NumberingType.idl
@@ -226,7 +226,7 @@ published constants NumberingType
//-------------------------------------------------------------------------
/** Numbering in Hebrew alphabet letters
- @since OOo 2.0.0
+ @since OOo 2.0
*/
const short CHARS_HEBREW = 33;
diff --git a/offapi/com/sun/star/task/XRestartManager.idl b/offapi/com/sun/star/task/XRestartManager.idl
index 102a1044d2e8..c53d0954b415 100644
--- a/offapi/com/sun/star/task/XRestartManager.idl
+++ b/offapi/com/sun/star/task/XRestartManager.idl
@@ -47,7 +47,7 @@ module com { module sun { module star { module task {
//=============================================================================
/** allows to try to restart the office.
- @since OOo3.3
+ @since OOo 3.3
*/
published interface XRestartManager : com::sun::star::uno::XInterface
{
diff --git a/offapi/com/sun/star/text/BaseFrameProperties.idl b/offapi/com/sun/star/text/BaseFrameProperties.idl
index d2966f8b0138..3e6178a50aa8 100644
--- a/offapi/com/sun/star/text/BaseFrameProperties.idl
+++ b/offapi/com/sun/star/text/BaseFrameProperties.idl
@@ -335,7 +335,7 @@ published service BaseFrameProperties
of the shape, if the text document setting ConsiderTextWrapOnObjPos
is <TRUE/>. Valid values are given by <member>WrapInfluenceOnPosition</member></p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] short WrapInfluenceOnPosition;
diff --git a/offapi/com/sun/star/text/Cell.idl b/offapi/com/sun/star/text/Cell.idl
index 726963ecc88a..51f3e348cb7f 100644
--- a/offapi/com/sun/star/text/Cell.idl
+++ b/offapi/com/sun/star/text/Cell.idl
@@ -93,7 +93,7 @@ service Cell
<li>CellProtection: non-functional implementation.</li>
</ul>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
service com::sun::star::table::CellProperties;
diff --git a/offapi/com/sun/star/text/DocumentSettings.idl b/offapi/com/sun/star/text/DocumentSettings.idl
index 7ea0e48779ae..27d1fc960a35 100644
--- a/offapi/com/sun/star/text/DocumentSettings.idl
+++ b/offapi/com/sun/star/text/DocumentSettings.idl
@@ -139,7 +139,7 @@ published service DocumentSettings
a proportional line spacing is only applied below a text line and
it's always added to the paragraph spacing between two paragraphs.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] boolean UseFormerLineSpacing;
// ------------------------------------------------------------
@@ -156,7 +156,7 @@ published service DocumentSettings
the spacing of the last paragraph respectively table of a table
cell isn't added at the bottom of this table cell.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] boolean AddParaSpacingToTableCells;
// ------------------------------------------------------------
@@ -174,7 +174,7 @@ published service DocumentSettings
its vertical position, doesn't include the lower spacing and the
line spacing of the previous paragraph.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] boolean UseFormerObjectPositioning;
@@ -191,7 +191,7 @@ published service DocumentSettings
If <FALSE/> (default value), the former object positioning
algorithm (known from OpenOffice.org 1.1) is applied.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] boolean ConsiderTextWrapOnObjPos;
diff --git a/offapi/com/sun/star/text/FootnoteSettings.idl b/offapi/com/sun/star/text/FootnoteSettings.idl
index e11354bd1b7c..42c6cc20d52f 100644
--- a/offapi/com/sun/star/text/FootnoteSettings.idl
+++ b/offapi/com/sun/star/text/FootnoteSettings.idl
@@ -126,7 +126,7 @@ published service FootnoteSettings
/** contains the name of the character style that is used
for footnote/endnote anchor in the text.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] string AnchorCharStyleName;
diff --git a/offapi/com/sun/star/text/GenericTextDocument.idl b/offapi/com/sun/star/text/GenericTextDocument.idl
index e6b3cba2eab6..9c983fb2133d 100644
--- a/offapi/com/sun/star/text/GenericTextDocument.idl
+++ b/offapi/com/sun/star/text/GenericTextDocument.idl
@@ -179,22 +179,28 @@ published service GenericTextDocument
[optional] interface com::sun::star::style::XStyleFamiliesSupplier;
- /// @since OOo 1.1.2
+ /** @since OOo 1.1.2
+ */
[optional] interface com::sun::star::text::XBookmarksSupplier;
- /// @since OOo 1.1.2
+ /** @since OOo 1.1.2
+ */
[optional] interface com::sun::star::text::XDocumentIndexesSupplier;
- /// @since OOo 1.1.2
+ /** @since OOo 1.1.2
+ */
[optional] interface com::sun::star::text::XTextFieldsSupplier;
- /// @since OOo 1.1.2
+ /** @since OOo 1.1.2
+ */
[optional] interface com::sun::star::text::XTextFramesSupplier;
- /// @since OOo 1.1.2
+ /** @since OOo 1.1.2
+ */
[optional] interface com::sun::star::text::XTextSectionsSupplier;
- /// @since OOo 1.1.2
+ /** @since OOo 1.1.2
+ */
[optional] interface com::sun::star::util::XNumberFormatsSupplier;
//-------------------------------------------------------------------------
diff --git a/offapi/com/sun/star/text/LineNumberingProperties.idl b/offapi/com/sun/star/text/LineNumberingProperties.idl
index 52e3357dee9e..b8c2c99b29e0 100644
--- a/offapi/com/sun/star/text/LineNumberingProperties.idl
+++ b/offapi/com/sun/star/text/LineNumberingProperties.idl
@@ -103,7 +103,7 @@ published service LineNumberingProperties
<p>If set to <FALSE/> the line numbering will be continuous.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] boolean RestartAtEachPage;
diff --git a/offapi/com/sun/star/text/Paragraph.idl b/offapi/com/sun/star/text/Paragraph.idl
index 4c8330eb1f06..ee75fed06ca6 100644
--- a/offapi/com/sun/star/text/Paragraph.idl
+++ b/offapi/com/sun/star/text/Paragraph.idl
@@ -142,7 +142,7 @@ published service Paragraph
interface com::sun::star::container::XEnumerationAccess;
/** gives access to a sequence of properties.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional] interface ::com::sun::star::beans::XTolerantMultiPropertySet;
};
diff --git a/offapi/com/sun/star/text/PositionLayoutDir.idl b/offapi/com/sun/star/text/PositionLayoutDir.idl
index 72e420876171..359318dbf831 100644
--- a/offapi/com/sun/star/text/PositionLayoutDir.idl
+++ b/offapi/com/sun/star/text/PositionLayoutDir.idl
@@ -37,7 +37,7 @@
/** These values specify the layout direction, in which the position attributes
of a shape are given
- @since OOo 2.0.0
+ @since OOo 2.0
*/
constants PositionLayoutDir
{
diff --git a/offapi/com/sun/star/text/RelOrientation.idl b/offapi/com/sun/star/text/RelOrientation.idl
index eb30a465a1f6..f0e6e2c1e98a 100644
--- a/offapi/com/sun/star/text/RelOrientation.idl
+++ b/offapi/com/sun/star/text/RelOrientation.idl
@@ -108,7 +108,7 @@ published constants RelOrientation
/** at the top of the text line, only sensible for vertical orientation.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
const short TEXT_LINE = 9;
diff --git a/offapi/com/sun/star/text/Shape.idl b/offapi/com/sun/star/text/Shape.idl
index 43d64efcf9c9..a7fe22ae5935 100644
--- a/offapi/com/sun/star/text/Shape.idl
+++ b/offapi/com/sun/star/text/Shape.idl
@@ -184,7 +184,7 @@ published service Shape
of the shape, if the text document setting ConsiderTextWrapOnObjPos
is <TRUE/>. Valid values are given by <member>WrapInfluenceOnPosition</member></p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] short WrapInfluenceOnPosition;
@@ -197,7 +197,7 @@ published service Shape
transformation property of the included service com::sun::star::drawing::Shape
converted to the horizontal left-to-right layout.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, readonly, property] com::sun::star::drawing::HomogenMatrix3 TransformationInHoriL2R;
//-------------------------------------------------------------------------
@@ -206,7 +206,7 @@ published service Shape
<p>Valid values are given by <member>PositionLayoutDir</member></p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] short PositionLayoutDir;
//-------------------------------------------------------------------------
@@ -218,7 +218,7 @@ published service Shape
start position property of the included service com::sun::star::drawing::Shape
converted to the horizontal left-to-right layout.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, readonly, property] com::sun::star::awt::Point StartPositionInHoriL2R;
//-------------------------------------------------------------------------
@@ -230,7 +230,7 @@ published service Shape
end position property of the included service com::sun::star::drawing::Shape
converted to the horizontal left-to-right layout.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, readonly, property] com::sun::star::awt::Point EndPositionInHoriL2R;
};
diff --git a/offapi/com/sun/star/text/TextMarkupType.idl b/offapi/com/sun/star/text/TextMarkupType.idl
index 0787dfefb456..429199a5fdc1 100644
--- a/offapi/com/sun/star/text/TextMarkupType.idl
+++ b/offapi/com/sun/star/text/TextMarkupType.idl
@@ -39,7 +39,7 @@ module com { module sun { module star { module text {
<p>These constants are used with
<method>XTextMarkup::commitTextMarkup()</method></p>
- @since OOo 2.3.0
+ @since OOo 2.3
*/
constants TextMarkupType
diff --git a/offapi/com/sun/star/text/TextPortion.idl b/offapi/com/sun/star/text/TextPortion.idl
index 6c23d9fa1655..3bfc745d97da 100644
--- a/offapi/com/sun/star/text/TextPortion.idl
+++ b/offapi/com/sun/star/text/TextPortion.idl
@@ -85,7 +85,7 @@ published service TextPortion
//-------------------------------------------------------------------------
/** gives access to a sequence of properties.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional]
interface ::com::sun::star::beans::XTolerantMultiPropertySet;
diff --git a/offapi/com/sun/star/text/TextTableRow.idl b/offapi/com/sun/star/text/TextTableRow.idl
index 1d5947a051a9..b1eca1467b89 100644
--- a/offapi/com/sun/star/text/TextTableRow.idl
+++ b/offapi/com/sun/star/text/TextTableRow.idl
@@ -111,7 +111,7 @@ published service TextTableRow
/** If <TRUE/>, the row is allowed to be split at page or column breaks.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property, maybevoid] boolean IsSplitAllowed;
diff --git a/offapi/com/sun/star/text/ViewSettings.idl b/offapi/com/sun/star/text/ViewSettings.idl
index ca786f3a14d9..4890c36182b5 100644
--- a/offapi/com/sun/star/text/ViewSettings.idl
+++ b/offapi/com/sun/star/text/ViewSettings.idl
@@ -260,7 +260,7 @@ published service ViewSettings
//-------------------------------------------------------------------------
/** Specifies whether to display the grid or not
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] boolean IsRasterVisible;
@@ -268,7 +268,7 @@ published service ViewSettings
/** Specifies whether to move frames, drawing elements, and form
functions only between grid points.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] boolean IsSnapToRaster;
@@ -278,7 +278,7 @@ published service ViewSettings
<p>The value must be greater or equal to 0, and the application
may enforce an upper bound for the value.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
@throws com::sun::star::lang::IllegalArgumentException
if the value is out of bounds.
*/
@@ -290,7 +290,7 @@ published service ViewSettings
<p>The value must be greater or equal to 0, and the application
may enforce an upper bound for the value.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
@throws com::sun::star::lang::IllegalArgumentException
if the value is out of bounds.
*/
@@ -303,7 +303,7 @@ published service ViewSettings
<p>The value must be greater than 0. The application
may enforce more restricting bounds for the value.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
@throws com::sun::star::lang::IllegalArgumentException
if the value is out of bounds.
*/
@@ -316,7 +316,7 @@ published service ViewSettings
<p>The value must be greater than 0. The application
may enforce more restricting bounds for the value.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
@throws com::sun::star::lang::IllegalArgumentException
if the value is out of bounds.
*/
@@ -325,7 +325,7 @@ published service ViewSettings
//-------------------------------------------------------------------------
/** If this property is <TRUE/>, hidden characters are displayed
- @since OOo 3.0.0
+ @since OOo 3.0
*/
[optional, property] boolean ShowHiddenCharacters;
//-------------------------------------------------------------------------
@@ -334,7 +334,7 @@ published service ViewSettings
<p>This option controls the use of the settings ShowHiddenCharacters,
ShowTabstops, ShowSpaces, ShowBreaks and ShowParaBreaks </p>
- @since OOo 3.0.0
+ @since OOo 3.0
*/
[optional, property] boolean ShowNonprintingCharacters;
//-------------------------------------------------------------------------
@@ -342,7 +342,7 @@ published service ViewSettings
<p>Uses values <type scope="com::sun::star::awt">FieldUnit</type></p>
- @since OOo 3.1.0
+ @since OOo 3.1
*/
[optional, property] long HorizontalRulerMetric;
//-------------------------------------------------------------------------
@@ -350,7 +350,7 @@ published service ViewSettings
<p>Uses values from <type scope="com::sun::star::awt">FieldUnit</type></p>
- @since OOo 3.1.0
+ @since OOo 3.1
*/
[optional, property] long VerticalRulerMetric;
};
diff --git a/offapi/com/sun/star/text/XTextMarkup.idl b/offapi/com/sun/star/text/XTextMarkup.idl
index f8dc3f834e73..877e31c7377f 100644
--- a/offapi/com/sun/star/text/XTextMarkup.idl
+++ b/offapi/com/sun/star/text/XTextMarkup.idl
@@ -44,7 +44,7 @@ module com { module sun { module star { module text {
/** provides functionality to markup text.
- @since OOo 2.3.0
+ @since OOo 2.3
*/
interface XTextMarkup
diff --git a/offapi/com/sun/star/text/fieldmaster/Database.idl b/offapi/com/sun/star/text/fieldmaster/Database.idl
index 921c86ff8c94..f37e3d5e2fbf 100644
--- a/offapi/com/sun/star/text/fieldmaster/Database.idl
+++ b/offapi/com/sun/star/text/fieldmaster/Database.idl
@@ -70,13 +70,13 @@ published service Database
//------------------------------------------------------------------------
/** indicates the URL of a database file.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] string DataBaseURL;
//------------------------------------------------------------------------
/** indicates a connection URL, which locates a database driver.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] string DataBaseResource;
//------------------------------------------------------------------------
diff --git a/offapi/com/sun/star/text/textfield/DatabaseName.idl b/offapi/com/sun/star/text/textfield/DatabaseName.idl
index 4c788163bdf8..a883a69e83e5 100644
--- a/offapi/com/sun/star/text/textfield/DatabaseName.idl
+++ b/offapi/com/sun/star/text/textfield/DatabaseName.idl
@@ -62,12 +62,12 @@ published service DatabaseName
[property] string DataTableName;
/** indicates the URL of a database file.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] string DataBaseURL;
/** indicates a connection URL, which locates a database driver.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] string DataBaseResource;
diff --git a/offapi/com/sun/star/text/textfield/DatabaseNextSet.idl b/offapi/com/sun/star/text/textfield/DatabaseNextSet.idl
index 315bbf4df867..2ec05ef45a63 100644
--- a/offapi/com/sun/star/text/textfield/DatabaseNextSet.idl
+++ b/offapi/com/sun/star/text/textfield/DatabaseNextSet.idl
@@ -66,12 +66,12 @@ published service DatabaseNextSet
[property] string Condition;
/** indicates the URL of a database file.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] string DataBaseURL;
/** indicates a connection URL, which locates a database driver.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] string DataBaseResource;
diff --git a/offapi/com/sun/star/text/textfield/DatabaseNumberOfSet.idl b/offapi/com/sun/star/text/textfield/DatabaseNumberOfSet.idl
index 8e9daa7b07ad..71eb29b89cf4 100644
--- a/offapi/com/sun/star/text/textfield/DatabaseNumberOfSet.idl
+++ b/offapi/com/sun/star/text/textfield/DatabaseNumberOfSet.idl
@@ -71,12 +71,12 @@ published service DatabaseNumberOfSet
[property] long SetNumber;
/** indicates the URL of a database file.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] string DataBaseURL;
/** indicates a connection URL, which locates a database driver.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] string DataBaseResource;
diff --git a/offapi/com/sun/star/text/textfield/DatabaseSetNumber.idl b/offapi/com/sun/star/text/textfield/DatabaseSetNumber.idl
index 3af3ab3516ce..f4417d564c03 100644
--- a/offapi/com/sun/star/text/textfield/DatabaseSetNumber.idl
+++ b/offapi/com/sun/star/text/textfield/DatabaseSetNumber.idl
@@ -72,12 +72,12 @@ published service DatabaseSetNumber
[property] long SetNumber;
/** indicates the URL of a database file.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] string DataBaseURL;
/** indicates a connection URL, which locates a database driver.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
[optional, property] string DataBaseResource;
diff --git a/offapi/com/sun/star/ucb/TransientDocumentsContentProvider.idl b/offapi/com/sun/star/ucb/TransientDocumentsContentProvider.idl
index 515e9390e60b..e3bb0d02a27c 100644
--- a/offapi/com/sun/star/ucb/TransientDocumentsContentProvider.idl
+++ b/offapi/com/sun/star/ucb/TransientDocumentsContentProvider.idl
@@ -57,7 +57,7 @@ module com { module sun { module star { module ucb {
@see TransientDocumentsFolderContent
@see TransientDocumentsStreamContent
- @since OOo 2.0.0
+ @since OOo 2.0
*/
service TransientDocumentsContentProvider
{
diff --git a/offapi/com/sun/star/ucb/TransientDocumentsDocumentContent.idl b/offapi/com/sun/star/ucb/TransientDocumentsDocumentContent.idl
index a6bf588ad873..54314f5bd24b 100644
--- a/offapi/com/sun/star/ucb/TransientDocumentsDocumentContent.idl
+++ b/offapi/com/sun/star/ucb/TransientDocumentsDocumentContent.idl
@@ -82,7 +82,7 @@ module com { module sun { module star { module ucb {
@see TransientDocumentsFolderContent
@see TransientDocumentsStreamContent
- @since OOo 2.0.0
+ @since OOo 2.0
*/
service TransientDocumentsDocumentContent
{
diff --git a/offapi/com/sun/star/ucb/TransientDocumentsFolderContent.idl b/offapi/com/sun/star/ucb/TransientDocumentsFolderContent.idl
index a2233e4c5f40..68ad0be1f7bb 100644
--- a/offapi/com/sun/star/ucb/TransientDocumentsFolderContent.idl
+++ b/offapi/com/sun/star/ucb/TransientDocumentsFolderContent.idl
@@ -81,7 +81,7 @@ module com { module sun { module star { module ucb {
@see TransientDocumentsDocumentContent
@see TransientDocumentsStreamContent
- @since OOo 2.0.0
+ @since OOo 2.0
*/
service TransientDocumentsFolderContent
{
diff --git a/offapi/com/sun/star/ucb/TransientDocumentsRootContent.idl b/offapi/com/sun/star/ucb/TransientDocumentsRootContent.idl
index 8cce82756e52..25c281392c4a 100644
--- a/offapi/com/sun/star/ucb/TransientDocumentsRootContent.idl
+++ b/offapi/com/sun/star/ucb/TransientDocumentsRootContent.idl
@@ -79,7 +79,7 @@ module com { module sun { module star { module ucb {
@see TransientDocumentsFolderContent
@see TransientDocumentsStreamContent
- @since OOo 2.0.0
+ @since OOo 2.0
*/
service TransientDocumentsRootContent
{
diff --git a/offapi/com/sun/star/ucb/TransientDocumentsStreamContent.idl b/offapi/com/sun/star/ucb/TransientDocumentsStreamContent.idl
index aede99473933..7aaf3d4574db 100644
--- a/offapi/com/sun/star/ucb/TransientDocumentsStreamContent.idl
+++ b/offapi/com/sun/star/ucb/TransientDocumentsStreamContent.idl
@@ -79,7 +79,7 @@ module com { module sun { module star { module ucb {
@see TransientDocumentsDocumentContent
@see TransientDocumentsFolderContent
- @since OOo 2.0.0
+ @since OOo 2.0
*/
service TransientDocumentsStreamContent
{
diff --git a/offapi/com/sun/star/ui/ConfigurableUIElement.idl b/offapi/com/sun/star/ui/ConfigurableUIElement.idl
index 88d2a96416e8..afde83a344bd 100644
--- a/offapi/com/sun/star/ui/ConfigurableUIElement.idl
+++ b/offapi/com/sun/star/ui/ConfigurableUIElement.idl
@@ -74,7 +74,7 @@ module com { module sun { module star { module ui {
</ul>
</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
service ConfigurableUIElement
diff --git a/offapi/com/sun/star/ui/ConfigurationEvent.idl b/offapi/com/sun/star/ui/ConfigurationEvent.idl
index 9001f3d2b333..b778bda9ac8a 100644
--- a/offapi/com/sun/star/ui/ConfigurationEvent.idl
+++ b/offapi/com/sun/star/ui/ConfigurationEvent.idl
@@ -37,7 +37,7 @@ module com { module sun { module star { module ui {
/** this event is broadcasted by a configuration manager whenever the state of
user interface element has changed.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
published struct ConfigurationEvent : ::com::sun::star::container::ContainerEvent
diff --git a/offapi/com/sun/star/ui/DockingArea.idl b/offapi/com/sun/star/ui/DockingArea.idl
index 9a4170dc1173..f376581e0c7e 100644
--- a/offapi/com/sun/star/ui/DockingArea.idl
+++ b/offapi/com/sun/star/ui/DockingArea.idl
@@ -44,7 +44,7 @@ module com { module sun { module star { module ui {
@see com::sun::star::frame::XLayoutManager
</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
enum DockingArea
diff --git a/offapi/com/sun/star/ui/GlobalAcceleratorConfiguration.idl b/offapi/com/sun/star/ui/GlobalAcceleratorConfiguration.idl
index 58ff8da73fa0..f0552332946d 100644
--- a/offapi/com/sun/star/ui/GlobalAcceleratorConfiguration.idl
+++ b/offapi/com/sun/star/ui/GlobalAcceleratorConfiguration.idl
@@ -40,7 +40,7 @@ module com { module sun { module star { module ui {
by using an UNO service manager. It provides then access to
the global accelerator configuration.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
service GlobalAcceleratorConfiguration : XAcceleratorConfiguration
{};
diff --git a/offapi/com/sun/star/ui/ImageType.idl b/offapi/com/sun/star/ui/ImageType.idl
index fb35073f9d38..7fa2d949cb15 100644
--- a/offapi/com/sun/star/ui/ImageType.idl
+++ b/offapi/com/sun/star/ui/ImageType.idl
@@ -36,7 +36,7 @@ module com { module sun { module star { module ui {
the current image set of an image manager.
</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
constants ImageType
{
diff --git a/offapi/com/sun/star/ui/ItemDescriptor.idl b/offapi/com/sun/star/ui/ItemDescriptor.idl
index 8732f300b96d..b6e9c2404330 100644
--- a/offapi/com/sun/star/ui/ItemDescriptor.idl
+++ b/offapi/com/sun/star/ui/ItemDescriptor.idl
@@ -49,7 +49,7 @@ module com { module sun { module star { module ui {
You could have a menu or a toolbox working with the same item descriptor.
</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
service ItemDescriptor
{
diff --git a/offapi/com/sun/star/ui/ItemStyle.idl b/offapi/com/sun/star/ui/ItemStyle.idl
index 78e11cde05fd..9efb3aa81cc8 100644
--- a/offapi/com/sun/star/ui/ItemStyle.idl
+++ b/offapi/com/sun/star/ui/ItemStyle.idl
@@ -56,7 +56,7 @@ module com { module sun { module star { module ui {
</ul>
</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
constants ItemStyle
{
diff --git a/offapi/com/sun/star/ui/ItemType.idl b/offapi/com/sun/star/ui/ItemType.idl
index 53b655e85683..a83c8b7f24f3 100644
--- a/offapi/com/sun/star/ui/ItemType.idl
+++ b/offapi/com/sun/star/ui/ItemType.idl
@@ -31,7 +31,7 @@ module com { module sun { module star { module ui {
/** Determines the type of an item.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
constants ItemType
{
diff --git a/offapi/com/sun/star/ui/ModuleUICategoryDescription.idl b/offapi/com/sun/star/ui/ModuleUICategoryDescription.idl
index 3b410d9dc799..3253b1152221 100644
--- a/offapi/com/sun/star/ui/ModuleUICategoryDescription.idl
+++ b/offapi/com/sun/star/ui/ModuleUICategoryDescription.idl
@@ -48,7 +48,7 @@ module com { module sun { module star { module ui {
or Calc.
</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
service ModuleUICategoryDescription
diff --git a/offapi/com/sun/star/ui/ModuleUICommandDescription.idl b/offapi/com/sun/star/ui/ModuleUICommandDescription.idl
index 42805d5ff464..3b7aafc40059 100644
--- a/offapi/com/sun/star/ui/ModuleUICommandDescription.idl
+++ b/offapi/com/sun/star/ui/ModuleUICommandDescription.idl
@@ -47,7 +47,7 @@ module com { module sun { module star { module ui {
that are part of a single OpenOffice.org module, like Writer or Calc.
</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
service ModuleUICommandDescription
diff --git a/offapi/com/sun/star/ui/ModuleUIConfigurationManager.idl b/offapi/com/sun/star/ui/ModuleUIConfigurationManager.idl
index 0b4246c21c6c..f2e46b18712c 100644
--- a/offapi/com/sun/star/ui/ModuleUIConfigurationManager.idl
+++ b/offapi/com/sun/star/ui/ModuleUIConfigurationManager.idl
@@ -63,7 +63,7 @@ module com { module sun { module star { module ui {
this layer.</br>
</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
service ModuleUIConfigurationManager
diff --git a/offapi/com/sun/star/ui/ModuleUIConfigurationManagerSupplier.idl b/offapi/com/sun/star/ui/ModuleUIConfigurationManagerSupplier.idl
index 835fecc0e5ab..0a405a1ac64b 100644
--- a/offapi/com/sun/star/ui/ModuleUIConfigurationManagerSupplier.idl
+++ b/offapi/com/sun/star/ui/ModuleUIConfigurationManagerSupplier.idl
@@ -40,7 +40,7 @@ module com { module sun { module star { module ui {
/** specifies a central user interface configuration provider which gives
access to module based user interface configuration managers.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
service ModuleUIConfigurationManagerSupplier
diff --git a/offapi/com/sun/star/ui/ModuleWindowStateConfiguration.idl b/offapi/com/sun/star/ui/ModuleWindowStateConfiguration.idl
index 8127bc25c566..bede01c0aeb0 100644
--- a/offapi/com/sun/star/ui/ModuleWindowStateConfiguration.idl
+++ b/offapi/com/sun/star/ui/ModuleWindowStateConfiguration.idl
@@ -49,7 +49,7 @@ module com { module sun { module star { module ui {
Calc.
</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
service ModuleWindowStateConfiguration
diff --git a/offapi/com/sun/star/ui/UICategoryDescription.idl b/offapi/com/sun/star/ui/UICategoryDescription.idl
index 9853b43fc769..5698ff74fccf 100644
--- a/offapi/com/sun/star/ui/UICategoryDescription.idl
+++ b/offapi/com/sun/star/ui/UICategoryDescription.idl
@@ -46,7 +46,7 @@ module com { module sun { module star { module ui {
implementations which provides all commands to a user.
</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
//=============================================================================
diff --git a/offapi/com/sun/star/ui/UICommandDescription.idl b/offapi/com/sun/star/ui/UICommandDescription.idl
index 76d7c179731b..bd1f35926149 100644
--- a/offapi/com/sun/star/ui/UICommandDescription.idl
+++ b/offapi/com/sun/star/ui/UICommandDescription.idl
@@ -46,7 +46,7 @@ module com { module sun { module star { module ui {
are part of OpenOffice.org modules, like Writer or Calc.
</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
service UICommandDescription
diff --git a/offapi/com/sun/star/ui/UIConfigurationManager.idl b/offapi/com/sun/star/ui/UIConfigurationManager.idl
index 7fe313bf178d..d8b7b3305c38 100644
--- a/offapi/com/sun/star/ui/UIConfigurationManager.idl
+++ b/offapi/com/sun/star/ui/UIConfigurationManager.idl
@@ -52,7 +52,7 @@ module com { module sun { module star { module ui {
/** specifies a user interface configuration manager which controls
all customizable user interface elements of an object.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
service UIConfigurationManager
diff --git a/offapi/com/sun/star/ui/UIElement.idl b/offapi/com/sun/star/ui/UIElement.idl
index 580a660f734e..610cfa73ae25 100644
--- a/offapi/com/sun/star/ui/UIElement.idl
+++ b/offapi/com/sun/star/ui/UIElement.idl
@@ -63,7 +63,7 @@ module com { module sun { module star { module ui {
before it can be used.
</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
service UIElement
diff --git a/offapi/com/sun/star/ui/UIElementFactory.idl b/offapi/com/sun/star/ui/UIElementFactory.idl
index 2710d13d1d35..1c07575e65fc 100644
--- a/offapi/com/sun/star/ui/UIElementFactory.idl
+++ b/offapi/com/sun/star/ui/UIElementFactory.idl
@@ -49,7 +49,7 @@ module com { module sun { module star { module ui {
service to provide access to itself.
</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
service UIElementFactory
diff --git a/offapi/com/sun/star/ui/UIElementFactoryManager.idl b/offapi/com/sun/star/ui/UIElementFactoryManager.idl
index c814a58f6b8e..8a150c1af2cc 100644
--- a/offapi/com/sun/star/ui/UIElementFactoryManager.idl
+++ b/offapi/com/sun/star/ui/UIElementFactoryManager.idl
@@ -49,7 +49,7 @@ module com { module sun { module star { module ui {
<type scope="com::sun::star::lang">ServiceManager</type>.
</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
service UIElementFactoryManager
diff --git a/offapi/com/sun/star/ui/UIElementSettings.idl b/offapi/com/sun/star/ui/UIElementSettings.idl
index 9362211407e9..a5e4465a3a44 100644
--- a/offapi/com/sun/star/ui/UIElementSettings.idl
+++ b/offapi/com/sun/star/ui/UIElementSettings.idl
@@ -51,7 +51,7 @@ module com { module sun { module star { module ui {
although limitations based on the real user interface element may be visible.
</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
service UIElementSettings
{
diff --git a/offapi/com/sun/star/ui/UIElementType.idl b/offapi/com/sun/star/ui/UIElementType.idl
index a3a32dff7935..b4a8e5cbc7d3 100644
--- a/offapi/com/sun/star/ui/UIElementType.idl
+++ b/offapi/com/sun/star/ui/UIElementType.idl
@@ -35,7 +35,7 @@ module com { module sun { module star { module ui {
/** determine the type of a user interface element which is controlled
by a layout manager.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
constants UIElementType
{
diff --git a/offapi/com/sun/star/ui/WindowContentFactory.idl b/offapi/com/sun/star/ui/WindowContentFactory.idl
index c1ea6a94d9b8..991c92c812cf 100644
--- a/offapi/com/sun/star/ui/WindowContentFactory.idl
+++ b/offapi/com/sun/star/ui/WindowContentFactory.idl
@@ -47,7 +47,7 @@ module com { module sun { module star { module ui {
The specific type of the created window depends on the provided arguments.
</p>
- @since OOo 3.1.0
+ @since OOo 3.1
*/
service WindowContentFactory : com::sun::star::lang::XSingleComponentFactory
diff --git a/offapi/com/sun/star/ui/WindowStateConfiguration.idl b/offapi/com/sun/star/ui/WindowStateConfiguration.idl
index 376feb6422db..531b1fe777f6 100644
--- a/offapi/com/sun/star/ui/WindowStateConfiguration.idl
+++ b/offapi/com/sun/star/ui/WindowStateConfiguration.idl
@@ -48,7 +48,7 @@ module com { module sun { module star { module ui {
part of OpenOffice.org modules, like Writer or Calc.
</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
service WindowStateConfiguration
diff --git a/offapi/com/sun/star/ui/XAcceleratorConfiguration.idl b/offapi/com/sun/star/ui/XAcceleratorConfiguration.idl
index 92a77c71c8ac..fd7e94f99f8f 100644
--- a/offapi/com/sun/star/ui/XAcceleratorConfiguration.idl
+++ b/offapi/com/sun/star/ui/XAcceleratorConfiguration.idl
@@ -77,7 +77,7 @@ module com { module sun { module star { module ui {
@see AcceleratorConfiguration
@see <type scope="dom::sun::star::util">XFlushable</type>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XAcceleratorConfiguration
{
diff --git a/offapi/com/sun/star/ui/XDockingAreaAcceptor.idl b/offapi/com/sun/star/ui/XDockingAreaAcceptor.idl
index 8e6d9a01a4ac..f3912a12c1a6 100644
--- a/offapi/com/sun/star/ui/XDockingAreaAcceptor.idl
+++ b/offapi/com/sun/star/ui/XDockingAreaAcceptor.idl
@@ -59,7 +59,7 @@ module com { module sun { module star { module ui {
@see com::sun::star::frame::XFrame
</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
diff --git a/offapi/com/sun/star/ui/XModuleUIConfigurationManager.idl b/offapi/com/sun/star/ui/XModuleUIConfigurationManager.idl
index f57524dd0039..b95d686ff776 100644
--- a/offapi/com/sun/star/ui/XModuleUIConfigurationManager.idl
+++ b/offapi/com/sun/star/ui/XModuleUIConfigurationManager.idl
@@ -69,7 +69,7 @@ module com { module sun { module star { module ui {
configuration manager uses.</br>
</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XModuleUIConfigurationManager : ::com::sun::star::uno::XInterface
diff --git a/offapi/com/sun/star/ui/XModuleUIConfigurationManagerSupplier.idl b/offapi/com/sun/star/ui/XModuleUIConfigurationManagerSupplier.idl
index 1ca64791c3b4..f1eb20a785e0 100644
--- a/offapi/com/sun/star/ui/XModuleUIConfigurationManagerSupplier.idl
+++ b/offapi/com/sun/star/ui/XModuleUIConfigurationManagerSupplier.idl
@@ -41,7 +41,7 @@ module com { module sun { module star { module ui {
/** allows to retrieve user interface configuration managers related to
OpenOffice.org modules.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XModuleUIConfigurationManagerSupplier : ::com::sun::star::uno::XInterface
diff --git a/offapi/com/sun/star/ui/XUIConfiguration.idl b/offapi/com/sun/star/ui/XUIConfiguration.idl
index d8c38e43bb70..95ec91a65f5b 100644
--- a/offapi/com/sun/star/ui/XUIConfiguration.idl
+++ b/offapi/com/sun/star/ui/XUIConfiguration.idl
@@ -47,7 +47,7 @@ module com { module sun { module star { module ui {
<p>This can be useful for UI to enable/disable some functions without
actually accessing the data.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XUIConfiguration : ::com::sun::star::uno::XInterface
diff --git a/offapi/com/sun/star/ui/XUIConfigurationListener.idl b/offapi/com/sun/star/ui/XUIConfigurationListener.idl
index cc8a8a14eed2..2e89eee6bea0 100644
--- a/offapi/com/sun/star/ui/XUIConfigurationListener.idl
+++ b/offapi/com/sun/star/ui/XUIConfigurationListener.idl
@@ -45,7 +45,7 @@ module com { module sun { module star { module ui {
/** supplies information about changes of a user interface
configuration manager.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XUIConfigurationListener : com::sun::star::lang::XEventListener
diff --git a/offapi/com/sun/star/ui/XUIConfigurationManager.idl b/offapi/com/sun/star/ui/XUIConfigurationManager.idl
index 62d3dc56a0eb..f62e1ce87a21 100644
--- a/offapi/com/sun/star/ui/XUIConfigurationManager.idl
+++ b/offapi/com/sun/star/ui/XUIConfigurationManager.idl
@@ -70,7 +70,7 @@ module com { module sun { module star { module ui {
controls the structure of all customizable user interface
elements.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XUIConfigurationManager : ::com::sun::star::uno::XInterface
diff --git a/offapi/com/sun/star/ui/XUIConfigurationManagerSupplier.idl b/offapi/com/sun/star/ui/XUIConfigurationManagerSupplier.idl
index 8ffc2482d834..a1f091623a30 100644
--- a/offapi/com/sun/star/ui/XUIConfigurationManagerSupplier.idl
+++ b/offapi/com/sun/star/ui/XUIConfigurationManagerSupplier.idl
@@ -37,7 +37,7 @@ module com { module sun { module star { module ui {
/** allows to retrieve the user interface configuration manager related to
an object.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XUIConfigurationManagerSupplier : ::com::sun::star::uno::XInterface
diff --git a/offapi/com/sun/star/ui/XUIConfigurationPersistence.idl b/offapi/com/sun/star/ui/XUIConfigurationPersistence.idl
index 696362d0882c..aae269b58c26 100644
--- a/offapi/com/sun/star/ui/XUIConfigurationPersistence.idl
+++ b/offapi/com/sun/star/ui/XUIConfigurationPersistence.idl
@@ -38,7 +38,7 @@ module com { module sun { module star { module ui {
interface configuration data to a storage and to retrieve information
about the current state.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XUIConfigurationPersistence : ::com::sun::star::uno::XInterface
diff --git a/offapi/com/sun/star/ui/XUIConfigurationStorage.idl b/offapi/com/sun/star/ui/XUIConfigurationStorage.idl
index 2f07b995c486..47aee612d0f5 100644
--- a/offapi/com/sun/star/ui/XUIConfigurationStorage.idl
+++ b/offapi/com/sun/star/ui/XUIConfigurationStorage.idl
@@ -41,7 +41,7 @@ module com { module sun { module star { module ui {
/** supplies functions to change or get information about the storage
of a user interface configuration manager.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XUIConfigurationStorage : ::com::sun::star::uno::XInterface
diff --git a/offapi/com/sun/star/ui/XUIElementFactory.idl b/offapi/com/sun/star/ui/XUIElementFactory.idl
index 6c71e72670dc..05fe8746d387 100644
--- a/offapi/com/sun/star/ui/XUIElementFactory.idl
+++ b/offapi/com/sun/star/ui/XUIElementFactory.idl
@@ -67,7 +67,7 @@ module com { module sun { module star { module ui {
</ul>
</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XUIElementFactory : ::com::sun::star::uno::XInterface
diff --git a/offapi/com/sun/star/ui/XUIElementFactoryRegistration.idl b/offapi/com/sun/star/ui/XUIElementFactoryRegistration.idl
index 26d701e71647..b0e08d0ee677 100644
--- a/offapi/com/sun/star/ui/XUIElementFactoryRegistration.idl
+++ b/offapi/com/sun/star/ui/XUIElementFactoryRegistration.idl
@@ -76,7 +76,7 @@ module com { module sun { module star { module ui {
</ul>
</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XUIElementFactoryRegistration : com::sun::star::uno::XInterface
diff --git a/offapi/com/sun/star/ui/XUIElementSettings.idl b/offapi/com/sun/star/ui/XUIElementSettings.idl
index cd9f59f874f1..87681ec508cd 100644
--- a/offapi/com/sun/star/ui/XUIElementSettings.idl
+++ b/offapi/com/sun/star/ui/XUIElementSettings.idl
@@ -45,7 +45,7 @@ module com { module sun { module star { module ui {
/** provides functions to retrieve and change user interface element structure
data and to update its visible representation.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XUIElementSettings : com::sun::star::uno::XInterface
diff --git a/offapi/com/sun/star/ui/XUIFunctionListener.idl b/offapi/com/sun/star/ui/XUIFunctionListener.idl
index 9325e59af751..e62670bec558 100644
--- a/offapi/com/sun/star/ui/XUIFunctionListener.idl
+++ b/offapi/com/sun/star/ui/XUIFunctionListener.idl
@@ -39,7 +39,7 @@
/** special interface to receive notification that a user interface
element will execute a function.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XUIFunctionListener : com::sun::star::lang::XEventListener
{
diff --git a/offapi/com/sun/star/util/Endianness.idl b/offapi/com/sun/star/util/Endianness.idl
index 0ce93b2319ac..e82d8abc5285 100644
--- a/offapi/com/sun/star/util/Endianness.idl
+++ b/offapi/com/sun/star/util/Endianness.idl
@@ -34,7 +34,7 @@ module com { module sun { module star { module util {
The endianness specifies the order in which the bytes of larger
types are laid out in memory.<p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
constants Endianness
{
diff --git a/offapi/com/sun/star/util/OfficeInstallationDirectories.idl b/offapi/com/sun/star/util/OfficeInstallationDirectories.idl
index 06b9665d26a5..302330fb2eec 100644
--- a/offapi/com/sun/star/util/OfficeInstallationDirectories.idl
+++ b/offapi/com/sun/star/util/OfficeInstallationDirectories.idl
@@ -50,7 +50,7 @@ module com { module sun { module star { module util {
possibility to share one office user data directory among parallel office
installations.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
published service OfficeInstallationDirectories
{
diff --git a/offapi/com/sun/star/util/PathSubstitution.idl b/offapi/com/sun/star/util/PathSubstitution.idl
index b765c8a0f03c..dcc3bdab976d 100644
--- a/offapi/com/sun/star/util/PathSubstitution.idl
+++ b/offapi/com/sun/star/util/PathSubstitution.idl
@@ -48,57 +48,65 @@ module com { module sun { module star { module util {
/** A service to support the substitution and resubstitution of path variables.
- <p>
- A path variable must be specified with the following syntax: "$("&lt;variable-name&gt;")".
- Path variables are not case sensitive and are always provided as a UCB-compliant URLs
- (for example: "file:///c:/temp" or "file:///usr/install"). This is mandatory to support an
- optional remote file system.<br>
- A user defined list of path variables is supported. This list is stored in the Office
- configuration file (org/openoffice/Office/Substitution.xml). Please have a look at the
- schema definition file which configuration structure this file uses.<br>
- There is also a set of variables that have pre-defined values:
- </p>
- <dl>
- <dt>$(inst)</dt>
- <dd>Installation path of the Office Basis layer.</dd>
- <dt>$(prog)</dt>
- <dd>Program path of the Office Basis layer.</dd>
+ <p>
+ A path variable must be specified with the following syntax: "$("&lt;variable-name&gt;")".
+ Path variables are not case sensitive and are always provided as a UCB-compliant URLs
+ (for example: "file:///c:/temp" or "file:///usr/install"). This is mandatory to support an
+ optional remote file system.<br>
+ A user defined list of path variables is supported. This list is stored in the Office
+ configuration file (org/openoffice/Office/Substitution.xml). Please have a look at the
+ schema definition file which configuration structure this file uses.<br>
+ There is also a set of variables that have pre-defined values:
+ </p>
+ <dl>
+ <dt>$(inst)</dt>
+ <dd>Installation path of the Office Basis layer.</dd>
+ <dt>$(prog)</dt>
+ <dd>Program path of the Office Basis layer.</dd>
<dt>$(brandbaseurl)</dt>
<dd>Installation path of the the Office Brand layer.</dd>
- <dt>$(user)</dt>
- <dd>The user installation directory.</dd>
- <dt>$(work)</dt>
- <dd>The work directory of the user. Under Windows this would be the
- "MyDocuments" subdirectory. Under Unix this would be the home-directory</dd>
+ <dt>$(user)</dt>
+ <dd>The user installation directory.</dd>
+ <dt>$(work)</dt>
+ <dd>The work directory of the user. Under Windows this would be the
+ "MyDocuments" subdirectory. Under Unix this would be the home-directory</dd>
<dt>$(home)</dt>
- <dd>The home directory of the user. Under Unix this would be the home-
- directory. Under Windows this would be the "Documents and Settings\<username>"
- subdirectory.</dd>
+ <dd>The home directory of the user. Under Unix this would be the home-
+ directory. Under Windows this would be the "Documents and Settings\<username>"
+ subdirectory.</dd>
<dt>$(temp)</dt>
- <dd>The current temporary directory.</dd>
+ <dd>The current temporary directory.</dd>
<dt>$(path)</dt>
- <dd>The value of PATH environment variable.</dd>
+ <dd>The value of PATH environment variable.</dd>
<dt>$(lang)</dt>
- <dd>The country code used by the Office, like 01=English, 49=German.</dd>
- <dt>$(langid)</dt>
- <dd>The language code used by the Office, like 0x0009=English, 0x0409=English US.</dd>
+ <dd>The country code used by the Office, like 01=English, 49=German.</dd>
+ <dt>$(langid)</dt>
+ <dd>The language code used by the Office, like 0x0009=English, 0x0409=English US.</dd>
<dt>$(vlang)</dt>
- <dd>The language used by the Office as a string. Like "German" for a German Office.</dd>
- </dl>
+ <dd>The language used by the Office as a string. Like "German" for a German Office.</dd>
+ </dl>
+ <p>
+ Attention: Most predefined variables describe an absolute path.
+ The only exceptions are: $(lang), $(langid) and $(vlang).
+ Therefore the service implementation should only substitute variables which
+ are located at the start of a provided path string or are part of a multi-path.
+ This special service is not designed to be a text substiution but shall
+ provide (a) valid substituted path(s).
+ </p>
@since OOo 1.1.2
*/
published service PathSubstitution
{
- //-------------------------------------------------------------------------
- /** Interface to exchange path variables with defined paths and to resubstitute paths with path variables.
+ //-------------------------------------------------------------------------
+ /** Interface to exchange path variables with defined paths and to resubstitute paths with path variables.
- <p>
- To resubstitute path variables the caller must provide paths as UCB-compliant URLs.
- </p>
- */
- interface com::sun::star::util::XStringSubstitution;
+ <p>
+ To resubstitute path variables the caller must provide paths as UCB-compliant URLs.
+ </p>
+ */
+ interface com::sun::star::util::XStringSubstitution;
};
//=============================================================================
diff --git a/offapi/com/sun/star/util/XBroadcaster.idl b/offapi/com/sun/star/util/XBroadcaster.idl
index ba97b5b5f4f6..05b2a2922609 100644
--- a/offapi/com/sun/star/util/XBroadcaster.idl
+++ b/offapi/com/sun/star/util/XBroadcaster.idl
@@ -39,7 +39,7 @@ module com { module sun { module star { module util {
/** allows to control notification behavior of a broadcaster.
- @since 3.0
+ @since OOo 3.0
*/
interface XBroadcaster: com::sun::star::uno::XInterface
{
diff --git a/offapi/com/sun/star/util/XOfficeInstallationDirectories.idl b/offapi/com/sun/star/util/XOfficeInstallationDirectories.idl
index 889cd5c89ed8..93d994eb6e0f 100644
--- a/offapi/com/sun/star/util/XOfficeInstallationDirectories.idl
+++ b/offapi/com/sun/star/util/XOfficeInstallationDirectories.idl
@@ -45,7 +45,7 @@ module com { module sun { module star { module util {
later. In many cases, storing the reference directly would destroy the
relocatability of an office installation.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
published interface XOfficeInstallationDirectories : com::sun::star::uno::XInterface
{
diff --git a/offapi/com/sun/star/xml/dom/XNode.idl b/offapi/com/sun/star/xml/dom/XNode.idl
index a86220300412..7f7ffc14aa0e 100644
--- a/offapi/com/sun/star/xml/dom/XNode.idl
+++ b/offapi/com/sun/star/xml/dom/XNode.idl
@@ -79,7 +79,7 @@ information.</p>
</table></p>
@see <a href="http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113">Document Object Model (DOM) Level 2 Core Specification</a> </p>
-@since OOo 2.0.0
+@since OOo 2.0
*/
interface XNode : com::sun::star::uno::XInterface
{
diff --git a/offapi/drafts/com/sun/star/form/ListEntryEvent.idl b/offapi/drafts/com/sun/star/form/ListEntryEvent.idl
deleted file mode 100644
index 3c145f8cd2fd..000000000000
--- a/offapi/drafts/com/sun/star/form/ListEntryEvent.idl
+++ /dev/null
@@ -1,77 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef __drafts_com_sun_star_form_ListEntryEvent_idl__
-#define __drafts_com_sun_star_form_ListEntryEvent_idl__
-
-#ifndef __com_sun_star_lang_EventObject_idl__
-#include <com/sun/star/lang/EventObject.idl>
-#endif
-
-//=============================================================================
-
-module drafts { module com { module sun { module star { module form {
-
-//=============================================================================
-
-/** specifies the event which is notified when a change in a string entry
- list occurred
-
- @see XListEntrySource
- @see XListEntryListener
-
- @deprecated
- This structure is superseded by <type scope="com::sun::star::form::binding">ListEntryEvent</type>
-*/
-struct ListEntryEvent : com::sun::star::lang::EventObject
-{
- /** denotes the position where a change occurred.
-
- <p>The concrete semantics of the value depends on the concrete
- event being notified.</p>
- */
- long Position;
-
- /** denotes the number of changed entries, in case a change of
- an entry <em>range</em> is being notified.
- */
- long Count;
-
- /** denotes the changed entries
-
- <p>The concrete semantics of the value depends on the concrete
- event being notified.</p>
- */
- sequence< string >
- Entries;
-};
-
-//=============================================================================
-
-}; }; }; }; };
-
-#endif
diff --git a/offapi/drafts/com/sun/star/form/XBindableValue.idl b/offapi/drafts/com/sun/star/form/XBindableValue.idl
deleted file mode 100644
index 42ab74e576b4..000000000000
--- a/offapi/drafts/com/sun/star/form/XBindableValue.idl
+++ /dev/null
@@ -1,81 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef __drafts_com_sun_star_form_XBindableValue_idl__
-#define __drafts_com_sun_star_form_XBindableValue_idl__
-
-#ifndef __com_sun_star_uno_XInterface_idl__
-#include <com/sun/star/uno/XInterface.idl>
-#endif
-#ifndef __drafts_com_sun_star_form_IncompatibleTypesException_idl__
-#include <drafts/com/sun/star/form/IncompatibleTypesException.idl>
-#endif
-
-//=============================================================================
-
-module drafts { module com { module sun { module star { module form {
-
-interface XValueBinding;
-
-//=============================================================================
-
-/** specifies support for being bound to an external value
-
- @see XValueBinding
-
- @deprecated
- This interface is superseded by <type scope="com::sun::star::form::binding">XBindableValue</type>
-*/
-interface XBindableValue : com::sun::star::uno::XInterface
-{
- /** sets an external instance which controls the value of the component
-
- <p>Any previously active binding will be revoked. There can be only one!</p>
-
- @param XValueBinding
- the new binding which is to be used by the component. May be <NULL/>,
- in this case only the current binding is revoked.
-
- @throws <type>IncompatibleTypesException</type>
- if the new binding (provided it's not <NULL/>) supports only types
- which are incompatible with the types of the bindable component.
- */
- void setValueBinding( [in] XValueBinding aBinding )
- raises ( IncompatibleTypesException );
-
- /** retrieves the external instance which currently controls the value of the
- component
- */
- XValueBinding
- getValueBinding( );
-};
-
-//=============================================================================
-
-}; }; }; }; };
-
-#endif
diff --git a/offapi/drafts/com/sun/star/form/XListEntryListener.idl b/offapi/drafts/com/sun/star/form/XListEntryListener.idl
deleted file mode 100644
index 7b68b72ffb07..000000000000
--- a/offapi/drafts/com/sun/star/form/XListEntryListener.idl
+++ /dev/null
@@ -1,92 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef __drafts_com_sun_star_form_XListEntryListener_idl__
-#define __drafts_com_sun_star_form_XListEntryListener_idl__
-
-#ifndef __com_sun_star_lang_XEventListener_idl__
-#include <com/sun/star/lang/XEventListener.idl>
-#endif
-#ifndef __drafts_com_sun_star_form_ListEntryEvent_idl__
-#include <drafts/com/sun/star/form/ListEntryEvent.idl>
-#endif
-
-//=============================================================================
-
-module drafts { module com { module sun { module star { module form {
-
-//=============================================================================
-
-/** specifies a listener for changes in a string entry list
-
- @deprecated
- This interface is superseded by <type scope="com::sun::star::form::binding">XListEntryListener</type>
-*/
-interface XListEntryListener : com::sun::star::lang::XEventListener
-{
- /** notifies the listener that a single entry in the list has change
-
- @param Source
- is the event describing the change. The <member>ListEntryEvent::Position</member>
- member denotes the position of the changed entry, the first (and only) element
- of the <member>ListEntryEvent::Entries</member> member denotes the new string
- */
- void entryChanged( [in] ListEntryEvent Source );
-
- /** notifies the listener that a range of entries has been inserted into the list
-
- @param Source
- is the event describing the change. The <member>ListEntryEvent::Position</member>
- member denotes the position of the first inserted entry, the
- <member>ListEntryEvent::Entries</member> member contains the strings which have
- been inserted.
- */
- void entryRangeInserted( [in] ListEntryEvent Source );
-
- /** notifies the listener that a range of entries has been removed from the list
-
- @param Source
- is the event describing the change. The <member>ListEntryEvent::Position</member>
- member denotes the position of the first removed entry, the
- <member>ListEntryEvent::Count</member> member the number of removed entries.
- */
- void entryRangeRemoved( [in] ListEntryEvent Source );
-
- /** notifies the listener that all entries of the list have changed.
-
- <p>The listener should retrieve the complete new list by calling the
- <member>XListEntrySource::getAllListEntries</member> method of the event source
- (which is denoted by <member scope="com::sun::star::lang">EventObject::Source</member>).
- */
- void allEntriesChanged( [in] com::sun::star::lang::EventObject Source );
-};
-
-//=============================================================================
-
-}; }; }; }; };
-
-#endif
diff --git a/offapi/drafts/com/sun/star/form/XListEntrySink.idl b/offapi/drafts/com/sun/star/form/XListEntrySink.idl
deleted file mode 100644
index 8f2d6748d3f3..000000000000
--- a/offapi/drafts/com/sun/star/form/XListEntrySink.idl
+++ /dev/null
@@ -1,71 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef __drafts_com_sun_star_form_XListEntrySink_idl__
-#define __drafts_com_sun_star_form_XListEntrySink_idl__
-
-#ifndef __com_sun_star_uno_XInterface_idl__
-#include <com/sun/star/uno/XInterface.idl>
-#endif
-
-//=============================================================================
-
-module drafts { module com { module sun { module star { module form {
-
-interface XListEntrySource;
-
-//=============================================================================
-
-/** specifies support for indirect manipulation of of a string list
-
- @deprecated
- This interface is superseded by <type scope="com::sun::star::form::binding">XListEntrySink</type>
-*/
-interface XListEntrySink : com::sun::star::uno::XInterface
-{
- /** sets the new source for the list entries of the component
-
- <p>The list represented by this component will be cleared, and initially
- filled with the entries from the new list source.</p>
-
- @param Source
- the new source for the list entries. May be <NULL/>, in this
- case, the current source is revoked.
- */
- void setListEntrySource( [in] XListEntrySource Source );
-
- /** retrieves the current source for the list entries of the component.
- */
- XListEntrySource
- getListEntrySource( );
-};
-
-//=============================================================================
-
-}; }; }; }; };
-
-#endif
diff --git a/offapi/drafts/com/sun/star/form/XListEntrySource.idl b/offapi/drafts/com/sun/star/form/XListEntrySource.idl
deleted file mode 100644
index b2cc390027e6..000000000000
--- a/offapi/drafts/com/sun/star/form/XListEntrySource.idl
+++ /dev/null
@@ -1,103 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef __drafts_com_sun_star_form_XListEntrySource_idl__
-#define __drafts_com_sun_star_form_XListEntrySource_idl__
-
-#ifndef __com_sun_star_uno_XInterface_idl__
-#include <com/sun/star/uno/XInterface.idl>
-#endif
-#ifndef __com_sun_star_lang_NullPointerException_idl__
-#include <com/sun/star/lang/NullPointerException.idl>
-#endif
-#ifndef __com_sun_star_lang_IndexOutOfBoundsException_idl__
-#include <com/sun/star/lang/IndexOutOfBoundsException.idl>
-#endif
-
-//=============================================================================
-
-module drafts { module com { module sun { module star { module form {
-
-interface XListEntryListener;
-
-//=============================================================================
-
-/** specifies a source of string list entries
-
- <p>The interface supports foreign components which actively retrieve list entries,
- as well as components which want to passively being notified of changes in the list.</p>
-
- @see XListEntrySink
-
- @deprecated
- This interface is superseded by <type scope="com::sun::star::form::binding">XListEntrySource</type>
-*/
-interface XListEntrySource : com::sun::star::uno::XInterface
-{
- /** retrieves the number of entries in the list
- */
- long getListEntryCount( );
-
- /** provides access to a single list entry
-
- @throws <type scope="com::sun::star::lang">IndexOutOfBoundsException</type>
- if the given position does not denote a valid index in the list
-
- @see getListEntryCount
- */
- string getListEntry( [in] long Position )
- raises( com::sun::star::lang::IndexOutOfBoundsException );
-
- /** provides access to the entirety of all list entries
- */
- sequence< string >
- getAllListEntries( );
-
- /** adds a listener which will be notified about changes in the list
- reflected by the component.
-
- @throws <type scope="com::sun::star::lang">NullPointerException</type>
- if the given listener is <NULL/>
- */
- void addListEntryListener( [in] XListEntryListener Listener )
- raises( com::sun::star::lang::NullPointerException );
-
- /** revokes the given listener from the list of components which will
- be notified about changes in the entry list.
-
- @throws <type scope="com::sun::star::lang">NullPointerException</type>
- if the given listener is <NULL/>
- */
- void removeListEntryListener( [in] XListEntryListener Listener )
- raises( com::sun::star::lang::NullPointerException );
-};
-
-//=============================================================================
-
-}; }; }; }; };
-
-#endif
diff --git a/offapi/drafts/com/sun/star/form/XValueBinding.idl b/offapi/drafts/com/sun/star/form/XValueBinding.idl
deleted file mode 100644
index bfef18ad02b7..000000000000
--- a/offapi/drafts/com/sun/star/form/XValueBinding.idl
+++ /dev/null
@@ -1,101 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef __drafts_com_sun_star_form_XValueBinding_idl__
-#define __drafts_com_sun_star_form_XValueBinding_idl__
-
-#ifndef __com_sun_star_uno_XInterface_idl__
-#include <com/sun/star/uno/XInterface.idl>
-#endif
-#ifndef __com_sun_star_lang_NoSupportException_idl__
-#include <com/sun/star/lang/NoSupportException.idl>
-#endif
-#ifndef __drafts_com_sun_star_form_IncompatibleTypesException_idl__
-#include <drafts/com/sun/star/form/IncompatibleTypesException.idl>
-#endif
-
-//=============================================================================
-
-module drafts { module com { module sun { module star { module form {
-
-//=============================================================================
-
-/** specifies a binding to a value which can be read and written.
-
- @deprecated
- This interface is superseded by <type scope="com::sun::star::form::binding">XValueBinding</type>
-*/
-interface XValueBinding : com::sun::star::uno::XInterface
-{
- //-------------------------------------------------------------------------
- /** determines the types which are supported by this binding for value exchange
-
- @see supportsType
- */
- sequence< type >
- getSupportedValueTypes( );
-
- /** determines whether a given type is supported by this binding for value exchange
-
- <p>Calling this method is equal to calling <member>getSupportedValueTypes</member>,
- and looking up the given type in the resulting type sequence.</p>
-
- @see getSupportedValueTypes
- */
- boolean supportsType( [in] type aType );
-
- /** retrieves the current value
-
- @throws <type>IncompatibleTypesException</type>
- if the requested value type is not supported by the binding
- @see getSupportedValueTypes
- @see supportsType
- */
- any getValue( [in] type aType )
- raises( IncompatibleTypesException );
-
- /** sets the current value
-
- @throws <type>IncompatibleTypesException</type>
- if the given value type is not supported by the binding
- @throws <type scope="com::sun::star::lang">NoSupportException</type>
- if the value currently cannot be changed (e.g. because it's readonly),
- or if the binding in general does not support write access to it's binding
-
- @see getSupportedValueTypes
- @see supportsType
- @see ValueBinding
- */
- void setValue( [in] any aValue )
- raises( IncompatibleTypesException, com::sun::star::lang::NoSupportException );
-};
-
-//=============================================================================
-
-}; }; }; }; };
-
-#endif
diff --git a/offapi/drafts/com/sun/star/form/makefile.mk b/offapi/drafts/com/sun/star/form/makefile.mk
deleted file mode 100644
index c5f68e0fe2b5..000000000000
--- a/offapi/drafts/com/sun/star/form/makefile.mk
+++ /dev/null
@@ -1,52 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General 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=dcssform
-PACKAGE=drafts$/com$/sun$/star$/form
-
-# --- Settings -----------------------------------------------------
-.INCLUDE : $(PRJ)$/util$/makefile.pmk
-
-# ------------------------------------------------------------------------
-
-IDLFILES=\
- IncompatibleTypesException.idl \
- ListEntryEvent.idl \
- XBindableValue.idl \
- XValueBinding.idl \
- XListEntrySink.idl \
- XListEntrySource.idl \
- XListEntryListener.idl \
-
-# ------------------------------------------------------------------
-
-.INCLUDE : target.mk
-.INCLUDE : $(PRJ)$/util$/target.pmk
diff --git a/offapi/prj/build.lst b/offapi/prj/build.lst
index a4ed8a8ceaf8..c3a5f06d43bb 100644
--- a/offapi/prj/build.lst
+++ b/offapi/prj/build.lst
@@ -106,5 +106,4 @@ oa offapi\com\sun\star\geometry nmake - all oa_geometry NULL
oa offapi\com\sun\star\rendering nmake - all oa_rendering oa_geometry NULL
oa offapi\com\sun\star\rdf nmake - all oa_rdf oa_datatransfer oa_text NULL
oa offapi\com\sun\star\office nmake - all oa_office oa_text NULL
-oa offapi\drafts\com\sun\star\form nmake - all oa_drafts_form NULL
-oa offapi\util nmake - all oa_util oa_auth oa_awt oa_awttree oa_awtgrid oa_awttab oa_chart oa_chart2 oa_chart2_data oa_config oa_configbootstrap oa_configbackend oa_configbackend_xml oa_datatrans_clip oa_datatrans_dnd oa_datatransfer oa_docu oa_draw oa_draw_framework oa_embed oa_fcomp oa_finsp oa_fcontr oa_fieldmaster oa_form oa_xforms oa_formula oa_frame oa_i18n oa_inst oa_ldap oa_ling2 oa_logging oa_mail oa_media oa_mozilla oa_packages oa_manifest oa_zippackage oa_plug oa_pres oa_animations oa_putil oa_resrc oa_sax oa_xml_input oa_scan oa_sdb oa_sdbtools oa_sdbapp oa_sdbc oa_sdbcx oa_setup oa_sheet oa_style oa_svg oa_sync oa_sync2 oa_system oa_table oa_task oa_text oa_textfield oa_docinfo oa_ucb oa_view oa_xml oa_xml_dom oa_xml_xpath oa_xml_views oa_xml_events oa_image oa_xsd oa_inspection oa_ui oa_ui_dialogs oa_accessibility oa_form_binding oa_form_validation oa_form_submission oa_fruntime oa_geometry oa_rendering oa_sfprovider oa_sfbrowse oa_drafts_form oa_deployment oa_deploymenttest oa_deployment_ui oa_frame_status oa_gallery oa_graphic oa_security oa_crypto_sax oa_crypto oa_csax oa_wrapper oa_script oa_smarttags oa_report oa_reportins oa_reportmeta oa_rdf oa_oooimprovement oa_office oa_prestextfield oa_starme oa_script_vba NULL
+oa offapi\util nmake - all oa_util oa_auth oa_awt oa_awttree oa_awtgrid oa_awttab oa_chart oa_chart2 oa_chart2_data oa_config oa_configbootstrap oa_configbackend oa_configbackend_xml oa_datatrans_clip oa_datatrans_dnd oa_datatransfer oa_docu oa_draw oa_draw_framework oa_embed oa_fcomp oa_finsp oa_fcontr oa_fieldmaster oa_form oa_xforms oa_formula oa_frame oa_i18n oa_inst oa_ldap oa_ling2 oa_logging oa_mail oa_media oa_mozilla oa_packages oa_manifest oa_zippackage oa_plug oa_pres oa_animations oa_putil oa_resrc oa_sax oa_xml_input oa_scan oa_sdb oa_sdbtools oa_sdbapp oa_sdbc oa_sdbcx oa_setup oa_sheet oa_style oa_svg oa_sync oa_sync2 oa_system oa_table oa_task oa_text oa_textfield oa_docinfo oa_ucb oa_view oa_xml oa_xml_dom oa_xml_xpath oa_xml_views oa_xml_events oa_image oa_xsd oa_inspection oa_ui oa_ui_dialogs oa_accessibility oa_form_binding oa_form_validation oa_form_submission oa_fruntime oa_geometry oa_rendering oa_sfprovider oa_sfbrowse oa_deployment oa_deploymenttest oa_deployment_ui oa_frame_status oa_gallery oa_graphic oa_security oa_crypto_sax oa_crypto oa_csax oa_wrapper oa_script oa_smarttags oa_report oa_reportins oa_reportmeta oa_rdf oa_oooimprovement oa_office oa_prestextfield oa_starme oa_script_vba NULL
diff --git a/offapi/prj/d.lst b/offapi/prj/d.lst
index a271a7159130..ab0e4eb7a293 100644
--- a/offapi/prj/d.lst
+++ b/offapi/prj/d.lst
@@ -110,12 +110,6 @@ mkdir: %COMMON_DEST%\idl%_EXT%\com\sun\star\xml\sax
mkdir: %COMMON_DEST%\idl%_EXT%\com\sun\star\xml\wrapper
mkdir: %COMMON_DEST%\idl%_EXT%\com\sun\star\xml\xpath
mkdir: %COMMON_DEST%\idl%_EXT%\com\sun\star\xsd
-mkdir: %COMMON_DEST%\idl%_EXT%\drafts
-mkdir: %COMMON_DEST%\idl%_EXT%\drafts\com
-mkdir: %COMMON_DEST%\idl%_EXT%\drafts\com\sun
-mkdir: %COMMON_DEST%\idl%_EXT%\drafts\com\sun\star
-mkdir: %COMMON_DEST%\idl%_EXT%\drafts\com\sun\star\form
-
..\%__SRC%\ucr\offapi.db %_DEST%\bin%_EXT%\offapi.rdb
..\%__SRC%\ucrdoc\offapi_doc.db %_DEST%\bin%_EXT%\offapi_doc.rdb
@@ -228,5 +222,3 @@ mkdir: %COMMON_DEST%\idl%_EXT%\drafts\com\sun\star\form
..\com\sun\star\xml\wrapper\*.idl %COMMON_DEST%\idl%_EXT%\com\sun\star\xml\wrapper
..\com\sun\star\xml\xpath\*.idl %COMMON_DEST%\idl%_EXT%\com\sun\star\xml\xpath
..\com\sun\star\xsd\*.idl %COMMON_DEST%\idl%_EXT%\com\sun\star\xsd
-
-..\drafts\com\sun\star\form\*.idl %COMMON_DEST%\idl%_EXT%\drafts\com\sun\star\form
diff --git a/offapi/type_reference/typelibrary_history.txt b/offapi/type_reference/typelibrary_history.txt
index 16745ab9f7eb..a678ca7d6a7d 100644
--- a/offapi/type_reference/typelibrary_history.txt
+++ b/offapi/type_reference/typelibrary_history.txt
@@ -158,7 +158,10 @@
Update reference type library with the version of OOo 3.2.1. The new
reference type library is taken from the release source tree OOO320 m19.
+11/09/10 (JSC): TaskID=i114887
+ remove drafts module from reference rdb. The odl drafts type are not used
+ and i cleaned up the module and the type library.
+
01/28/11 (JSC): TaskID=116682
Update css.awt.UnoControlDialog to reflect the supported XDialog2 interface
additionally to XDialog
-
diff --git a/offapi/type_reference/types.rdb b/offapi/type_reference/types.rdb
index 02cd79c9eb4f..1f9d5aea0fb8 100644
--- a/offapi/type_reference/types.rdb
+++ b/offapi/type_reference/types.rdb
Binary files differ
diff --git a/offapi/util/makefile.mk b/offapi/util/makefile.mk
index ae4558499e37..f61fa6c4ce9e 100644
--- a/offapi/util/makefile.mk
+++ b/offapi/util/makefile.mk
@@ -133,7 +133,6 @@ UNOIDLDBFILES= \
$(UCR)$/cssgallery.db \
$(UCR)$/cssxsd.db \
$(UCR)$/cssinspection.db \
- $(UCR)$/dcssform.db \
$(UCR)$/xsec-security.db \
$(UCR)$/xsec-crypto.db \
$(UCR)$/xsec-csax.db \
diff --git a/registry/tools/checksingleton.cxx b/registry/tools/checksingleton.cxx
index 8f470bee4da8..502be9638c44 100644
--- a/registry/tools/checksingleton.cxx
+++ b/registry/tools/checksingleton.cxx
@@ -29,297 +29,150 @@
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_registry.hxx"
-#include <stdio.h>
-#include <string.h>
-
#include "registry/registry.hxx"
#include "registry/reflread.hxx"
-#include <rtl/ustring.hxx>
-#include <rtl/alloc.h>
-#include <osl/process.h>
-#include <osl/diagnose.h>
-#include <osl/thread.h>
-#include <osl/file.hxx>
-
-#ifdef SAL_UNX
-#define SEPARATOR '/'
-#else
-#define SEPARATOR '\\'
-#endif
+#include "fileurl.hxx"
+#include "options.hxx"
-using namespace ::rtl;
-using namespace ::osl;
+#include "rtl/ustring.hxx"
+#include "osl/diagnose.h"
-sal_Bool isFileUrl(const OString& fileName)
-{
- if (fileName.indexOf("file://") == 0 )
- return sal_True;
- return sal_False;
-}
-
-OUString convertToFileUrl(const OString& fileName)
-{
- if ( isFileUrl(fileName) )
- {
- return OStringToOUString(fileName, osl_getThreadTextEncoding());
- }
+#include <stdio.h>
+#include <string.h>
- OUString uUrlFileName;
- OUString uFileName(fileName.getStr(), fileName.getLength(), osl_getThreadTextEncoding());
- if ( fileName.indexOf('.') == 0 || fileName.indexOf(SEPARATOR) < 0 )
- {
- OUString uWorkingDir;
- if (osl_getProcessWorkingDir(&uWorkingDir.pData) != osl_Process_E_None)
- {
- OSL_ASSERT(false);
- }
- if (FileBase::getAbsoluteFileURL(uWorkingDir, uFileName, uUrlFileName)
- != FileBase::E_None)
- {
- OSL_ASSERT(false);
- }
- } else
- {
- if (FileBase::getFileURLFromSystemPath(uFileName, uUrlFileName)
- != FileBase::E_None)
- {
- OSL_ASSERT(false);
- }
- }
+#include <vector>
+#include <string>
- return uUrlFileName;
-}
+using namespace rtl;
+using namespace registry::tools;
#define U2S( s ) \
OUStringToOString(s, RTL_TEXTENCODING_UTF8).getStr()
#define S2U( s ) \
OStringToOUString(s, RTL_TEXTENCODING_UTF8)
-struct LessString
-{
- sal_Bool operator()(const OUString& str1, const OUString& str2) const
- {
- return (str1 < str2);
- }
-};
-
-class Options
+class Options_Impl : public Options
{
public:
- Options()
- : m_bForceOutput(sal_False)
- {}
- ~Options()
+ explicit Options_Impl(char const * program)
+ : Options (program), m_bForceOutput(false)
{}
- sal_Bool initOptions(int ac, char* av[], sal_Bool bCmdFile=sal_False);
-
- OString prepareHelp();
- OString prepareVersion();
-
- const OString& getProgramName()
- { return m_program; }
- const OString& getIndexReg()
+ std::string const & getIndexReg() const
{ return m_indexRegName; }
- const OString& getTypeReg()
+ std::string const & getTypeReg() const
{ return m_typeRegName; }
- sal_Bool hasBase()
- { return m_base.getLength() > 0; }
- const OString& getBase()
+ bool hasBase() const
+ { return (m_base.getLength() > 0); }
+ const OString & getBase() const
{ return m_base; }
- sal_Bool forceOutput()
+ bool forceOutput() const
{ return m_bForceOutput; }
+
protected:
- OString m_program;
- OString m_indexRegName;
- OString m_typeRegName;
+ virtual void printUsage_Impl() const;
+ virtual bool initOptions_Impl (std::vector< std::string > & rArgs);
+
+ std::string m_indexRegName;
+ std::string m_typeRegName;
OString m_base;
- sal_Bool m_bForceOutput;
+ bool m_bForceOutput;
};
-sal_Bool Options::initOptions(int ac, char* av[], sal_Bool bCmdFile)
+// virtual
+void Options_Impl::printUsage_Impl() const
{
- sal_Bool bRet = sal_True;
- sal_uInt16 i=0;
+ std::string const & rProgName = getProgramName();
+ fprintf(stderr,
+ "Usage: %s -r<filename> -o<filename> [-options] | @<filename>\n", rProgName.c_str()
+ );
+ fprintf(stderr,
+ " -o<filename> = filename specifies the name of the new singleton index registry.\n"
+ " -r<filename> = filename specifies the name of the type registry.\n"
+ " @<filename> = filename specifies a command file.\n"
+ "Options:\n"
+ " -b<name> = name specifies the name of a start key. The types will be searched\n"
+ " under this key in the type registry.\n"
+ " -f = force the output of all found singletons.\n"
+ " -h|-? = print this help message and exit.\n"
+ );
+ fprintf(stderr,
+ "\n%s Version 1.0\n\n", rProgName.c_str()
+ );
+}
- if (!bCmdFile)
+// virtual
+bool Options_Impl::initOptions_Impl(std::vector< std::string > & rArgs)
+{
+ std::vector< std::string >::const_iterator first = rArgs.begin(), last = rArgs.end();
+ for (; first != last; ++first)
{
- bCmdFile = sal_True;
-
- m_program = av[0];
-
- if (ac < 2)
+ std::string option (*first);
+ if ((*first)[0] != '-')
{
- fprintf(stderr, "%s", prepareHelp().getStr());
- bRet = sal_False;
+ return badOption("invalid", option.c_str());
}
-
- i = 1;
- } else
- {
- i = 0;
- }
-
- char *s=NULL;
- for (; i < ac; i++)
- {
- if (av[i][0] == '-')
+ switch ((*first)[1])
{
- switch (av[i][1])
+ case 'r':
+ case 'R':
{
- case 'r':
- case 'R':
- if (av[i][2] == '\0')
- {
- if (i < ac - 1 && av[i+1][0] != '-')
- {
- i++;
- s = av[i];
- } else
- {
- fprintf(stderr, "%s: invalid option '%s'\n", m_program.getStr(), av[i]);
- bRet = sal_False;
- break;
- }
- } else
- {
- s = av[i] + 2;
- }
- m_typeRegName = OString(s);
- break;
- case 'o':
- case 'O':
- if (av[i][2] == '\0')
- {
- if (i < ac - 1 && av[i+1][0] != '-')
- {
- i++;
- s = av[i];
- } else
- {
- fprintf(stderr, "%s: invalid option '%s'\n", m_program.getStr(), av[i]);
- bRet = sal_False;
- break;
- }
- } else
- {
- s = av[i] + 2;
- }
- m_indexRegName = OString(s);
- break;
- case 'b':
- case 'B':
- if (av[i][2] == '\0')
- {
- if (i < ac - 1 && av[i+1][0] != '-')
- {
- i++;
- s = av[i];
- } else
- {
- fprintf(stderr, "%s: invalid option '%s'\n", m_program.getStr(), av[i]);
- bRet = sal_False;
- break;
- }
- } else
- {
- s = av[i] + 2;
- }
- m_base = OString(s);
- break;
- case 'f':
- case 'F':
- if (av[i][2] != '\0')
- {
- fprintf(stderr, "%s: invalid option '%s'\n", m_program.getStr(), av[i]);
- bRet = sal_False;
- }
- m_bForceOutput = sal_True;
- break;
- case 'h':
- case '?':
- if (av[i][2] != '\0')
- {
- fprintf(stderr, "%s: invalid option '%s'\n", m_program.getStr(), av[i]);
- bRet = sal_False;
- } else
- {
- fprintf(stdout, "%s", prepareHelp().getStr());
- exit(0);
- }
- break;
- default:
- fprintf(stderr, "%s: unknown option '%s'\n", m_program.getStr(), av[i]);
- bRet = sal_False;
- break;
+ if (!((++first != last) && ((*first)[0] != '-')))
+ {
+ return badOption("invalid", option.c_str());
+ }
+ m_typeRegName = OString((*first).c_str(), (*first).size());
+ break;
}
- } else
- {
- if (av[i][0] == '@')
+ case 'o':
+ case 'O':
{
- FILE* cmdFile = fopen(av[i]+1, "r");
- if( cmdFile == NULL )
- {
- fprintf(stderr, "%s", prepareHelp().getStr());
- bRet = sal_False;
- } else
+ if (!((++first != last) && ((*first)[0] != '-')))
{
- int rargc=0;
- char* rargv[512];
- char buffer[512];
-
- while ( fscanf(cmdFile, "%s", buffer) != EOF )
- {
- rargv[rargc]= strdup(buffer);
- rargc++;
- }
- fclose(cmdFile);
-
- bRet = initOptions(rargc, rargv, bCmdFile);
-
- for (long j=0; j < rargc; j++)
- {
- free(rargv[j]);
- }
+ return badOption("invalid", option.c_str());
+ }
+ m_indexRegName = (*first);
+ break;
+ }
+ case 'b':
+ case 'B':
+ {
+ if (!((++first != last) && ((*first)[0] != '-')))
+ {
+ return badOption("invalid", option.c_str());
+ }
+ m_base = OString((*first).c_str(), (*first).size());
+ break;
+ }
+ case 'f':
+ case 'F':
+ {
+ if ((*first).size() > 2)
+ {
+ return badOption("invalid", option.c_str());
}
- } else
+ m_bForceOutput = sal_True;
+ break;
+ }
+ case 'h':
+ case '?':
{
- fprintf(stderr, "%s: unknown option '%s'\n", m_program.getStr(), av[i]);
- bRet = sal_False;
+ if ((*first).size() > 2)
+ {
+ return badOption("invalid", option.c_str());
+ }
+ return printUsage();
+ // break; // unreachable
}
+ default:
+ return badOption("unknown", option.c_str());
+ // break; // unreachable
}
}
-
- return bRet;
-}
-
-OString Options::prepareHelp()
-{
- OString help("\nusing: ");
- help += m_program + " -r<filename> -o<filename> [-options] | @<filename>\n";
- help += " -o<filename> = filename specifies the name of the new singleton index registry.\n";
- help += " -r<filename> = filename specifies the name of the type registry.\n";
- help += " @<filename> = filename specifies a command file.\n";
- help += "Options:\n";
- help += " -b<name> = name specifies the name of a start key. The types will be searched\n";
- help += " under this key in the type registry.\n";
- help += " -f = force the output of all found singletons.\n";
- help += " -h|-? = print this help message and exit.\n";
- help += prepareVersion();
-
- return help;
+ return true;
}
-OString Options::prepareVersion()
-{
- OString version("\nSun Microsystems (R) ");
- version += m_program + " Version 1.0\n\n";
- return version;
-}
-
-static Options options;
-
-static sal_Bool checkSingletons(RegistryKey& singletonKey, RegistryKey& typeKey)
+static sal_Bool checkSingletons(Options_Impl const & options, RegistryKey& singletonKey, RegistryKey& typeKey)
{
RegValueType valueType = RG_VALUETYPE_NOT_DEFINED;
sal_uInt32 size = 0;
@@ -327,24 +180,22 @@ static sal_Bool checkSingletons(RegistryKey& singletonKey, RegistryKey& typeKey)
sal_Bool bRet = sal_False;
RegError e = typeKey.getValueInfo(tmpName, &valueType, &size);
-
- if ( e != REG_VALUE_NOT_EXISTS && e != REG_INVALID_VALUE && valueType == RG_VALUETYPE_BINARY)
+ if ((e != REG_VALUE_NOT_EXISTS) && (e != REG_INVALID_VALUE) && (valueType == RG_VALUETYPE_BINARY))
{
- RegistryKey entryKey;
- RegValue value = rtl_allocateMemory(size);
-
- typeKey.getValue(tmpName, value);
-
- RegistryTypeReader reader((sal_uInt8*)value, size, sal_False);
+ std::vector< sal_uInt8 > value(size);
+ typeKey.getValue(tmpName, &value[0]); // @@@ broken api: write to buffer w/o buffer size.
+ RegistryTypeReader reader(&value[0], value.size(), sal_False);
if ( reader.isValid() && reader.getTypeClass() == RT_TYPE_SINGLETON )
{
- OUString singletonName = reader.getTypeName().replace('/', '.');
+ RegistryKey entryKey;
+ OUString singletonName = reader.getTypeName().replace('/', '.');
if ( singletonKey.createKey(singletonName, entryKey) )
{
fprintf(stderr, "%s: could not create SINGLETONS entry for \"%s\"\n",
- options.getProgramName().getStr(), U2S( singletonName ));
- } else
+ options.getProgramName().c_str(), U2S( singletonName ));
+ }
+ else
{
bRet = sal_True;
OUString value2 = reader.getSuperTypeName();
@@ -353,30 +204,26 @@ static sal_Bool checkSingletons(RegistryKey& singletonKey, RegistryKey& typeKey)
(RegValue)value2.getStr(), sizeof(sal_Unicode)* (value2.getLength()+1)) )
{
fprintf(stderr, "%s: could not create data entry for singleton \"%s\"\n",
- options.getProgramName().getStr(), U2S( singletonName ));
+ options.getProgramName().c_str(), U2S( singletonName ));
}
if ( options.forceOutput() )
{
fprintf(stderr, "%s: create SINGLETON entry for \"%s\" -> \"%s\"\n",
- options.getProgramName().getStr(), U2S( singletonName ), U2S(value2));
+ options.getProgramName().c_str(), U2S( singletonName ), U2S(value2));
}
}
}
-
- rtl_freeMemory(value);
}
RegistryKeyArray subKeys;
-
typeKey.openSubKeys(tmpName, subKeys);
sal_uInt32 length = subKeys.getLength();
- RegistryKey elementKey;
for (sal_uInt32 i = 0; i < length; i++)
{
- elementKey = subKeys.getElement(i);
- if ( checkSingletons(singletonKey, elementKey) )
+ RegistryKey elementKey = subKeys.getElement(i);
+ if ( checkSingletons(options, singletonKey, elementKey) )
{
bRet = sal_True;
}
@@ -390,69 +237,85 @@ int main( int argc, char * argv[] )
int _cdecl main( int argc, char * argv[] )
#endif
{
- if ( !options.initOptions(argc, argv) )
+ std::vector< std::string > args;
+ for (int i = 1; i < argc; i++)
{
- exit(1);
+ int result = Options::checkArgument(args, argv[i], strlen(argv[i]));
+ if (result != 0)
+ {
+ // failure.
+ return (result);
+ }
}
- OUString indexRegName( convertToFileUrl(options.getIndexReg()) );
- OUString typeRegName( convertToFileUrl(options.getTypeReg()) );
+ Options_Impl options(argv[0]);
+ if (!options.initOptions(args))
+ {
+ options.printUsage();
+ return (1);
+ }
+ OUString indexRegName( convertToFileUrl(options.getIndexReg().c_str(), options.getIndexReg().size()) );
Registry indexReg;
- Registry typeReg;
-
if ( indexReg.open(indexRegName, REG_READWRITE) )
{
if ( indexReg.create(indexRegName) )
{
fprintf(stderr, "%s: open registry \"%s\" failed\n",
- options.getProgramName().getStr(), options.getIndexReg().getStr());
- exit(2);
+ options.getProgramName().c_str(), options.getIndexReg().c_str());
+ return (2);
}
}
+
+ OUString typeRegName( convertToFileUrl(options.getTypeReg().c_str(), options.getTypeReg().size()) );
+ Registry typeReg;
if ( typeReg.open(typeRegName, REG_READONLY) )
{
fprintf(stderr, "%s: open registry \"%s\" failed\n",
- options.getProgramName().getStr(), options.getTypeReg().getStr());
- exit(3);
+ options.getProgramName().c_str(), options.getTypeReg().c_str());
+ return (3);
}
- RegistryKey indexRoot, typeRoot;
+ RegistryKey indexRoot;
if ( indexReg.openRootKey(indexRoot) )
{
fprintf(stderr, "%s: open root key of registry \"%s\" failed\n",
- options.getProgramName().getStr(), options.getIndexReg().getStr());
- exit(4);
+ options.getProgramName().c_str(), options.getIndexReg().c_str());
+ return (4);
}
+
+ RegistryKey typeRoot;
if ( typeReg.openRootKey(typeRoot) )
{
fprintf(stderr, "%s: open root key of registry \"%s\" failed\n",
- options.getProgramName().getStr(), options.getTypeReg().getStr());
- exit(5);
+ options.getProgramName().c_str(), options.getTypeReg().c_str());
+ return (5);
}
- RegistryKey singletonKey, typeKey;
+ RegistryKey typeKey;
if ( options.hasBase() )
{
if ( typeRoot.openKey(S2U(options.getBase()), typeKey) )
{
fprintf(stderr, "%s: open base key of registry \"%s\" failed\n",
- options.getProgramName().getStr(), options.getTypeReg().getStr());
- exit(6);
+ options.getProgramName().c_str(), options.getTypeReg().c_str());
+ return (6);
}
- } else
+ }
+ else
{
typeKey = typeRoot;
}
+ RegistryKey singletonKey;
if ( indexRoot.createKey(OUString(RTL_CONSTASCII_USTRINGPARAM("SINGLETONS")), singletonKey) )
{
fprintf(stderr, "%s: open/create SINGLETONS key of registry \"%s\" failed\n",
- options.getProgramName().getStr(), options.getIndexReg().getStr());
- exit(7);
+ options.getProgramName().c_str(), options.getIndexReg().c_str());
+ return (7);
}
- sal_Bool bSingletonsExist = checkSingletons(singletonKey, typeKey);
+ sal_Bool bSingletonsExist = checkSingletons(options, singletonKey, typeKey);
indexRoot.releaseKey();
typeRoot.releaseKey();
@@ -461,25 +324,24 @@ int _cdecl main( int argc, char * argv[] )
if ( indexReg.close() )
{
fprintf(stderr, "%s: closing registry \"%s\" failed\n",
- options.getProgramName().getStr(), options.getIndexReg().getStr());
- exit(9);
+ options.getProgramName().c_str(), options.getIndexReg().c_str());
+ return (9);
}
if ( !bSingletonsExist )
{
if ( indexReg.destroy(OUString()) )
{
fprintf(stderr, "%s: destroy registry \"%s\" failed\n",
- options.getProgramName().getStr(), options.getIndexReg().getStr());
- exit(10);
+ options.getProgramName().c_str(), options.getIndexReg().c_str());
+ return (10);
}
}
if ( typeReg.close() )
{
fprintf(stderr, "%s: closing registry \"%s\" failed\n",
- options.getProgramName().getStr(), options.getTypeReg().getStr());
- exit(11);
+ options.getProgramName().c_str(), options.getTypeReg().c_str());
+ return (11);
}
}
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ \ No newline at end of file
diff --git a/registry/tools/fileurl.cxx b/registry/tools/fileurl.cxx
new file mode 100644
index 000000000000..e3561888c674
--- /dev/null
+++ b/registry/tools/fileurl.cxx
@@ -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.
+ *
+ ************************************************************************/
+
+#include "fileurl.hxx"
+
+#include "rtl/ustring.hxx"
+#include "osl/diagnose.h"
+#include "osl/file.hxx"
+#include "osl/process.h"
+#include "osl/thread.h"
+
+#include <string.h>
+
+#ifdef SAL_UNX
+#define SEPARATOR '/'
+#else
+#define SEPARATOR '\\'
+#endif
+
+using rtl::OUString;
+using osl::FileBase;
+
+namespace registry
+{
+namespace tools
+{
+
+OUString convertToFileUrl(char const * filename, size_t length)
+{
+ OUString const uFileName(filename, length, osl_getThreadTextEncoding());
+ if (strncmp(filename, "file://", 7) == 0)
+ {
+ // already a FileUrl.
+ return uFileName;
+ }
+
+ OUString uFileUrl;
+ if (length > 0)
+ {
+ if ((filename[0] == '.') || (filename[0] != SEPARATOR))
+ {
+ // relative path name.
+ OUString uWorkingDir;
+ if (osl_getProcessWorkingDir(&uWorkingDir.pData) != osl_Process_E_None)
+ {
+ OSL_ASSERT(false);
+ }
+ if (FileBase::getAbsoluteFileURL(uWorkingDir, uFileName, uFileUrl) != FileBase::E_None)
+ {
+ OSL_ASSERT(false);
+ }
+ }
+ else
+ {
+ // absolute path name.
+ if (FileBase::getFileURLFromSystemPath(uFileName, uFileUrl) != FileBase::E_None)
+ {
+ OSL_ASSERT(false);
+ }
+ }
+ }
+ return uFileUrl;
+}
+
+} // namespace tools
+} // namespace registry
diff --git a/offapi/drafts/com/sun/star/form/IncompatibleTypesException.idl b/registry/tools/fileurl.hxx
index 3192d80c0d2f..bbaa218f32e6 100644
--- a/offapi/drafts/com/sun/star/form/IncompatibleTypesException.idl
+++ b/registry/tools/fileurl.hxx
@@ -24,34 +24,20 @@
* for a copy of the LGPLv3 License.
*
************************************************************************/
-#ifndef __drafts_com_sun_star_form_IncompatibleTypesException_idl__
-#define __drafts_com_sun_star_form_IncompatibleTypesException_idl__
-#ifndef __com_sun_star_uno_Exception_idl__
-#include <com/sun/star/uno/Exception.idl>
-#endif
+#ifndef INCLUDED_REGISTRY_TOOLS_FILEURL_HXX
+#define INCLUDED_REGISTRY_TOOLS_FILEURL_HXX
+#include "rtl/ustring.hxx"
-//=============================================================================
-
-module drafts { module com { module sun { module star { module form {
-
-//=============================================================================
-
-/** thrown to indicate that the types of an <type>XValueBinding</type> and
- an <type>XBindableValue</type> are incompatible
-
- @deprecated
- This exception is superseded by <type scope="com::sun::star::form::binding">IncompatibleTypesException</type>
-*/
-exception IncompatibleTypesException: com::sun::star::uno::Exception
+namespace registry
+{
+namespace tools
{
-};
-
-//=============================================================================
-}; }; }; }; };
+rtl::OUString convertToFileUrl(char const * filename, size_t length);
-//=============================================================================
+} // namespace tools
+} // namespace registry
-#endif
+#endif /* INCLUDED_REGISTRY_TOOLS_FILEURL_HXX */
diff --git a/registry/tools/makefile.mk b/registry/tools/makefile.mk
index bb7d448b86e6..06ca753ff044 100644
--- a/registry/tools/makefile.mk
+++ b/registry/tools/makefile.mk
@@ -43,7 +43,7 @@ ENABLE_EXCEPTIONS := TRUE
CDEFS += -DDLL_VERSION=$(EMQ)"$(DLLPOSTFIX)$(EMQ)"
APP1TARGET= $(TARGET)
-APP1OBJS= $(OBJ)$/regmerge.obj
+APP1OBJS= $(OBJ)$/regmerge.obj $(OBJ)/fileurl.obj $(OBJ)/options.obj
APP1RPATH= UREBIN
APP1STDLIBS=\
@@ -51,7 +51,7 @@ APP1STDLIBS=\
$(REGLIB)
APP2TARGET= regview
-APP2OBJS= $(OBJ)$/regview.obj
+APP2OBJS= $(OBJ)$/regview.obj $(OBJ)/fileurl.obj
APP2RPATH= UREBIN
APP2STDLIBS=\
@@ -59,7 +59,7 @@ APP2STDLIBS=\
$(REGLIB)
APP3TARGET= regcompare
-APP3OBJS= $(OBJ)$/regcompare.obj
+APP3OBJS= $(OBJ)$/regcompare.obj $(OBJ)/fileurl.obj $(OBJ)/options.obj
APP3RPATH= SDK
APP3STDLIBS=\
@@ -68,13 +68,21 @@ APP3STDLIBS=\
$(REGLIB)
APP4TARGET= checksingleton
-APP4OBJS= $(OBJ)$/checksingleton.obj
+APP4OBJS= $(OBJ)$/checksingleton.obj $(OBJ)/fileurl.obj $(OBJ)/options.obj
APP4STDLIBS=\
$(SALLIB) \
$(SALHELPERLIB) \
$(REGLIB)
-OBJFILES = $(APP1OBJS) $(APP2OBJS) $(APP3OBJS) $(APP4OBJS)
+APP5TARGET= rdbedit
+APP5OBJS= $(OBJ)$/rdbedit.obj
+
+APP5STDLIBS=\
+ $(SALLIB) \
+ $(SALHELPERLIB) \
+ $(REGLIB)
+
+OBJFILES = $(APP1OBJS) $(APP2OBJS) $(APP3OBJS) $(APP4OBJS) $(APP5OBJS)
.INCLUDE : target.mk
diff --git a/registry/tools/options.cxx b/registry/tools/options.cxx
new file mode 100644
index 000000000000..d851825ebfb6
--- /dev/null
+++ b/registry/tools/options.cxx
@@ -0,0 +1,153 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#include "options.hxx"
+
+#include "osl/diagnose.h"
+
+#include <stdio.h>
+#include <string.h>
+
+namespace registry
+{
+namespace tools
+{
+
+Options::Options (char const * program)
+ : m_program (program)
+{}
+
+Options::~Options()
+{}
+
+// static
+bool Options::checkArgument(std::vector< std::string> & rArgs, char const * arg, size_t len)
+{
+ bool result = ((arg != 0) && (len > 0));
+ OSL_PRECOND(result, "registry::tools::Options::checkArgument(): invalid arguments");
+ if (result)
+ {
+ OSL_TRACE("registry::tools:Options::checkArgument(): \"%s\"", arg);
+ switch (arg[0])
+ {
+ case '@':
+ if ((result = (len > 1)) == true)
+ {
+ // "@<cmdfile>"
+ result = Options::checkCommandFile(rArgs, &(arg[1]));
+ }
+ break;
+ case '-':
+ if ((result = (len > 1)) == true)
+ {
+ // "-<option>"
+ std::string option (&(arg[0]), 2);
+ rArgs.push_back(option);
+ if (len > 2)
+ {
+ // "-<option><param>"
+ std::string param(&(arg[2]), len - 2);
+ rArgs.push_back(param);
+ }
+ }
+ break;
+ default:
+ rArgs.push_back(std::string(arg, len));
+ break;
+ }
+ }
+ return (result);
+}
+
+// static
+bool Options::checkCommandFile(std::vector< std::string > & rArgs, char const * filename)
+{
+ FILE * fp = fopen(filename, "r");
+ if (fp == 0)
+ {
+ fprintf(stderr, "ERROR: Can't open command file \"%s\"\n", filename);
+ return (false);
+ }
+
+ std::string buffer;
+ buffer.reserve(256);
+
+ bool quoted = false;
+ int c = EOF;
+ while ((c = fgetc(fp)) != EOF)
+ {
+ switch(c)
+ {
+ case '\"':
+ quoted = !quoted;
+ break;
+ case ' ':
+ case '\t':
+ case '\r':
+ case '\n':
+ if (!quoted)
+ {
+ if (!buffer.empty())
+ {
+ if (!checkArgument(rArgs, buffer.c_str(), buffer.size()))
+ {
+ // failure.
+ (void) fclose(fp);
+ return false;
+ }
+ buffer.clear();
+ }
+ break;
+ }
+ default:
+ // quoted white-space fall through
+ buffer.push_back(sal::static_int_cast<char>(c));
+ break;
+ }
+ }
+ return (fclose(fp) == 0);
+}
+
+bool Options::initOptions (std::vector< std::string > & rArgs)
+{
+ return initOptions_Impl (rArgs);
+}
+
+bool Options::badOption (char const * reason, char const * option) const
+{
+ (void) fprintf(stderr, "%s: %s option '%s'\n", m_program.c_str(), reason, option);
+ return printUsage();
+}
+
+bool Options::printUsage() const
+{
+ printUsage_Impl();
+ return false;
+}
+
+} // namespace tools
+} // namespace registry
diff --git a/registry/tools/options.hxx b/registry/tools/options.hxx
new file mode 100644
index 000000000000..8e4c97877e3b
--- /dev/null
+++ b/registry/tools/options.hxx
@@ -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 INCLUDED_REGISTRY_TOOLS_OPTIONS_HXX
+#define INCLUDED_REGISTRY_TOOLS_OPTIONS_HXX
+
+#include <string>
+#include <vector>
+
+namespace registry
+{
+namespace tools
+{
+class Options
+{
+ std::string m_program;
+
+ Options (Options const &);
+ Options & operator= (Options const &);
+
+public:
+ explicit Options (char const * program);
+ virtual ~Options();
+
+ static bool checkArgument (std::vector< std::string > & rArgs, char const * arg, size_t len);
+
+ bool initOptions (std::vector< std::string > & rArgs);
+ bool badOption (char const * reason, char const * option) const;
+
+ std::string const & getProgramName() const { return m_program; }
+ bool printUsage() const;
+
+protected:
+ static bool checkCommandFile(std::vector< std::string > & rArgs, char const * filename);
+
+ virtual bool initOptions_Impl(std::vector< std::string > & rArgs) = 0;
+ virtual void printUsage_Impl() const = 0;
+};
+
+} // namespace tools
+} // namespace registry
+
+#endif /* INCLUDED_REGISTRY_TOOLS_OPTIONS_HXX */
diff --git a/registry/tools/rdbedit.cxx b/registry/tools/rdbedit.cxx
new file mode 100644
index 000000000000..c2b3d6a3dcf3
--- /dev/null
+++ b/registry/tools/rdbedit.cxx
@@ -0,0 +1,318 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_registry.hxx"
+
+#include <stdio.h>
+#include <string.h>
+
+#include "registry/registry.hxx"
+#include "registry/reflread.hxx"
+#include <rtl/ustring.hxx>
+#include <rtl/alloc.h>
+#include <osl/process.h>
+#include <osl/diagnose.h>
+#include <osl/thread.h>
+#include <osl/file.hxx>
+
+#ifdef SAL_UNX
+#define SEPARATOR '/'
+#else
+#define SEPARATOR '\\'
+#endif
+
+using namespace ::rtl;
+using namespace ::osl;
+
+sal_Bool isFileUrl(const OString& fileName)
+{
+ if (fileName.indexOf("file://") == 0 )
+ return sal_True;
+ return sal_False;
+}
+
+OUString convertToFileUrl(const OString& fileName)
+{
+ if ( isFileUrl(fileName) )
+ {
+ return OStringToOUString(fileName, osl_getThreadTextEncoding());
+ }
+
+ OUString uUrlFileName;
+ OUString uFileName(fileName.getStr(), fileName.getLength(), osl_getThreadTextEncoding());
+ if ( fileName.indexOf('.') == 0 || fileName.indexOf(SEPARATOR) < 0 )
+ {
+ OUString uWorkingDir;
+ if (osl_getProcessWorkingDir(&uWorkingDir.pData) != osl_Process_E_None)
+ {
+ OSL_ASSERT(false);
+ }
+ if (FileBase::getAbsoluteFileURL(uWorkingDir, uFileName, uUrlFileName)
+ != FileBase::E_None)
+ {
+ OSL_ASSERT(false);
+ }
+ } else
+ {
+ if (FileBase::getFileURLFromSystemPath(uFileName, uUrlFileName)
+ != FileBase::E_None)
+ {
+ OSL_ASSERT(false);
+ }
+ }
+
+ return uUrlFileName;
+}
+
+#define U2S( s ) \
+ OUStringToOString(s, RTL_TEXTENCODING_UTF8).getStr()
+#define S2U( s ) \
+ OStringToOUString(s, RTL_TEXTENCODING_UTF8)
+
+struct LessString
+{
+ sal_Bool operator()(const OUString& str1, const OUString& str2) const
+ {
+ return (str1 < str2);
+ }
+};
+
+enum Command {
+ DELETEKEY
+};
+
+class Options
+{
+public:
+ Options()
+ : m_bVerbose(false)
+ {}
+ ~Options()
+ {}
+
+ bool initOptions(int ac, char* av[]);
+
+ OString prepareHelp();
+ OString prepareVersion();
+
+ const OString& getProgramName()
+ { return m_program; }
+ const OString& getTypeReg()
+ { return m_typeRegName; }
+ const OString& getKeyName()
+ { return m_keyName; }
+ const Command getCommand()
+ { return m_command; }
+ bool verbose()
+ { return m_bVerbose; }
+protected:
+ OString m_program;
+ OString m_typeRegName;
+ OString m_keyName;
+ Command m_command;
+ bool m_bVerbose;
+};
+
+bool Options::initOptions(int ac, char* av[])
+{
+ bool bRet = true;
+ sal_uInt16 i=1;
+
+ if (ac < 2)
+ {
+ fprintf(stderr, "%s", prepareHelp().getStr());
+ bRet = sal_False;
+ }
+
+ m_program = av[0];
+ sal_Int32 index = -1;
+ if ((index=m_program.lastIndexOf(SEPARATOR)) > 0)
+ m_program = av[0]+index+1;
+
+ char *s=NULL;
+ for (; i < ac; i++)
+ {
+ if (av[i][0] == '-')
+ {
+ switch (av[i][1])
+ {
+ case 'r':
+ case 'R':
+ if (av[i][2] == '\0')
+ {
+ if (i < ac - 1 && av[i+1][0] != '-')
+ {
+ i++;
+ s = av[i];
+ } else
+ {
+ fprintf(stderr, "%s: invalid option '%s'\n", m_program.getStr(), av[i]);
+ bRet = sal_False;
+ break;
+ }
+ } else
+ {
+ s = av[i] + 2;
+ }
+ m_typeRegName = OString(s);
+ break;
+ case 'd':
+ case 'D':
+ if (av[i][2] == '\0')
+ {
+ if (i < ac - 1 && av[i+1][0] != '-')
+ {
+ i++;
+ s = av[i];
+ } else
+ {
+ fprintf(stderr, "%s: invalid option '%s'\n", m_program.getStr(), av[i]);
+ bRet = sal_False;
+ break;
+ }
+ } else
+ {
+ s = av[i] + 2;
+ }
+ m_keyName = OString(s);
+ break;
+ case 'v':
+ case 'V':
+ if (av[i][2] != '\0')
+ {
+ fprintf(stderr, "%s: invalid option '%s'\n", m_program.getStr(), av[i]);
+ bRet = sal_False;
+ }
+ m_bVerbose = true;
+ break;
+ case 'h':
+ case '?':
+ if (av[i][2] != '\0')
+ {
+ fprintf(stderr, "%s: invalid option '%s'\n", m_program.getStr(), av[i]);
+ bRet = false;
+ } else
+ {
+ fprintf(stdout, "%s", prepareHelp().getStr());
+ exit(0);
+ }
+ break;
+ default:
+ fprintf(stderr, "%s: unknown option '%s'\n", m_program.getStr(), av[i]);
+ bRet = false;
+ break;
+ }
+ } else
+ {
+ fprintf(stderr, "%s: unknown option '%s'\n", m_program.getStr(), av[i]);
+ bRet = false;
+ }
+ }
+
+ return bRet;
+}
+
+OString Options::prepareHelp()
+{
+ OString help("\nusing: ");
+ help += m_program + " -r<filename> <command>\n";
+ help += " -r<filename> = filename specifies the name of the type registry.\n";
+ help += "Commands:\n";
+ help += " -d <keyname> = delete the specified key from the registry. Keyname\n";
+ help += " specifies the name of the key that get deleted.\n";
+ help += " -v = verbose output.\n";
+ help += " -h|-? = print this help message and exit.\n";
+ help += prepareVersion();
+
+ return help;
+}
+
+OString Options::prepareVersion()
+{
+ OString version(m_program);
+ version += " Version 1.0\n\n";
+ return version;
+}
+
+static Options options;
+
+
+#if (defined UNX) || (defined OS2) || (defined __MINGW32__)
+int main( int argc, char * argv[] )
+#else
+int _cdecl main( int argc, char * argv[] )
+#endif
+{
+ if ( !options.initOptions(argc, argv) )
+ {
+ exit(1);
+ }
+
+ OUString typeRegName( convertToFileUrl(options.getTypeReg()) );
+
+ Registry typeReg;
+
+ if ( typeReg.open(typeRegName, REG_READWRITE) )
+ {
+ fprintf(stderr, "%s: open registry \"%s\" failed\n",
+ options.getProgramName().getStr(), options.getTypeReg().getStr());
+ exit(2);
+ }
+
+ RegistryKey typeRoot;
+ if ( typeReg.openRootKey(typeRoot) )
+ {
+ fprintf(stderr, "%s: open root key of registry \"%s\" failed\n",
+ options.getProgramName().getStr(), options.getTypeReg().getStr());
+ exit(3);
+ }
+
+ if ( options.getCommand() == DELETEKEY )
+ {
+ if ( typeRoot.deleteKey(S2U(options.getKeyName())) )
+ {
+ fprintf(stderr, "%s: delete key \"%s\" of registry \"%s\" failed\n",
+ options.getProgramName().getStr(), options.getKeyName().getStr(), options.getTypeReg().getStr());
+ exit(4);
+ } else {
+ if (options.verbose())
+ fprintf(stderr, "%s: delete key \"%s\" of registry \"%s\"\n",
+ options.getProgramName().getStr(), options.getKeyName().getStr(), options.getTypeReg().getStr());
+ }
+ }
+
+ typeRoot.releaseKey();
+ if ( typeReg.close() )
+ {
+ fprintf(stderr, "%s: closing registry \"%s\" failed\n",
+ options.getProgramName().getStr(), options.getTypeReg().getStr());
+ exit(5);
+ }
+}
+
+
diff --git a/registry/tools/regcompare.cxx b/registry/tools/regcompare.cxx
index c6089d509380..7758c4a74066 100644
--- a/registry/tools/regcompare.cxx
+++ b/registry/tools/regcompare.cxx
@@ -29,409 +29,266 @@
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_registry.hxx"
-#include <stdio.h>
-#include <string.h>
-
-#include <set>
-#include <vector>
#include "registry/registry.hxx"
#include "registry/reader.hxx"
#include "registry/version.h"
+#include "fileurl.hxx"
+#include "options.hxx"
+
#include <rtl/ustring.hxx>
-#include <rtl/alloc.h>
-#include <osl/process.h>
#include <osl/diagnose.h>
-#include <osl/thread.h>
-#include <osl/file.hxx>
-#ifdef SAL_UNX
-#define SEPARATOR '/'
-#else
-#define SEPARATOR '\\'
-#endif
+#include <stdio.h>
+#include <string.h>
-using namespace ::rtl;
-using namespace ::osl;
+#include <set>
+#include <vector>
+#include <string>
-OUString shortName(const OUString& fullName)
-{
- return fullName.copy(fullName.lastIndexOf('/') + 1);
-}
+using namespace rtl;
+using namespace registry::tools;
-sal_Bool isFileUrl(const OString& fileName)
-{
- if (fileName.indexOf("file://") == 0 )
- return sal_True;
- return sal_False;
-}
+typedef std::set< rtl::OUString > StringSet;
-OUString convertToFileUrl(const OString& fileName)
+class Options_Impl : public Options
{
- if ( isFileUrl(fileName) )
- {
- return OStringToOUString(fileName, osl_getThreadTextEncoding());
- }
-
- OUString uUrlFileName;
- OUString uFileName(fileName.getStr(), fileName.getLength(), osl_getThreadTextEncoding());
- if ( fileName.indexOf('.') == 0 || fileName.indexOf(SEPARATOR) < 0 )
- {
- OUString uWorkingDir;
- if (osl_getProcessWorkingDir(&uWorkingDir.pData) != osl_Process_E_None)
- {
- OSL_ASSERT(false);
- }
- if (FileBase::getAbsoluteFileURL(uWorkingDir, uFileName, uUrlFileName)
- != FileBase::E_None)
- {
- OSL_ASSERT(false);
- }
- } else
- {
- if (FileBase::getFileURLFromSystemPath(uFileName, uUrlFileName)
- != FileBase::E_None)
- {
- OSL_ASSERT(false);
- }
- }
+public:
+ explicit Options_Impl(char const * program)
+ : Options(program),
+ m_bFullCheck(false),
+ m_bForceOutput(false),
+ m_bUnoTypeCheck(false),
+ m_checkUnpublished(false)
+ {}
- return uUrlFileName;
-}
+ std::string const & getRegName1() const { return m_regName1; }
+ std::string const & getRegName2() const { return m_regName2; }
-#define U2S( s ) \
- OUStringToOString(s, RTL_TEXTENCODING_UTF8).getStr()
-#define S2U( s ) \
- OStringToOUString(s, RTL_TEXTENCODING_UTF8)
+ bool isStartKeyValid() const { return (m_startKey.getLength() > 0); }
+ OUString const & getStartKey() const { return m_startKey; }
+ bool matchedWithExcludeKey( const OUString& keyName) const;
-struct LessString
-{
- sal_Bool operator()(const OUString& str1, const OUString& str2) const
- {
- return (str1 < str2);
- }
-};
+ bool fullCheck() const { return m_bFullCheck; }
+ bool forceOutput() const { return m_bForceOutput; }
+ bool unoTypeCheck() const { return m_bUnoTypeCheck; }
+ bool checkUnpublished() const { return m_checkUnpublished; }
-typedef ::std::set< OUString > StringSet;
+protected:
+ bool setRegName_Impl(char c, std::string const & param);
-class Options
-{
-public:
- Options()
- : m_bFullCheck(sal_False)
- , m_bForceOutput(sal_False)
- , m_bUnoTypeCheck(sal_False)
- , m_checkUnpublished(false)
- {}
- ~Options()
- {}
+ virtual void printUsage_Impl() const;
+ virtual bool initOptions_Impl (std::vector< std::string > & rArgs);
- sal_Bool initOptions(int ac, char* av[], sal_Bool bCmdFile=sal_False);
-
- OString prepareHelp();
- OString prepareVersion();
-
- const OString& getProgramName()
- { return m_program; }
- const OString& getRegName1()
- { return m_regName1; }
- const OString& getRegName2()
- { return m_regName2; }
- sal_Bool isStartKeyValid()
- { return (m_startKey.getLength() > 0); };
- const OString& getStartKey()
- { return m_startKey; }
- sal_Bool existsExcludeKeys()
- { return !m_excludeKeys.empty(); };
- StringSet& getExcludeKeys()
- { return m_excludeKeys; }
- sal_Bool matchedWithExcludeKey( const OUString& keyName);
- sal_Bool fullCheck()
- { return m_bFullCheck; }
- sal_Bool forceOutput()
- { return m_bForceOutput; }
- sal_Bool unoTypeCheck()
- { return m_bUnoTypeCheck; }
- bool checkUnpublished() const { return m_checkUnpublished; }
-protected:
- OString m_program;
- OString m_regName1;
- OString m_regName2;
- OString m_startKey;
+ std::string m_regName1;
+ std::string m_regName2;
+ OUString m_startKey;
StringSet m_excludeKeys;
- sal_Bool m_bFullCheck;
- sal_Bool m_bForceOutput;
- sal_Bool m_bUnoTypeCheck;
+ bool m_bFullCheck;
+ bool m_bForceOutput;
+ bool m_bUnoTypeCheck;
bool m_checkUnpublished;
};
-sal_Bool Options::initOptions(int ac, char* av[], sal_Bool bCmdFile)
-{
- sal_Bool bRet = sal_True;
- sal_uInt16 i=0;
+#define U2S( s ) OUStringToOString(s, RTL_TEXTENCODING_UTF8).getStr()
- if (!bCmdFile)
- {
- bCmdFile = sal_True;
+inline rtl::OUString makeOUString (std::string const & s)
+{
+ return rtl::OUString(s.c_str(), s.size(), RTL_TEXTENCODING_UTF8, OSTRING_TO_OUSTRING_CVTFLAGS);
+}
- m_program = av[0];
+inline rtl::OUString shortName(rtl::OUString const & fullName)
+{
+ return fullName.copy(fullName.lastIndexOf('/') + 1);
+}
- if (ac < 2)
- {
- fprintf(stdout, "%s", prepareHelp().getStr());
- bRet = sal_False;
- }
+bool Options_Impl::setRegName_Impl(char c, std::string const & param)
+{
+ bool one = (c == '1'), two = (c == '2');
+ if (one)
+ m_regName1 = param;
+ if (two)
+ m_regName2 = param;
+ return (one || two);
+}
- i = 1;
- } else
- {
- i = 0;
- }
+//virtual
+void Options_Impl::printUsage_Impl() const
+{
+ std::string const & rProgName = getProgramName();
+ fprintf(stderr,
+ "Usage: %s -r1<filename> -r2<filename> [-options] | @<filename>\n", rProgName.c_str()
+ );
+ fprintf(stderr,
+ " -r1<filename> = filename specifies the name of the first registry.\n"
+ " -r2<filename> = filename specifies the name of the second registry.\n"
+ " @<filename> = filename specifies a command file.\n"
+ "Options:\n"
+ " -s<name> = name specifies the name of a start key. If no start key\n"
+ " |S<name> is specified the comparison starts with the root key.\n"
+ " -x<name> = name specifies the name of a key which won't be compared. All\n"
+ " |X<name> subkeys won't be compared also. This option can be used more than once.\n"
+ " -f|F = force the detailed output of any diffenrences. Default\n"
+ " is that only the number of differences is returned.\n"
+ " -c|C = make a complete check, that means any differences will be\n"
+ " detected. Default is only a compatibility check that means\n"
+ " only UNO typelibrary entries will be checked.\n"
+ " -t|T = make an UNO type compatiblity check. This means that registry 2\n"
+ " will be checked against registry 1. If a interface in r2 contains\n"
+ " more methods or the methods are in a different order as in r1, r2 is\n"
+ " incompatible to r1. But if a service in r2 supports more properties as\n"
+ " in r1 and the new properties are 'optional' it is compatible.\n"
+ " -u|U = additionally check types that are unpublished in registry 1.\n"
+ " -h|-? = print this help message and exit.\n"
+ );
+ fprintf(stderr,
+ "\n%s Version 1.0\n\n", rProgName.c_str()
+ );
+}
- char *s=NULL;
- for (; i < ac; i++)
+// virtual
+bool Options_Impl::initOptions_Impl (std::vector< std::string > & rArgs)
+{
+ std::vector< std::string >::const_iterator first = rArgs.begin(), last = rArgs.end();
+ for (; first != last; ++first)
{
- if (av[i][0] == '-')
+ if ((*first)[0] != '-')
+ {
+ return badOption("invalid", (*first).c_str());
+ }
+ switch ((*first)[1])
{
- switch (av[i][1])
+ case 'r':
+ case 'R':
{
- case 'r':
- case 'R':
+ if (!((++first != last) && ((*first)[0] != '-')))
{
- sal_Bool bFirst = sal_True;
- if (av[i][2] == '2')
- {
- bFirst = sal_False;
- } else if (av[i][2] != '1')
- {
- fprintf(stdout, "%s: invalid option '%s'\n", m_program.getStr(), av[i]);
- }
- if (av[i][3] == '\0')
- {
- if (i < ac - 1 && av[i+1][0] != '-')
- {
- i++;
- s = av[i];
- } else
- {
- fprintf(stdout, "%s: invalid option '%s'\n", m_program.getStr(), av[i]);
- bRet = sal_False;
- break;
- }
- } else
- {
- s = av[i] + 2;
- }
+ return badOption("invalid", (*first).c_str());
+ }
- if ( bFirst )
- {
- m_regName1 = OString(s);
- } else
+ std::string option(*first), param;
+ if (option.size() == 1)
+ {
+ // "-r<n><space><param>"
+ if (!((++first != last) && ((*first)[0] != '-')))
{
- m_regName2 = OString(s);
+ return badOption("invalid", (*first).c_str());
}
+ param = (*first);
}
- break;
- case 's':
- case 'S':
- if (av[i][2] == '\0')
- {
- if (i < ac - 1 && av[i+1][0] != '-')
- {
- i++;
- s = av[i];
- } else
- {
- fprintf(stdout, "%s: invalid option '%s'\n", m_program.getStr(), av[i]);
- bRet = sal_False;
- break;
- }
- } else
- {
- s = av[i] + 2;
- }
- m_startKey = OString(s);
- break;
- case 'x':
- case 'X':
- if (av[i][2] == '\0')
- {
- if (i < ac - 1 && av[i+1][0] != '-')
- {
- i++;
- s = av[i];
- } else
- {
- fprintf(stdout, "%s: invalid option '%s'\n", m_program.getStr(), av[i]);
- bRet = sal_False;
- break;
- }
- } else
- {
- s = av[i] + 2;
- }
- m_excludeKeys.insert(S2U(s));
- break;
- case 'c':
- case 'C':
- if (av[i][2] != '\0')
- {
- fprintf(stdout, "%s: invalid option '%s'\n", m_program.getStr(), av[i]);
- }
- m_bFullCheck = sal_True;
- break;
- case 'f':
- case 'F':
- if (av[i][2] != '\0')
- {
- fprintf(stdout, "%s: invalid option '%s'\n", m_program.getStr(), av[i]);
- bRet = sal_False;
- }
- m_bForceOutput = sal_True;
- break;
- case 't':
- case 'T':
- if (av[i][2] != '\0')
- {
- fprintf(stdout, "%s: invalid option '%s'\n", m_program.getStr(), av[i]);
- }
- m_bUnoTypeCheck = sal_True;
- break;
- case 'u':
- case 'U':
- if (av[i][2] != '\0')
- {
- fprintf(stdout, "%s: invalid option '%s'\n", m_program.getStr(), av[i]);
- }
- m_checkUnpublished = true;
- break;
- case 'h':
- case '?':
- if (av[i][2] != '\0')
- {
- fprintf(stdout, "%s: invalid option '%s'\n", m_program.getStr(), av[i]);
- bRet = sal_False;
- } else
- {
- fprintf(stdout, "%s", prepareHelp().getStr());
- exit(0);
- }
- break;
- default:
- fprintf(stdout, "%s: unknown option '%s'\n", m_program.getStr(), av[i]);
- bRet = sal_False;
- break;
+ else
+ {
+ // "-r<n><param>"
+ param = std::string(&(option[1]), option.size() - 1);
+ }
+ if (!setRegName_Impl(option[0], param))
+ {
+ return badOption("invalid", option.c_str());
+ }
+ break;
}
- } else
- {
- if (av[i][0] == '@')
+ case 's':
+ case 'S':
{
- FILE* cmdFile = fopen(av[i]+1, "r");
- if( cmdFile == NULL )
- {
- fprintf(stdout, "%s", prepareHelp().getStr());
- bRet = sal_False;
- } else
+ if (!((++first != last) && ((*first)[0] != '-')))
{
- int rargc=0;
- char* rargv[512];
- char buffer[512];
-
- while ( fscanf(cmdFile, "%s", buffer) != EOF )
- {
- rargv[rargc]= strdup(buffer);
- rargc++;
- }
- fclose(cmdFile);
-
- bRet = initOptions(rargc, rargv, bCmdFile);
-
- for (long j=0; j < rargc; j++)
- {
- free(rargv[j]);
- }
+ return badOption("invalid", (*first).c_str());
+ }
+ m_startKey = makeOUString(*first);
+ break;
+ }
+ case 'x':
+ case 'X':
+ {
+ if (!((++first != last) && ((*first)[0] != '-')))
+ {
+ return badOption("invalid", (*first).c_str());
+ }
+ m_excludeKeys.insert(makeOUString(*first));
+ break;
+ }
+ case 'f':
+ case 'F':
+ {
+ if ((*first).size() > 2)
+ {
+ return badOption("invalid", (*first).c_str());
+ }
+ m_bForceOutput = sal_True;
+ break;
+ }
+ case 'c':
+ case 'C':
+ {
+ if ((*first).size() > 2)
+ {
+ return badOption("invalid", (*first).c_str());
+ }
+ m_bFullCheck = sal_True;
+ break;
+ }
+ case 't':
+ case 'T':
+ {
+ if ((*first).size() > 2)
+ {
+ return badOption("invalid", (*first).c_str());
+ }
+ m_bUnoTypeCheck = sal_True;
+ break;
+ }
+ case 'u':
+ case 'U':
+ {
+ if ((*first).size() > 2)
+ {
+ return badOption("invalid", (*first).c_str());
}
- } else
+ m_checkUnpublished = true;
+ break;
+ }
+ case 'h':
+ case '?':
{
- fprintf(stdout, "%s: unknown option '%s'\n", m_program.getStr(), av[i]);
- bRet = sal_False;
+ if ((*first).size() > 2)
+ {
+ return badOption("invalid", (*first).c_str());
+ }
+ return printUsage();
+ // break; // Unreachable
+ }
+ default:
+ {
+ return badOption("unknown", (*first).c_str());
+ // break; // Unreachable
}
}
}
- if ( bRet )
+ if ( m_regName1.size() == 0 )
{
- if ( m_regName1.getLength() == 0 )
- {
- fprintf(stdout, "%s: missing option '-r1'\n", m_program.getStr());
- bRet = sal_False;
- }
- if ( m_regName2.getLength() == 0 )
- {
- fprintf(stdout, "%s: missing option '-r2'\n", m_program.getStr());
- bRet = sal_False;
- }
+ return badOption("missing", "-r1");
}
-
- return bRet;
-}
-
-OString Options::prepareHelp()
-{
- OString help("\nusing: ");
- help += m_program + " -r1<filename> -r2<filename> [-options] | @<filename>\n";
- help += " -r1<filename> = filename specifies the name of the first registry.\n";
- help += " -r2<filename> = filename specifies the name of the second registry.\n";
- help += " @<filename> = filename specifies a command file.\n";
- help += "Options:\n";
- help += " -s<name> = name specifies the name of a start key. If no start key\n";
- help += " |S<name> is specified the comparison starts with the root key.\n";
- help += " -x<name> = name specifies the name of a key which won't be compared. All\n";
- help += " |X<name> subkeys won't be compared also. This option can be used more than once.\n";
- help += " -f|F = force the detailed output of any diffenrences. Default\n";
- help += " is that only the number of differences is returned.\n";
- help += " -c|C = make a complete check, that means any differences will be\n";
- help += " detected. Default is only a compatibility check that means\n";
- help += " only UNO typelibrary entries will be checked.\n";
- help += " -t|T = make an UNO type compatiblity check. This means that registry 2\n";
- help += " will be checked against registry 1. If a interface in r2 contains\n";
- help += " more methods or the methods are in a different order as in r1, r2 is\n";
- help += " incompatible to r1. But if a service in r2 supports more properties as\n";
- help += " in r1 and the new properties are 'optonal' it is compatible.\n";
- help += " -u|U = additionally check types that are unpublished in registry 1.\n";
- help += " -h|-? = print this help message and exit.\n";
- help += prepareVersion();
-
- return help;
-}
-
-OString Options::prepareVersion()
-{
- OString version("\nSun Microsystems (R) ");
- version += m_program + " Version 1.0\n\n";
- return version;
+ if ( m_regName2.size() == 0 )
+ {
+ return badOption("missing", "-r2");
+ }
+ return true;
}
-sal_Bool Options::matchedWithExcludeKey( const OUString& keyName)
+bool Options_Impl::matchedWithExcludeKey( const OUString& keyName) const
{
- if ( m_excludeKeys.empty() )
- return sal_False;
-
- StringSet::const_iterator iter = m_excludeKeys.begin();
- StringSet::const_iterator end = m_excludeKeys.end();
-
- while ( iter != end )
+ if (!m_excludeKeys.empty())
{
- if ( keyName.indexOf(*iter) == 0)
- return sal_True;
-
- ++iter;
+ StringSet::const_iterator first = m_excludeKeys.begin(), last = m_excludeKeys.end();
+ for (; first != last; ++first)
+ {
+ if (keyName.indexOf(*first) == 0)
+ return true;
+ }
}
-
- return sal_False;
+ return false;
}
-static Options options;
-
static char const * getTypeClass(RTTypeClass typeClass)
{
switch (typeClass)
@@ -551,6 +408,7 @@ static char const * getConstValueType(RTConstValue& constValue)
return "NONE";
}
}
+
static void printConstValue(RTConstValue& constValue)
{
switch (constValue.m_type)
@@ -603,9 +461,17 @@ static void printConstValue(RTConstValue& constValue)
}
}
-static sal_uInt32 checkConstValue(const OUString& keyName,
+static void dumpTypeClass(sal_Bool & rbDump, RTTypeClass typeClass, OUString const & keyName)
+{
+ if (rbDump)
+ fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
+ rbDump = sal_False;
+}
+
+static sal_uInt32 checkConstValue(Options_Impl const & options,
+ const OUString& keyName,
RTTypeClass typeClass,
- sal_Bool& bDump,
+ sal_Bool & bDump,
RTConstValue& constValue1,
RTConstValue& constValue2,
sal_uInt16 index1)
@@ -619,11 +485,7 @@ static sal_uInt32 checkConstValue(const OUString& keyName,
{
if ( options.forceOutput() && !options.unoTypeCheck() )
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
+ dumpTypeClass(bDump, typeClass, keyName);
fprintf(stdout, " Field %d: Value1 = %s != Value2 = %s\n", index1,
constValue1.m_value.aBool ? "TRUE" : "FALSE",
constValue2.m_value.aBool ? "TRUE" : "FALSE");
@@ -636,11 +498,7 @@ static sal_uInt32 checkConstValue(const OUString& keyName,
{
if ( options.forceOutput() && !options.unoTypeCheck() )
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
+ dumpTypeClass(bDump, typeClass, keyName);
fprintf(stdout, " Field %d: Value1 = %d != Value2 = %d\n", index1,
constValue1.m_value.aByte, constValue2.m_value.aByte);
}
@@ -652,11 +510,7 @@ static sal_uInt32 checkConstValue(const OUString& keyName,
{
if ( options.forceOutput() && !options.unoTypeCheck() )
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
+ dumpTypeClass(bDump, typeClass, keyName);
fprintf(stdout, " Field %d: Value1 = %d != Value2 = %d\n", index1,
constValue1.m_value.aShort, constValue2.m_value.aShort);
}
@@ -668,11 +522,7 @@ static sal_uInt32 checkConstValue(const OUString& keyName,
{
if ( options.forceOutput() && !options.unoTypeCheck() )
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
+ dumpTypeClass(bDump, typeClass, keyName);
fprintf(stdout, " Field %d: Value1 = %d != Value2 = %d\n", index1,
constValue1.m_value.aUShort, constValue2.m_value.aUShort);
}
@@ -684,11 +534,7 @@ static sal_uInt32 checkConstValue(const OUString& keyName,
{
if ( options.forceOutput() && !options.unoTypeCheck() )
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
+ dumpTypeClass(bDump, typeClass, keyName);
fprintf(stdout, " Field %d: Value1 = %ld != Value2 = %ld\n", index1,
sal::static_int_cast< long >(constValue1.m_value.aLong),
sal::static_int_cast< long >(constValue2.m_value.aLong));
@@ -701,11 +547,7 @@ static sal_uInt32 checkConstValue(const OUString& keyName,
{
if ( options.forceOutput() && !options.unoTypeCheck() )
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
+ dumpTypeClass(bDump, typeClass, keyName);
fprintf(stdout, " Field %d: Value1 = %lu != Value2 = %lu\n", index1,
sal::static_int_cast< unsigned long >(constValue1.m_value.aULong),
sal::static_int_cast< unsigned long >(constValue2.m_value.aULong));
@@ -718,11 +560,7 @@ static sal_uInt32 checkConstValue(const OUString& keyName,
{
if ( options.forceOutput() && !options.unoTypeCheck() )
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
+ dumpTypeClass(bDump, typeClass, keyName);
fprintf(
stdout, " Field %d: Value1 = %s != Value2 = %s\n",
index1,
@@ -741,11 +579,7 @@ static sal_uInt32 checkConstValue(const OUString& keyName,
{
if ( options.forceOutput() && !options.unoTypeCheck() )
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
+ dumpTypeClass(bDump, typeClass, keyName);
fprintf(
stdout, " Field %d: Value1 = %s != Value2 = %s\n",
index1,
@@ -770,11 +604,7 @@ static sal_uInt32 checkConstValue(const OUString& keyName,
{
if ( options.forceOutput() && !options.unoTypeCheck() )
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
+ dumpTypeClass(bDump, typeClass, keyName);
fprintf(stdout, " Field %d: Value1 = %f != Value2 = %f\n", index1,
constValue1.m_value.aFloat, constValue2.m_value.aFloat);
}
@@ -786,11 +616,7 @@ static sal_uInt32 checkConstValue(const OUString& keyName,
{
if ( options.forceOutput() && !options.unoTypeCheck() )
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
+ dumpTypeClass(bDump, typeClass, keyName);
fprintf(stdout, " Field %d: Value1 = %f != Value2 = %f\n", index1,
constValue1.m_value.aDouble, constValue2.m_value.aDouble);
}
@@ -804,45 +630,37 @@ static sal_uInt32 checkConstValue(const OUString& keyName,
return 0;
}
-static sal_uInt32 checkField(const OUString& keyName,
+static sal_uInt32 checkField(Options_Impl const & options,
+ const OUString& keyName,
RTTypeClass typeClass,
- sal_Bool& bDump,
+ sal_Bool & bDump,
typereg::Reader& reader1,
typereg::Reader& reader2,
sal_uInt16 index1,
sal_uInt16 index2)
{
sal_uInt32 nError = 0;
- if ( reader1.getFieldName(index1) !=
- reader2.getFieldName(index2) )
+ if ( reader1.getFieldName(index1) != reader2.getFieldName(index2) )
{
if ( options.forceOutput() && !options.unoTypeCheck() )
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
+ dumpTypeClass (bDump, typeClass, keyName);
fprintf(stdout, " Field %d: Name1 = %s != Name2 = %s\n", index1,
U2S(reader1.getFieldName(index1)), U2S(reader2.getFieldName(index2)));
}
nError++;
}
- if ( reader1.getFieldTypeName(index1) !=
- reader2.getFieldTypeName(index2) )
+ if ( reader1.getFieldTypeName(index1) != reader2.getFieldTypeName(index2) )
{
if ( options.forceOutput() && !options.unoTypeCheck() )
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
+ dumpTypeClass (bDump, typeClass, keyName);
fprintf(stdout, " Field %d: Type1 = %s != Type2 = %s\n", index1,
U2S(reader1.getFieldTypeName(index1)), U2S(reader2.getFieldTypeName(index2)));
}
nError++;
- } else
+ }
+ else
{
RTConstValue constValue1 = reader1.getFieldValue(index1);
RTConstValue constValue2 = reader2.getFieldValue(index2);
@@ -850,11 +668,7 @@ static sal_uInt32 checkField(const OUString& keyName,
{
if ( options.forceOutput() && !options.unoTypeCheck() )
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
+ dumpTypeClass (bDump, typeClass, keyName);
fprintf(stdout, " Field %d: Access1 = %s != Access2 = %s\n", index1,
getConstValueType(constValue1), getConstValueType(constValue2));
fprintf(stdout, " Field %d: Value1 = ", index1);
@@ -864,9 +678,10 @@ static sal_uInt32 checkField(const OUString& keyName,
fprintf(stdout, "\n;");
}
nError++;
- } else
+ }
+ else
{
- nError += checkConstValue(keyName, typeClass, bDump, constValue1, constValue2, index1);
+ nError += checkConstValue(options, keyName, typeClass, bDump, constValue1, constValue2, index1);
}
}
@@ -874,11 +689,7 @@ static sal_uInt32 checkField(const OUString& keyName,
{
if ( options.forceOutput() && !options.unoTypeCheck() )
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
+ dumpTypeClass (bDump, typeClass, keyName);
fprintf(stdout, " Field %d: FieldAccess1 = %s != FieldAccess2 = %s\n", index1,
getFieldAccess(reader1.getFieldFlags(index1)).getStr(),
getFieldAccess(reader1.getFieldFlags(index2)).getStr());
@@ -886,16 +697,11 @@ static sal_uInt32 checkField(const OUString& keyName,
nError++;
}
- if ( options.fullCheck() &&
- (reader1.getFieldDocumentation(index1) != reader2.getFieldDocumentation(index2)) )
+ if ( options.fullCheck() && (reader1.getFieldDocumentation(index1) != reader2.getFieldDocumentation(index2)) )
{
if ( options.forceOutput() && !options.unoTypeCheck() )
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
+ dumpTypeClass (bDump, typeClass, keyName);
fprintf(stdout, " Field %d: Doku1 = %s\n Doku2 = %s\n", index1,
U2S(reader1.getFieldDocumentation(index1)), U2S(reader2.getFieldDocumentation(index2)));
}
@@ -936,24 +742,20 @@ static char const * getParamMode(RTParamMode paramMode)
}
}
-static sal_uInt32 checkMethod(const OUString& keyName,
+static sal_uInt32 checkMethod(Options_Impl const & options,
+ const OUString& keyName,
RTTypeClass typeClass,
- sal_Bool& bDump,
+ sal_Bool & bDump,
typereg::Reader& reader1,
typereg::Reader& reader2,
sal_uInt16 index)
{
sal_uInt32 nError = 0;
- if ( reader1.getMethodName(index) !=
- reader2.getMethodName(index) )
+ if ( reader1.getMethodName(index) != reader2.getMethodName(index) )
{
if ( options.forceOutput() )
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
+ dumpTypeClass (bDump, typeClass, keyName);
fprintf(stdout, " Method1 %d: Name1 = %s != Name2 = %s\n", index,
U2S(reader1.getMethodName(index)),
U2S(reader2.getMethodName(index)));
@@ -961,16 +763,11 @@ static sal_uInt32 checkMethod(const OUString& keyName,
nError++;
}
- if ( reader1.getMethodReturnTypeName(index) !=
- reader2.getMethodReturnTypeName(index) )
+ if ( reader1.getMethodReturnTypeName(index) != reader2.getMethodReturnTypeName(index) )
{
if ( options.forceOutput() )
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
+ dumpTypeClass (bDump, typeClass, keyName);
fprintf(stdout, " Method1 %d: ReturnType1 = %s != ReturnType2 = %s\n", index,
U2S(reader1.getMethodReturnTypeName(index)),
U2S(reader2.getMethodReturnTypeName(index)));
@@ -984,11 +781,7 @@ static sal_uInt32 checkMethod(const OUString& keyName,
{
if ( options.forceOutput() )
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
+ dumpTypeClass (bDump, typeClass, keyName);
fprintf(stdout, " Method %d : nParameters1 = %d != nParameters2 = %d\n", index, nParams1, nParams2);
}
nError++;
@@ -1000,27 +793,18 @@ static sal_uInt32 checkMethod(const OUString& keyName,
{
if ( options.forceOutput() )
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
+ dumpTypeClass (bDump, typeClass, keyName);
fprintf(stdout, " Method %d, Parameter %d: Type1 = %s != Type2 = %s\n", index, i,
U2S(reader1.getMethodParameterTypeName(index, i)),
U2S(reader2.getMethodParameterTypeName(index, i)));
}
nError++;
}
- if ( options.fullCheck() &&
- (reader1.getMethodParameterName(index, i) != reader2.getMethodParameterName(index, i)) )
+ if ( options.fullCheck() && (reader1.getMethodParameterName(index, i) != reader2.getMethodParameterName(index, i)) )
{
if ( options.forceOutput() )
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
+ dumpTypeClass (bDump, typeClass, keyName);
fprintf(stdout, " Method %d, Parameter %d: Name1 = %s != Name2 = %s\n", index, i,
U2S(reader1.getMethodParameterName(index, i)),
U2S(reader2.getMethodParameterName(index, i)));
@@ -1031,11 +815,7 @@ static sal_uInt32 checkMethod(const OUString& keyName,
{
if ( options.forceOutput() )
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
+ dumpTypeClass (bDump, typeClass, keyName);
fprintf(stdout, " Method %d, Parameter %d: Mode1 = %s != Mode2 = %s\n", index, i,
getParamMode(reader1.getMethodParameterFlags(index, i)),
getParamMode(reader2.getMethodParameterFlags(index, i)));
@@ -1045,20 +825,12 @@ static sal_uInt32 checkMethod(const OUString& keyName,
}
if ( i < nParams1 && options.forceOutput() )
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
+ dumpTypeClass (bDump, typeClass, keyName);
fprintf(stdout, " Registry1: Method %d contains %d more parameters\n", index, nParams1 - i);
}
if ( i < nParams2 && options.forceOutput() )
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
+ dumpTypeClass (bDump, typeClass, keyName);
fprintf(stdout, " Registry2: Method %d contains %d more parameters\n", index, nParams2 - i);
}
@@ -1068,11 +840,7 @@ static sal_uInt32 checkMethod(const OUString& keyName,
{
if ( options.forceOutput() )
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
+ dumpTypeClass (bDump, typeClass, keyName);
fprintf(stdout, " nExceptions1 = %d != nExceptions2 = %d\n", nExcep1, nExcep2);
}
nError++;
@@ -1083,11 +851,7 @@ static sal_uInt32 checkMethod(const OUString& keyName,
{
if ( options.forceOutput() )
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
+ dumpTypeClass (bDump, typeClass, keyName);
fprintf(stdout, " Method %d, Exception %d: Name1 = %s != Name2 = %s\n", index, i,
U2S(reader1.getMethodExceptionTypeName(index, i)),
U2S(reader2.getMethodExceptionTypeName(index, i)));
@@ -1097,20 +861,12 @@ static sal_uInt32 checkMethod(const OUString& keyName,
}
if ( i < nExcep1 && options.forceOutput() )
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
+ dumpTypeClass (bDump, typeClass, keyName);
fprintf(stdout, " Registry1: Method %d contains %d more exceptions\n", index, nExcep1 - i);
}
if ( i < nExcep2 && options.forceOutput() )
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
+ dumpTypeClass (bDump, typeClass, keyName);
fprintf(stdout, " Registry2: Method %d contains %d more exceptions\n", index, nExcep2 - i);
}
@@ -1118,11 +874,7 @@ static sal_uInt32 checkMethod(const OUString& keyName,
{
if ( options.forceOutput() )
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
+ dumpTypeClass (bDump, typeClass, keyName);
fprintf(stdout, " Method %d: Mode1 = %s != Mode2 = %s\n", index,
getMethodMode(reader1.getMethodFlags(index)),
getMethodMode(reader2.getMethodFlags(index)));
@@ -1130,16 +882,11 @@ static sal_uInt32 checkMethod(const OUString& keyName,
nError++;
}
- if ( options.fullCheck() &&
- (reader1.getMethodDocumentation(index) != reader2.getMethodDocumentation(index)) )
+ if ( options.fullCheck() && (reader1.getMethodDocumentation(index) != reader2.getMethodDocumentation(index)) )
{
if ( options.forceOutput() )
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
+ dumpTypeClass (bDump, typeClass, keyName);
fprintf(stdout, " Method %d: Doku1 = %s\n Doku2 = %s\n", index,
U2S(reader1.getMethodDocumentation(index)),
U2S(reader2.getMethodDocumentation(index)));
@@ -1166,73 +913,54 @@ static char const * getReferenceType(RTReferenceType refType)
}
}
-static sal_uInt32 checkReference(const OUString& keyName,
+static sal_uInt32 checkReference(Options_Impl const & options,
+ const OUString& keyName,
RTTypeClass typeClass,
- sal_Bool& bDump,
+ sal_Bool & bDump,
typereg::Reader& reader1,
typereg::Reader& reader2,
sal_uInt16 index1,
sal_uInt16 index2)
{
sal_uInt32 nError = 0;
- if ( reader1.getReferenceTypeName(index1) !=
- reader2.getReferenceTypeName(index2) )
+ if ( reader1.getReferenceTypeName(index1) != reader2.getReferenceTypeName(index2) )
{
if ( options.forceOutput() && !options.unoTypeCheck() )
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
+ dumpTypeClass (bDump, typeClass, keyName);
fprintf(stdout, " Reference %d: Name1 = %s != Name2 = %s\n", index1,
U2S(reader1.getReferenceTypeName(index1)),
U2S(reader2.getReferenceTypeName(index2)));
}
nError++;
}
- if ( reader1.getReferenceTypeName(index1) !=
- reader2.getReferenceTypeName(index2) )
+ if ( reader1.getReferenceTypeName(index1) != reader2.getReferenceTypeName(index2) )
{
if ( options.forceOutput() && !options.unoTypeCheck() )
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
+ dumpTypeClass (bDump, typeClass, keyName);
fprintf(stdout, " Reference %d: Type1 = %s != Type2 = %s\n", index1,
getReferenceType(reader1.getReferenceSort(index1)),
getReferenceType(reader2.getReferenceSort(index2)));
}
nError++;
}
- if ( options.fullCheck() &&
- (reader1.getReferenceDocumentation(index1) != reader2.getReferenceDocumentation(index2)) )
+ if ( options.fullCheck() && (reader1.getReferenceDocumentation(index1) != reader2.getReferenceDocumentation(index2)) )
{
if ( options.forceOutput() && !options.unoTypeCheck() )
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
+ dumpTypeClass (bDump, typeClass, keyName);
fprintf(stdout, " Reference %d: Doku1 = %s\n Doku2 = %s\n", index1,
U2S(reader1.getReferenceDocumentation(index1)),
U2S(reader2.getReferenceDocumentation(index2)));
}
nError++;
}
- if ( reader1.getReferenceFlags(index1) !=
- reader2.getReferenceFlags(index2) )
+ if ( reader1.getReferenceFlags(index1) != reader2.getReferenceFlags(index2) )
{
if ( options.forceOutput() && !options.unoTypeCheck() )
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
+ dumpTypeClass (bDump, typeClass, keyName);
fprintf(stdout, " Reference %d: Access1 = %s != Access2 = %s\n", index1,
getFieldAccess(reader1.getReferenceFlags(index1)).getStr(),
getFieldAccess(reader1.getReferenceFlags(index2)).getStr());
@@ -1242,9 +970,10 @@ static sal_uInt32 checkReference(const OUString& keyName,
return nError;
}
-static sal_uInt32 checkFieldsWithoutOrder(const OUString& keyName,
+static sal_uInt32 checkFieldsWithoutOrder(Options_Impl const & options,
+ const OUString& keyName,
RTTypeClass typeClass,
- sal_Bool& bDump,
+ sal_Bool & bDump,
typereg::Reader& reader1,
typereg::Reader& reader2)
{
@@ -1258,13 +987,9 @@ static sal_uInt32 checkFieldsWithoutOrder(const OUString& keyName,
{
if ( options.forceOutput() )
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
- fprintf(stdout, " %s1 contains %d more properties as %s2\n",
- getTypeClass(typeClass), nFields1-nFields2, getTypeClass(typeClass));
+ dumpTypeClass (bDump, typeClass, keyName);
+ fprintf(stdout, " %s1 contains %d more properties as %s2\n",
+ getTypeClass(typeClass), nFields1-nFields2, getTypeClass(typeClass));
}
}
@@ -1275,7 +1000,7 @@ static sal_uInt32 checkFieldsWithoutOrder(const OUString& keyName,
{
for (j=0; j < nFields2; j++)
{
- if (!checkField(keyName, typeClass, bDump, reader1, reader2, i, j))
+ if (!checkField(options, keyName, typeClass, bDump, reader1, reader2, i, j))
{
bFound = sal_True;
moreProps.insert(j);
@@ -1286,16 +1011,13 @@ static sal_uInt32 checkFieldsWithoutOrder(const OUString& keyName,
{
if (options.forceOutput())
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
+ dumpTypeClass (bDump, typeClass, keyName);
fprintf(stdout, " incompatible change: Field %d ('%s') of r1 is not longer a property of this %s in r2\n",
i, U2S(shortName(reader1.getFieldName(i))), getTypeClass(typeClass));
}
nError++;
- } else
+ }
+ else
{
bFound = sal_False;
}
@@ -1311,12 +1033,10 @@ static sal_uInt32 checkFieldsWithoutOrder(const OUString& keyName,
{
if ( options.forceOutput() )
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
- fprintf(stdout, " incompatible change: Field %d ('%s') of r2 is a new property compared to this %s in r1 and is not 'optional'\n",
+ dumpTypeClass (bDump, typeClass, keyName);
+ fprintf(stdout,
+ " incompatible change: Field %d ('%s') of r2 is a new property"
+ " compared to this %s in r1 and is not 'optional'\n",
j, U2S(shortName(reader2.getFieldName(j))), getTypeClass(typeClass));
}
nError++;
@@ -1328,8 +1048,11 @@ static sal_uInt32 checkFieldsWithoutOrder(const OUString& keyName,
return nError;
}
-static sal_uInt32 checkBlob(const OUString& keyName, typereg::Reader& reader1, sal_uInt32 size1,
- typereg::Reader& reader2, sal_uInt32 size2)
+static sal_uInt32 checkBlob(
+ Options_Impl const & options,
+ const OUString& keyName,
+ typereg::Reader& reader1, sal_uInt32 size1,
+ typereg::Reader& reader2, sal_uInt32 size2)
{
sal_uInt32 nError = 0;
sal_Bool bDump = sal_True;
@@ -1344,28 +1067,27 @@ static sal_uInt32 checkBlob(const OUString& keyName, typereg::Reader& reader1, s
sal::static_int_cast< unsigned long >(size2));
}
}
- if (reader1.isPublished()) {
- if (!reader2.isPublished()) {
- if (options.forceOutput()) {
- if (bDump) {
- fprintf(stdout, "?: %s\n", U2S(keyName));
- bDump = false;
- }
+ if (reader1.isPublished())
+ {
+ if (!reader2.isPublished())
+ {
+ if (options.forceOutput())
+ {
+ dumpTypeClass(bDump, /*"?"*/ reader1.getTypeClass(), keyName);
fprintf(stdout, " published in 1 but unpublished in 2\n");
}
++nError;
}
- } else if (!options.checkUnpublished()) {
+ }
+ else if (!options.checkUnpublished())
+ {
return nError;
}
if ( reader1.getTypeClass() != reader2.getTypeClass() )
{
if ( options.forceOutput() )
{
- if (bDump) {
- fprintf(stdout, "?: %s\n", U2S(keyName));
- bDump = sal_False;
- }
+ dumpTypeClass(bDump, /*"?"*/ reader1.getTypeClass(), keyName);
fprintf(stdout, " TypeClass1 = %s != TypeClass2 = %s\n",
getTypeClass(reader1.getTypeClass()),
getTypeClass(reader2.getTypeClass()));
@@ -1374,16 +1096,11 @@ static sal_uInt32 checkBlob(const OUString& keyName, typereg::Reader& reader1, s
}
RTTypeClass typeClass = reader1.getTypeClass();
-
if ( reader1.getTypeName() != reader2.getTypeName() )
{
if ( options.forceOutput() )
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
+ dumpTypeClass(bDump, typeClass, keyName);
fprintf(stdout, " TypeName1 = %s != TypeName2 = %s\n",
U2S(reader1.getTypeName()), U2S(reader2.getTypeName()));
}
@@ -1393,28 +1110,23 @@ static sal_uInt32 checkBlob(const OUString& keyName, typereg::Reader& reader1, s
typeClass == RT_TYPE_STRUCT ||
typeClass == RT_TYPE_EXCEPTION) )
{
- if (reader1.getSuperTypeCount() != reader2.getSuperTypeCount()) {
- if (bDump) {
- fprintf(
- stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = false;
- }
+ if (reader1.getSuperTypeCount() != reader2.getSuperTypeCount())
+ {
+ dumpTypeClass(bDump, typeClass, keyName);
fprintf(
stdout, " SuperTypeCount1 = %d != SuperTypeCount2 = %d\n",
static_cast< int >(reader1.getSuperTypeCount()),
static_cast< int >(reader2.getSuperTypeCount()));
++nError;
- } else {
- for (sal_Int16 i = 0; i < reader1.getSuperTypeCount(); ++i) {
+ } else
+ {
+ for (sal_Int16 i = 0; i < reader1.getSuperTypeCount(); ++i)
+ {
if (reader1.getSuperTypeName(i) != reader2.getSuperTypeName(i))
{
if ( options.forceOutput() )
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
+ dumpTypeClass(bDump, typeClass, keyName);
fprintf(stdout, " SuperTypeName1 = %s != SuperTypeName2 = %s\n",
U2S(reader1.getSuperTypeName(i)), U2S(reader2.getSuperTypeName(i)));
}
@@ -1423,6 +1135,7 @@ static sal_uInt32 checkBlob(const OUString& keyName, typereg::Reader& reader1, s
}
}
}
+
sal_uInt16 nFields1 = (sal_uInt16)reader1.getFieldCount();
sal_uInt16 nFields2 = (sal_uInt16)reader2.getFieldCount();
sal_Bool bCheckNormal = sal_True;
@@ -1440,41 +1153,31 @@ static sal_uInt32 checkBlob(const OUString& keyName, typereg::Reader& reader1, s
{
if ( options.forceOutput() )
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
+ dumpTypeClass(bDump, typeClass, keyName);
fprintf(stdout, " nFields1 = %d != nFields2 = %d\n", nFields1, nFields2);
}
nError++;
}
+
sal_uInt16 i;
for (i=0; i < nFields1 && i < nFields2; i++)
{
- nError += checkField(keyName, typeClass, bDump, reader1, reader2, i, i);
+ nError += checkField(options, keyName, typeClass, bDump, reader1, reader2, i, i);
}
if ( i < nFields1 && options.forceOutput() )
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
+ dumpTypeClass(bDump, typeClass, keyName);
fprintf(stdout, " Registry1 contains %d more fields\n", nFields1 - i);
}
if ( i < nFields2 && options.forceOutput() )
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
+ dumpTypeClass(bDump, typeClass, keyName);
fprintf(stdout, " Registry2 contains %d more fields\n", nFields2 - i);
}
- } else
+ }
+ else
{
- nError += checkFieldsWithoutOrder(keyName, typeClass, bDump, reader1, reader2);
+ nError += checkFieldsWithoutOrder(options, keyName, typeClass, bDump, reader1, reader2);
}
if ( typeClass == RT_TYPE_INTERFACE )
@@ -1485,19 +1188,16 @@ static sal_uInt32 checkBlob(const OUString& keyName, typereg::Reader& reader1, s
{
if ( options.forceOutput() )
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
+ dumpTypeClass(bDump, typeClass, keyName);
fprintf(stdout, " nMethods1 = %d != nMethods2 = %d\n", nMethods1, nMethods2);
}
nError++;
}
+
sal_uInt16 i;
for (i=0; i < nMethods1 && i < nMethods2; i++)
{
- nError += checkMethod(keyName, typeClass, bDump, reader1, reader2, i);
+ nError += checkMethod(options, keyName, typeClass, bDump, reader1, reader2, i);
}
if ( i < nMethods1 && options.forceOutput() )
{
@@ -1521,11 +1221,7 @@ static sal_uInt32 checkBlob(const OUString& keyName, typereg::Reader& reader1, s
{
if ( options.forceOutput() )
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
+ dumpTypeClass(bDump, typeClass, keyName);
fprintf(stdout, " service1 contains %d more references as service2\n",
nReference1-nReference2);
}
@@ -1538,7 +1234,7 @@ static sal_uInt32 checkBlob(const OUString& keyName, typereg::Reader& reader1, s
{
for (j=0; j < nReference2; j++)
{
- if (!checkReference(keyName, typeClass, bDump, reader1, reader2, i, j))
+ if (!checkReference(options, keyName, typeClass, bDump, reader1, reader2, i, j))
{
bFound = sal_True;
moreReferences.insert(j);
@@ -1549,16 +1245,15 @@ static sal_uInt32 checkBlob(const OUString& keyName, typereg::Reader& reader1, s
{
if (options.forceOutput())
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
- fprintf(stdout, " incompatible change: Reference %d ('%s') in 'r1' is not longer a reference of this service in 'r2'\n",
+ dumpTypeClass(bDump, typeClass, keyName);
+ fprintf(stdout,
+ " incompatible change: Reference %d ('%s') in 'r1' is not longer a reference"
+ " of this service in 'r2'\n",
i, U2S(shortName(reader1.getReferenceTypeName(i))));
}
nError++;
- } else
+ }
+ else
{
bFound = sal_False;
}
@@ -1574,12 +1269,10 @@ static sal_uInt32 checkBlob(const OUString& keyName, typereg::Reader& reader1, s
{
if ( options.forceOutput() )
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
- fprintf(stdout, " incompatible change: Reference %d ('%s') of r2 is a new reference compared to this service in r1 and is not 'optional'\n",
+ dumpTypeClass(bDump, typeClass, keyName);
+ fprintf(stdout,
+ " incompatible change: Reference %d ('%s') of r2 is a new reference"
+ " compared to this service in r1 and is not 'optional'\n",
j, U2S(shortName(reader2.getReferenceTypeName(j))));
}
nError++;
@@ -1587,25 +1280,23 @@ static sal_uInt32 checkBlob(const OUString& keyName, typereg::Reader& reader1, s
}
}
}
- } else
+ }
+ else
{
if ( nReference1 != nReference2 )
{
if ( options.forceOutput() )
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
+ dumpTypeClass(bDump, typeClass, keyName);
fprintf(stdout, " nReferences1 = %d != nReferences2 = %d\n", nReference1, nReference2);
}
nError++;
}
+
sal_uInt16 i;
for (i=0; i < nReference1 && i < nReference2; i++)
{
- nError += checkReference(keyName, typeClass, bDump, reader1, reader2, i, i);
+ nError += checkReference(options, keyName, typeClass, bDump, reader1, reader2, i, i);
}
if ( i < nReference1 && options.forceOutput() )
{
@@ -1622,38 +1313,19 @@ static sal_uInt32 checkBlob(const OUString& keyName, typereg::Reader& reader1, s
{
if ( options.forceOutput() )
{
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
+ dumpTypeClass(bDump, typeClass, keyName);
fprintf(stdout, " Doku1 = %s\n Doku2 = %s\n",
U2S(reader1.getDocumentation()), U2S(reader2.getDocumentation()));
}
nError++;
}
-/*
- if ( nError &&
- (!keyName.compareTo(OUString(RTL_CONSTASCII_USTRINGPARAM("/UCR/drafts")), 11) ||
- !keyName.compareTo(OUString(RTL_CONSTASCII_USTRINGPARAM("/drafts")), 7)) )
- {
- if ( options.forceOutput() )
- {
- if ( bDump )
- {
- fprintf(stdout, "%s: %s\n", getTypeClass(typeClass), U2S(keyName));
- bDump = sal_False;
- }
- fprintf(stdout, " Note: \"drafts\" type changed incompatible, no effect to the final API\n");
- }
- return 0;
- }
-*/
return nError;
}
-static sal_uInt32 checkValueDifference(RegistryKey& key1, RegValueType valueType1, sal_uInt32 size1,
- RegistryKey& key2, RegValueType valueType2, sal_uInt32 size2)
+static sal_uInt32 checkValueDifference(
+ Options_Impl const & options,
+ RegistryKey& key1, RegValueType valueType1, sal_uInt32 size1,
+ RegistryKey& key2, RegValueType valueType2, sal_uInt32 size2)
{
OUString tmpName;
sal_uInt32 nError = 0;
@@ -1738,39 +1410,31 @@ static sal_uInt32 checkValueDifference(RegistryKey& key1, RegValueType valueType
if ( bEqual)
{
- RegValue value1 = rtl_allocateMemory(size1);
- RegValue value2 = rtl_allocateMemory(size2);
+ std::vector< sal_uInt8 > value1(size1);
+ key1.getValue(tmpName, &value1[0]);
- key1.getValue(tmpName, value1);
- key2.getValue(tmpName, value2);
-
- bEqual = (rtl_compareMemory(value1, value2, size1) == 0 );
+ std::vector< sal_uInt8 > value2(size2);
+ key2.getValue(tmpName, &value2[0]);
+ bEqual = (rtl_compareMemory(&value1[0], &value2[0], value1.size()) == 0 );
if ( !bEqual && valueType1 == RG_VALUETYPE_BINARY && valueType2 == RG_VALUETYPE_BINARY )
{
- typereg::Reader reader1(
- value1, size1, false, TYPEREG_VERSION_1);
- typereg::Reader reader2(
- value2, size2, false, TYPEREG_VERSION_1);
-
+ typereg::Reader reader1(&value1[0], value1.size(), false, TYPEREG_VERSION_1);
+ typereg::Reader reader2(&value2[0], value2.size(), false, TYPEREG_VERSION_1);
if ( reader1.isValid() && reader2.isValid() )
{
- return checkBlob(key1.getName(), reader1, size1, reader2, size2);
+ return checkBlob(options, key1.getName(), reader1, size1, reader2, size2);
}
}
-
- rtl_freeMemory(value1);
- rtl_freeMemory(value2);
-
if ( bEqual )
{
return 0;
- } else
+ }
+ else
{
if ( options.forceOutput() )
{
- fprintf(stdout, "Difference: key values of key \"%s\" are different\n",
- U2S(key1.getName()));
+ fprintf(stdout, "Difference: key values of key \"%s\" are different\n", U2S(key1.getName()));
}
nError++;
}
@@ -1785,102 +1449,98 @@ static sal_uInt32 checkValueDifference(RegistryKey& key1, RegValueType valueType
fprintf(stdout, " Registry 1: key has no value\n");
break;
case RG_VALUETYPE_LONG:
- case RG_VALUETYPE_STRING:
- case RG_VALUETYPE_UNICODE:
- {
- RegValue value1 = rtl_allocateMemory(size1);
- key1.getValue(tmpName, value1);
-
- switch (valueType1)
{
- case RG_VALUETYPE_LONG:
+ std::vector< sal_uInt8 > value1(size1);
+ key1.getValue(tmpName, &value1[0]);
+
fprintf(stdout, " Registry 1: Value: Type = RG_VALUETYPE_LONG\n");
fprintf(
stdout, " Size = %lu\n",
sal::static_int_cast< unsigned long >(size1));
- fprintf(stdout, " Data = %p\n", value1);
- break;
- case RG_VALUETYPE_STRING:
+ fprintf(stdout, " Data = %p\n", &value1[0]);
+ }
+ break;
+ case RG_VALUETYPE_STRING:
+ {
+ std::vector< sal_uInt8 > value1(size1);
+ key1.getValue(tmpName, &value1[0]);
+
fprintf(stdout, " Registry 1: Value: Type = RG_VALUETYPE_STRING\n");
fprintf(
stdout, " Size = %lu\n",
sal::static_int_cast< unsigned long >(size1));
- fprintf(stdout, " Data = \"%s\"\n", (sal_Char*)value1);
- break;
- case RG_VALUETYPE_UNICODE:
- {
- OUString uStrValue((sal_Unicode*)value1);
+ fprintf(stdout, " Data = \"%s\"\n", reinterpret_cast<char const*>(&value1[0]));
+ }
+ break;
+ case RG_VALUETYPE_UNICODE:
+ {
+ std::vector< sal_uInt8 > value1(size1);
+ key1.getValue(tmpName, &value1[0]);
+
+ OUString uStrValue(reinterpret_cast<sal_Unicode const*>(&value1[0]));
fprintf(stdout, " Registry 1: Value: Type = RG_VALUETYPE_UNICODE\n");
fprintf(
stdout, " Size = %lu\n",
sal::static_int_cast< unsigned long >(size1));
fprintf(stdout, " Data = \"%s\"\n", U2S(uStrValue));
- }
- break;
- default:
- OSL_ASSERT(false);
- break;
}
-
- rtl_freeMemory(value1);
- }
break;
case RG_VALUETYPE_BINARY:
fprintf(stdout, " Registry 1: Value: Type = RG_VALUETYPE_BINARY\n");
break;
case RG_VALUETYPE_LONGLIST:
{
- RegistryValueList<sal_Int32> valueList;
- key1.getLongListValue(tmpName, valueList);
- fprintf(stdout, " Registry 1: Value: Type = RG_VALUETYPE_LONGLIST\n");
- fprintf(
- stdout, " Size = %lu\n",
- sal::static_int_cast< unsigned long >(size1));
- sal_uInt32 length = valueList.getLength();
- for (sal_uInt32 i=0; i<length; i++)
- {
+ RegistryValueList<sal_Int32> valueList;
+ key1.getLongListValue(tmpName, valueList);
+ fprintf(stdout, " Registry 1: Value: Type = RG_VALUETYPE_LONGLIST\n");
fprintf(
- stdout, " Data[%lu] = %ld\n",
- sal::static_int_cast< unsigned long >(i),
- sal::static_int_cast< long >(valueList.getElement(i)));
- }
+ stdout, " Size = %lu\n",
+ sal::static_int_cast< unsigned long >(size1));
+ sal_uInt32 length = valueList.getLength();
+ for (sal_uInt32 i=0; i<length; i++)
+ {
+ fprintf(
+ stdout, " Data[%lu] = %ld\n",
+ sal::static_int_cast< unsigned long >(i),
+ sal::static_int_cast< long >(valueList.getElement(i)));
+ }
}
break;
case RG_VALUETYPE_STRINGLIST:
{
- RegistryValueList<sal_Char*> valueList;
- key1.getStringListValue(tmpName, valueList);
- fprintf(stdout, " Registry 1: Value: Type = RG_VALUETYPE_STRINGLIST\n");
- fprintf(
- stdout, " Size = %lu\n",
- sal::static_int_cast< unsigned long >(size1));
- sal_uInt32 length = valueList.getLength();
- for (sal_uInt32 i=0; i<length; i++)
- {
+ RegistryValueList<sal_Char*> valueList;
+ key1.getStringListValue(tmpName, valueList);
+ fprintf(stdout, " Registry 1: Value: Type = RG_VALUETYPE_STRINGLIST\n");
fprintf(
- stdout, " Data[%lu] = \"%s\"\n",
- sal::static_int_cast< unsigned long >(i),
- valueList.getElement(i));
- }
+ stdout, " Size = %lu\n",
+ sal::static_int_cast< unsigned long >(size1));
+ sal_uInt32 length = valueList.getLength();
+ for (sal_uInt32 i=0; i<length; i++)
+ {
+ fprintf(
+ stdout, " Data[%lu] = \"%s\"\n",
+ sal::static_int_cast< unsigned long >(i),
+ valueList.getElement(i));
+ }
}
break;
case RG_VALUETYPE_UNICODELIST:
{
- RegistryValueList<sal_Unicode*> valueList;
- key1.getUnicodeListValue(tmpName, valueList);
- fprintf(stdout, " Registry 1: Value: Type = RG_VALUETYPE_UNICODELIST\n");
- fprintf(
- stdout, " Size = %lu\n",
- sal::static_int_cast< unsigned long >(size1));
- sal_uInt32 length = valueList.getLength();
- OUString uStrValue;
- for (sal_uInt32 i=0; i<length; i++)
- {
- uStrValue = OUString(valueList.getElement(i));
+ RegistryValueList<sal_Unicode*> valueList;
+ key1.getUnicodeListValue(tmpName, valueList);
+ fprintf(stdout, " Registry 1: Value: Type = RG_VALUETYPE_UNICODELIST\n");
fprintf(
- stdout, " Data[%lu] = \"%s\"\n",
- sal::static_int_cast< unsigned long >(i), U2S(uStrValue));
- }
+ stdout, " Size = %lu\n",
+ sal::static_int_cast< unsigned long >(size1));
+ sal_uInt32 length = valueList.getLength();
+ OUString uStrValue;
+ for (sal_uInt32 i=0; i<length; i++)
+ {
+ uStrValue = OUString(valueList.getElement(i));
+ fprintf(
+ stdout, " Data[%lu] = \"%s\"\n",
+ sal::static_int_cast< unsigned long >(i), U2S(uStrValue));
+ }
}
break;
}
@@ -1891,102 +1551,98 @@ static sal_uInt32 checkValueDifference(RegistryKey& key1, RegValueType valueType
fprintf(stdout, " Registry 2: key has no value\n");
break;
case RG_VALUETYPE_LONG:
- case RG_VALUETYPE_STRING:
- case RG_VALUETYPE_UNICODE:
- {
- RegValue value2 = rtl_allocateMemory(size2);
- key2.getValue(tmpName, value2);
-
- switch (valueType2)
{
- case RG_VALUETYPE_LONG:
+ std::vector< sal_uInt8 > value2(size2);
+ key2.getValue(tmpName, &value2[0]);
+
fprintf(stdout, " Registry 2: Value: Type = RG_VALUETYPE_LONG\n");
fprintf(
stdout, " Size = %lu\n",
sal::static_int_cast< unsigned long >(size2));
- fprintf(stdout, " Data = %p\n", value2);
- break;
- case RG_VALUETYPE_STRING:
+ fprintf(stdout, " Data = %p\n", &value2[0]);
+ }
+ break;
+ case RG_VALUETYPE_STRING:
+ {
+ std::vector< sal_uInt8 > value2(size2);
+ key2.getValue(tmpName, &value2[0]);
+
fprintf(stdout, " Registry 2: Value: Type = RG_VALUETYPE_STRING\n");
fprintf(
stdout, " Size = %lu\n",
sal::static_int_cast< unsigned long >(size2));
- fprintf(stdout, " Data = \"%s\"\n", (sal_Char*)value2);
- break;
- case RG_VALUETYPE_UNICODE:
- {
- OUString uStrValue((sal_Unicode*)value2);
+ fprintf(stdout, " Data = \"%s\"\n", reinterpret_cast<char const*>(&value2[0]));
+ }
+ break;
+ case RG_VALUETYPE_UNICODE:
+ {
+ std::vector< sal_uInt8 > value2(size2);
+ key2.getValue(tmpName, &value2[0]);
+
+ OUString uStrValue(reinterpret_cast<sal_Unicode const*>(&value2[0]));
fprintf(stdout, " Registry 2: Value: Type = RG_VALUETYPE_UNICODE\n");
fprintf(
stdout, " Size = %lu\n",
sal::static_int_cast< unsigned long >(size2));
fprintf(stdout, " Data = \"%s\"\n", U2S(uStrValue));
- }
- break;
- default:
- OSL_ASSERT(false);
- break;
}
-
- rtl_freeMemory(value2);
- }
break;
case RG_VALUETYPE_BINARY:
fprintf(stdout, " Registry 2: Value: Type = RG_VALUETYPE_BINARY\n");
break;
case RG_VALUETYPE_LONGLIST:
{
- RegistryValueList<sal_Int32> valueList;
- key2.getLongListValue(tmpName, valueList);
- fprintf(stdout, " Registry 2: Value: Type = RG_VALUETYPE_LONGLIST\n");
- fprintf(
- stdout, " Size = %lu\n",
- sal::static_int_cast< unsigned long >(size2));
- sal_uInt32 length = valueList.getLength();
- for (sal_uInt32 i=0; i<length; i++)
- {
+ RegistryValueList<sal_Int32> valueList;
+ key2.getLongListValue(tmpName, valueList);
+ fprintf(stdout, " Registry 2: Value: Type = RG_VALUETYPE_LONGLIST\n");
fprintf(
- stdout, " Data[%lu] = %ld\n",
- sal::static_int_cast< unsigned long >(i),
- sal::static_int_cast< long >(valueList.getElement(i)));
- }
+ stdout, " Size = %lu\n",
+ sal::static_int_cast< unsigned long >(size2));
+ sal_uInt32 length = valueList.getLength();
+ for (sal_uInt32 i=0; i<length; i++)
+ {
+ fprintf(
+ stdout, " Data[%lu] = %ld\n",
+ sal::static_int_cast< unsigned long >(i),
+ sal::static_int_cast< long >(valueList.getElement(i)));
+ }
}
break;
case RG_VALUETYPE_STRINGLIST:
{
- RegistryValueList<sal_Char*> valueList;
- key2.getStringListValue(tmpName, valueList);
- fprintf(stdout, " Registry 2: Value: Type = RG_VALUETYPE_STRINGLIST\n");
- fprintf(
- stdout, " Size = %lu\n",
- sal::static_int_cast< unsigned long >(size2));
- sal_uInt32 length = valueList.getLength();
- for (sal_uInt32 i=0; i<length; i++)
- {
+ RegistryValueList<sal_Char*> valueList;
+ key2.getStringListValue(tmpName, valueList);
+ fprintf(stdout, " Registry 2: Value: Type = RG_VALUETYPE_STRINGLIST\n");
fprintf(
- stdout, " Data[%lu] = \"%s\"\n",
- sal::static_int_cast< unsigned long >(i),
- valueList.getElement(i));
- }
+ stdout, " Size = %lu\n",
+ sal::static_int_cast< unsigned long >(size2));
+ sal_uInt32 length = valueList.getLength();
+ for (sal_uInt32 i=0; i<length; i++)
+ {
+ fprintf(
+ stdout, " Data[%lu] = \"%s\"\n",
+ sal::static_int_cast< unsigned long >(i),
+ valueList.getElement(i));
+ }
}
break;
case RG_VALUETYPE_UNICODELIST:
{
- RegistryValueList<sal_Unicode*> valueList;
- key2.getUnicodeListValue(tmpName, valueList);
- fprintf(stdout, " Registry 2: Value: Type = RG_VALUETYPE_UNICODELIST\n");
- fprintf(
- stdout, " Size = %lu\n",
- sal::static_int_cast< unsigned long >(size2));
- sal_uInt32 length = valueList.getLength();
- OUString uStrValue;
- for (sal_uInt32 i=0; i<length; i++)
- {
- uStrValue = OUString(valueList.getElement(i));
+ RegistryValueList<sal_Unicode*> valueList;
+ key2.getUnicodeListValue(tmpName, valueList);
+ fprintf(stdout, " Registry 2: Value: Type = RG_VALUETYPE_UNICODELIST\n");
fprintf(
- stdout, " Data[%lu] = \"%s\"\n",
- sal::static_int_cast< unsigned long >(i), U2S(uStrValue));
- }
+ stdout, " Size = %lu\n",
+ sal::static_int_cast< unsigned long >(size2));
+ sal_uInt32 length = valueList.getLength();
+ OUString uStrValue;
+ for (sal_uInt32 i=0; i<length; i++)
+ {
+ uStrValue = OUString(valueList.getElement(i));
+ fprintf(
+ stdout, " Data[%lu] = \"%s\"\n",
+ sal::static_int_cast< unsigned long >(i), U2S(uStrValue));
+ }
}
break;
}
@@ -1994,58 +1650,67 @@ static sal_uInt32 checkValueDifference(RegistryKey& key1, RegValueType valueType
return nError;
}
-static bool hasPublishedChildren(RegistryKey & key) {
+static bool hasPublishedChildren(Options_Impl const & options, RegistryKey & key)
+{
RegistryKeyNames subKeyNames;
key.getKeyNames(rtl::OUString(), subKeyNames);
- for (sal_uInt32 i = 0; i < subKeyNames.getLength(); ++i) {
+ for (sal_uInt32 i = 0; i < subKeyNames.getLength(); ++i)
+ {
rtl::OUString keyName(subKeyNames.getElement(i));
- if (!options.matchedWithExcludeKey(keyName)) {
+ if (!options.matchedWithExcludeKey(keyName))
+ {
keyName = keyName.copy(keyName.lastIndexOf('/') + 1);
RegistryKey subKey;
- if (!key.openKey(keyName, subKey)) {
- if (options.forceOutput()) {
+ if (!key.openKey(keyName, subKey))
+ {
+ if (options.forceOutput())
+ {
fprintf(
stdout,
("WARNING: could not open key \"%s\" in registry"
" \"%s\"\n"),
U2S(subKeyNames.getElement(i)),
- options.getRegName1().getStr());
+ options.getRegName1().c_str());
}
}
- if (subKey.isValid()) {
+ if (subKey.isValid())
+ {
RegValueType type;
sal_uInt32 size;
- if (subKey.getValueInfo(rtl::OUString(), &type, &size)
- != REG_NO_ERROR)
+ if (subKey.getValueInfo(rtl::OUString(), &type, &size) != REG_NO_ERROR)
{
- if (options.forceOutput()) {
+ if (options.forceOutput())
+ {
fprintf(
stdout,
("WARNING: could not read key \"%s\" in registry"
" \"%s\"\n"),
U2S(subKeyNames.getElement(i)),
- options.getRegName1().getStr());
+ options.getRegName1().c_str());
}
- } else if (type == RG_VALUETYPE_BINARY) {
- char * value = new char[size];
+ }
+ else if (type == RG_VALUETYPE_BINARY)
+ {
bool published = false;
- if (subKey.getValue(rtl::OUString(), value) != REG_NO_ERROR)
+ std::vector< sal_uInt8 > value(size);
+ if (subKey.getValue(rtl::OUString(), &value[0]) != REG_NO_ERROR)
{
- if (options.forceOutput()) {
+ if (options.forceOutput())
+ {
fprintf(
stdout,
("WARNING: could not read key \"%s\" in"
" registry \"%s\"\n"),
U2S(subKeyNames.getElement(i)),
- options.getRegName1().getStr());
+ options.getRegName1().c_str());
}
- } else {
- published = typereg::Reader(
- value, size, false, TYPEREG_VERSION_1).
- isPublished();
}
- delete[] value;
- if (published) {
+ else
+ {
+ published = typereg::Reader(&value[0], value.size(), false, TYPEREG_VERSION_1).isPublished();
+ }
+ if (published)
+ {
return true;
}
}
@@ -2056,7 +1721,9 @@ static bool hasPublishedChildren(RegistryKey & key) {
}
static sal_uInt32 checkDifferences(
- RegistryKey& key, StringSet& keys, RegistryKeyNames& subKeyNames1,
+ Options_Impl const & options,
+ RegistryKey& key, StringSet& keys,
+ RegistryKeyNames& subKeyNames1,
RegistryKeyNames& subKeyNames2)
{
sal_uInt32 nError = 0;
@@ -2083,81 +1750,89 @@ static sal_uInt32 checkDifferences(
if ( options.forceOutput() )
{
fprintf(stdout, "EXISTENCE: key \"%s\" exists only in registry \"%s\"\n",
- U2S(subKeyNames1.getElement(i)), options.getRegName1().getStr());
+ U2S(subKeyNames1.getElement(i)), options.getRegName1().c_str());
}
nError++;
}
else
{
rtl::OUString keyName(subKeyNames1.getElement(i));
- if (!options.matchedWithExcludeKey(keyName)) {
+ if (!options.matchedWithExcludeKey(keyName))
+ {
keyName = keyName.copy(keyName.lastIndexOf('/') + 1);
RegistryKey subKey;
- if (key.openKey(keyName, subKey)) {
- if (options.forceOutput()) {
+ if (key.openKey(keyName, subKey))
+ {
+ if (options.forceOutput())
+ {
fprintf(
stdout,
("ERROR: could not open key \"%s\" in registry"
" \"%s\"\n"),
U2S(subKeyNames1.getElement(i)),
- options.getRegName1().getStr());
+ options.getRegName1().c_str());
}
++nError;
}
- if (subKey.isValid()) {
+ if (subKey.isValid())
+ {
RegValueType type;
sal_uInt32 size;
- if (subKey.getValueInfo(rtl::OUString(), &type, &size)
- != REG_NO_ERROR)
+ if (subKey.getValueInfo(rtl::OUString(), &type, &size) != REG_NO_ERROR)
{
- if (options.forceOutput()) {
+ if (options.forceOutput())
+ {
fprintf(
stdout,
("ERROR: could not read key \"%s\" in"
" registry \"%s\"\n"),
U2S(subKeyNames1.getElement(i)),
- options.getRegName1().getStr());
+ options.getRegName1().c_str());
}
++nError;
- } else if (type == RG_VALUETYPE_BINARY) {
- char * value = new char[size];
- if (subKey.getValue(rtl::OUString(), value)
- != REG_NO_ERROR)
+ }
+ else if (type == RG_VALUETYPE_BINARY)
+ {
+ std::vector< sal_uInt8 > value(size);
+ if (subKey.getValue(rtl::OUString(), &value[0]) != REG_NO_ERROR)
{
- if (options.forceOutput()) {
+ if (options.forceOutput())
+ {
fprintf(
stdout,
("ERROR: could not read key \"%s\" in"
" registry \"%s\"\n"),
U2S(subKeyNames1.getElement(i)),
- options.getRegName1().getStr());
+ options.getRegName1().c_str());
}
++nError;
- } else {
- typereg::Reader reader(
- value, size, false, TYPEREG_VERSION_1);
- if (reader.getTypeClass() == RT_TYPE_MODULE) {
- if (options.checkUnpublished()
- || hasPublishedChildren(subKey))
+ }
+ else
+ {
+ typereg::Reader reader(&value[0], value.size(), false, TYPEREG_VERSION_1);
+ if (reader.getTypeClass() == RT_TYPE_MODULE)
+ {
+ if (options.checkUnpublished() || hasPublishedChildren(options, subKey))
{
- if (options.forceOutput()) {
+ if (options.forceOutput())
+ {
fprintf(
stdout,
("EXISTENCE: module \"%s\""
" %sexists only in registry"
" 1\n"),
- U2S(subKeyNames1.getElement(
- i)),
+ U2S(subKeyNames1.getElement(i)),
(options.checkUnpublished()
? ""
: "with published children "));
}
++nError;
}
- } else if (options.checkUnpublished()
- || reader.isPublished())
+ }
+ else if (options.checkUnpublished() || reader.isPublished())
{
- if (options.forceOutput()) {
+ if (options.forceOutput())
+ {
fprintf(
stdout,
("EXISTENCE: %spublished key \"%s\""
@@ -2168,7 +1843,6 @@ static sal_uInt32 checkDifferences(
++nError;
}
}
- delete[] value;
}
}
}
@@ -2193,7 +1867,7 @@ static sal_uInt32 checkDifferences(
if ( options.forceOutput() )
{
fprintf(stdout, "EXISTENCE: key \"%s\" exists only in registry \"%s\"\n",
- U2S(subKeyNames2.getElement(i)), options.getRegName2().getStr());
+ U2S(subKeyNames2.getElement(i)), options.getRegName2().c_str());
}
nError++;
}
@@ -2201,7 +1875,10 @@ static sal_uInt32 checkDifferences(
return nError;
}
-static sal_uInt32 compareKeys(RegistryKey& key1, RegistryKey& key2)
+static sal_uInt32 compareKeys(
+ Options_Impl const & options,
+ RegistryKey& key1,
+ RegistryKey& key2)
{
sal_uInt32 nError = 0;
@@ -2209,16 +1886,17 @@ static sal_uInt32 compareKeys(RegistryKey& key1, RegistryKey& key2)
RegValueType valueType2 = RG_VALUETYPE_NOT_DEFINED;
sal_uInt32 size1 = 0;
sal_uInt32 size2 = 0;
+
OUString tmpName;
RegError e1 = key1.getValueInfo(tmpName, &valueType1, &size1);
RegError e2 = key2.getValueInfo(tmpName, &valueType2, &size2);
-
- if ( e1 == e2 && e1 != REG_VALUE_NOT_EXISTS && e1 != REG_INVALID_VALUE )
+ if ( (e1 == e2) && (e1 != REG_VALUE_NOT_EXISTS) && (e1 != REG_INVALID_VALUE) )
{
- nError += checkValueDifference(key1, valueType1, size1, key2, valueType2, size2);
- } else
+ nError += checkValueDifference(options, key1, valueType1, size1, key2, valueType2, size2);
+ }
+ else
{
- if ( e1 != REG_INVALID_VALUE || e2 != REG_INVALID_VALUE )
+ if ( (e1 != REG_INVALID_VALUE) || (e2 != REG_INVALID_VALUE) )
{
if ( options.forceOutput() )
{
@@ -2235,16 +1913,14 @@ static sal_uInt32 compareKeys(RegistryKey& key1, RegistryKey& key2)
key2.getKeyNames(tmpName, subKeyNames2);
StringSet keys;
- nError += checkDifferences(key1, keys, subKeyNames1, subKeyNames2);
+ nError += checkDifferences(options, key1, keys, subKeyNames1, subKeyNames2);
StringSet::iterator iter = keys.begin();
StringSet::iterator end = keys.end();
- RegistryKey subKey1, subKey2;
- OUString keyName;
while ( iter != end )
{
- keyName = OUString(*iter);
+ OUString keyName(*iter);
if ( options.matchedWithExcludeKey(keyName) )
{
++iter;
@@ -2253,30 +1929,33 @@ static sal_uInt32 compareKeys(RegistryKey& key1, RegistryKey& key2)
sal_Int32 nPos = keyName.lastIndexOf( '/' );
keyName = keyName.copy( nPos != -1 ? nPos+1 : 0 );
+
+ RegistryKey subKey1;
if ( key1.openKey(keyName, subKey1) )
{
if ( options.forceOutput() )
{
fprintf(stdout, "ERROR: could not open key \"%s\" in registry \"%s\"\n",
- U2S(*iter), options.getRegName1().getStr());
+ U2S(*iter), options.getRegName1().c_str());
}
nError++;
}
+
+ RegistryKey subKey2;
if ( key2.openKey(keyName, subKey2) )
{
if ( options.forceOutput() )
{
fprintf(stdout, "ERROR: could not open key \"%s\" in registry \"%s\"\n",
- U2S(*iter), options.getRegName2().getStr());
+ U2S(*iter), options.getRegName2().c_str());
}
nError++;
}
+
if ( subKey1.isValid() && subKey2.isValid() )
{
- nError += compareKeys(subKey1, subKey2);
+ nError += compareKeys(options, subKey1, subKey2);
}
- subKey1.releaseKey();
- subKey2.releaseKey();
++iter;
}
@@ -2289,93 +1968,107 @@ int main( int argc, char * argv[] )
int _cdecl main( int argc, char * argv[] )
#endif
{
- if ( !options.initOptions(argc, argv) )
+ std::vector< std::string > args;
+
+ Options_Impl options(argv[0]);
+ for (int i = 1; i < argc; i++)
{
- exit(1);
+ if (!Options::checkArgument(args, argv[i], strlen(argv[i])))
+ {
+ // failure.
+ options.printUsage();
+ return (1);
+ }
+ }
+ if (!options.initOptions(args))
+ {
+ return (1);
}
- OUString regName1( convertToFileUrl(options.getRegName1()) );
- OUString regName2( convertToFileUrl(options.getRegName2()) );
-
- Registry reg1;
- Registry reg2;
+ OUString regName1( convertToFileUrl(options.getRegName1().c_str(), options.getRegName1().size()) );
+ OUString regName2( convertToFileUrl(options.getRegName2().c_str(), options.getRegName2().size()) );
+ Registry reg1, reg2;
if ( reg1.open(regName1, REG_READONLY) )
{
fprintf(stdout, "%s: open registry \"%s\" failed\n",
- options.getProgramName().getStr(), options.getRegName1().getStr());
- exit(2);
+ options.getProgramName().c_str(), options.getRegName1().c_str());
+ return (2);
}
if ( reg2.open(regName2, REG_READONLY) )
{
fprintf(stdout, "%s: open registry \"%s\" failed\n",
- options.getProgramName().getStr(), options.getRegName2().getStr());
- exit(3);
+ options.getProgramName().c_str(), options.getRegName2().c_str());
+ return (3);
}
RegistryKey key1, key2;
if ( reg1.openRootKey(key1) )
{
fprintf(stdout, "%s: open root key of registry \"%s\" failed\n",
- options.getProgramName().getStr(), options.getRegName1().getStr());
- exit(4);
+ options.getProgramName().c_str(), options.getRegName1().c_str());
+ return (4);
}
if ( reg2.openRootKey(key2) )
{
fprintf(stdout, "%s: open root key of registry \"%s\" failed\n",
- options.getProgramName().getStr(), options.getRegName2().getStr());
- exit(5);
+ options.getProgramName().c_str(), options.getRegName2().c_str());
+ return (5);
}
+
if ( options.isStartKeyValid() )
{
- if ( options.matchedWithExcludeKey( S2U(options.getStartKey()) ) )
+ if ( options.matchedWithExcludeKey( options.getStartKey() ) )
{
fprintf(stdout, "%s: start key is equal to one of the exclude keys\n",
- options.getProgramName().getStr());
- exit(6);
+ options.getProgramName().c_str());
+ return (6);
}
RegistryKey sk1, sk2;
- if ( key1.openKey(S2U(options.getStartKey()), sk1) )
+ if ( key1.openKey(options.getStartKey(), sk1) )
{
fprintf(stdout, "%s: open start key of registry \"%s\" failed\n",
- options.getProgramName().getStr(), options.getRegName1().getStr());
- exit(7);
+ options.getProgramName().c_str(), options.getRegName1().c_str());
+ return (7);
}
- if ( key2.openKey(S2U(options.getStartKey()), sk2) )
+ if ( key2.openKey(options.getStartKey(), sk2) )
{
fprintf(stdout, "%s: open start key of registry \"%s\" failed\n",
- options.getProgramName().getStr(), options.getRegName2().getStr());
- exit(8);
+ options.getProgramName().c_str(), options.getRegName2().c_str());
+ return (8);
}
key1 = sk1;
key2 = sk2;
}
- sal_uInt32 nError = compareKeys(key1, key2);
+ sal_uInt32 nError = compareKeys(options, key1, key2);
if ( nError )
{
if ( options.unoTypeCheck() )
{
fprintf(stdout, "%s: registries are incompatible: %lu differences!\n",
- options.getProgramName().getStr(),
+ options.getProgramName().c_str(),
sal::static_int_cast< unsigned long >(nError));
- } else
+ }
+ else
{
fprintf(stdout, "%s: registries contain %lu differences!\n",
- options.getProgramName().getStr(),
+ options.getProgramName().c_str(),
sal::static_int_cast< unsigned long >(nError));
}
- } else
+ }
+ else
{
if ( options.unoTypeCheck() )
{
fprintf(stdout, "%s: registries are compatible!\n",
- options.getProgramName().getStr());
- } else
+ options.getProgramName().c_str());
+ }
+ else
{
fprintf(stdout, "%s: registries are equal!\n",
- options.getProgramName().getStr());
+ options.getProgramName().c_str());
}
}
@@ -2384,18 +2077,17 @@ int _cdecl main( int argc, char * argv[] )
if ( reg1.close() )
{
fprintf(stdout, "%s: closing registry \"%s\" failed\n",
- options.getProgramName().getStr(), options.getRegName1().getStr());
- exit(9);
+ options.getProgramName().c_str(), options.getRegName1().c_str());
+ return (9);
}
if ( reg2.close() )
{
fprintf(stdout, "%s: closing registry \"%s\" failed\n",
- options.getProgramName().getStr(), options.getRegName2().getStr());
- exit(10);
+ options.getProgramName().c_str(), options.getRegName2().c_str());
+ return (10);
}
- return nError > 0 ? 11 : 0;
+ return ((nError > 0) ? 11 : 0);
}
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ \ No newline at end of file
diff --git a/registry/tools/regmerge.cxx b/registry/tools/regmerge.cxx
index 81568a282128..9e25bc56f396 100644
--- a/registry/tools/regmerge.cxx
+++ b/registry/tools/regmerge.cxx
@@ -29,70 +29,35 @@
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_registry.hxx"
-#include <stdio.h>
-#include <string.h>
-
#include "registry/registry.hxx"
-#include <rtl/ustring.hxx>
-#include <rtl/alloc.h>
-#include <osl/process.h>
-#include <osl/diagnose.h>
-#include <osl/thread.h>
-#include <osl/file.hxx>
+#include "fileurl.hxx"
+#include "options.hxx"
-#ifdef SAL_UNX
-#define SEPARATOR '/'
-#else
-#define SEPARATOR '\\'
-#endif
+#include "rtl/ustring.hxx"
+#include "osl/diagnose.h"
-using namespace ::rtl;
-using namespace ::osl;
+#include <stdio.h>
+#include <string.h>
-sal_Bool isFileUrl(const OString& fileName)
-{
- if (fileName.indexOf("file://") == 0 )
- return sal_True;
- return sal_False;
-}
+using namespace rtl;
+using namespace registry::tools;
-OUString convertToFileUrl(const OString& fileName)
+class Options_Impl : public Options
{
- if ( isFileUrl(fileName) )
- {
- return OStringToOUString(fileName, osl_getThreadTextEncoding());
- }
+ bool m_bVerbose;
- OUString uUrlFileName;
- OUString uFileName(fileName.getStr(), fileName.getLength(), osl_getThreadTextEncoding());
- if ( fileName.indexOf('.') == 0 || fileName.indexOf(SEPARATOR) < 0 )
- {
- OUString uWorkingDir;
- if (osl_getProcessWorkingDir(&uWorkingDir.pData) != osl_Process_E_None)
- {
- OSL_ASSERT(false);
- }
- if (FileBase::getAbsoluteFileURL(uWorkingDir, uFileName, uUrlFileName)
- != FileBase::E_None)
- {
- OSL_ASSERT(false);
- }
- } else
- {
- if (FileBase::getFileURLFromSystemPath(uFileName, uUrlFileName)
- != FileBase::E_None)
- {
- OSL_ASSERT(false);
- }
- }
-
- return uUrlFileName;
-}
+public:
+ explicit Options_Impl (char const * program)
+ : Options(program), m_bVerbose(false)
+ {}
+ bool isVerbose() const { return m_bVerbose; }
-int realargc;
-char* realargv[2048];
+protected:
+ virtual void printUsage_Impl() const;
+ virtual bool initOptions_Impl(std::vector< std::string > & rArgs);
+};
-static void dumpHelp()
+void Options_Impl::printUsage_Impl() const
{
fprintf(stderr, "using: regmerge [-v|--verbose] mergefile mergeKeyName regfile_1 ... regfile_n\n");
fprintf(stderr, " regmerge @regcmds\nOptions:\n");
@@ -104,181 +69,114 @@ static void dumpHelp()
fprintf(stderr, " regfile_1..n : specifies one or more registry files which are merged.\n");
}
-static bool checkCommandFile(char* cmdfile)
+bool Options_Impl::initOptions_Impl (std::vector< std::string > & rArgs)
{
- FILE *commandfile;
- char option[256];
- bool bVerbose = false;
-
- commandfile = fopen(cmdfile+1, "r");
- if( commandfile == NULL )
+ std::vector< std::string >::iterator first = rArgs.begin(), last = rArgs.end();
+ if ((first != last) && ((*first)[0] == '-'))
{
- fprintf(stderr, "ERROR: Can't open command file \"%s\"\n", cmdfile);
- } else
- {
- while ( fscanf(commandfile, "%s", option) != EOF )
+ std::string option(*first);
+ if ((option.compare("-v") == 0) || (option.compare("--verbose") == 0))
{
- if (option[0]== '@')
- {
- bool bRet = checkCommandFile(option);
- // ensure that the option will not be overwritten
- if ( !bRet )
- bVerbose = bRet;
- } else {
- if (option[0]== '-') {
- if (strncmp(option, "-v", 2) == 0 ||
- strncmp(option, "--verbose", 9) == 0)
- {
- bVerbose = true;
- } else {
- fprintf(stderr, "ERROR: unknown option \"%s\"\n", option);
- dumpHelp();
- exit(-1);
- }
- }else
- {
- realargv[realargc]= strdup(option);
- realargc++;
- }
- }
- if (realargc == 2047)
- {
- fprintf(stderr, "ERROR: more than 2048 arguments.\n");
- break;
- }
+ m_bVerbose = true;
}
- fclose(commandfile);
- }
-
- return bVerbose;
-}
-
-static bool checkCommandArgs(int argc, char **argv)
-{
- bool bVerbose = false;
-
- realargc = 0;
-
- for (int i=0; i<argc; i++)
- {
- if (argv[i][0]== '@')
+ else if ((option.compare("-h") == 0) || (option.compare("-?") == 0))
{
- bool bRet = checkCommandFile(argv[i]);
- // ensure that the option will not be overwritten
- if ( !bRet )
- bVerbose = bRet;
- } else {
- if (argv[i][0]== '-') {
- if (strncmp(argv[i], "-v", 2) == 0 ||
- strncmp(argv[i], "--verbose", 9) == 0)
- {
- bVerbose = true;
- } else {
- fprintf(stderr, "ERROR: unknown option \"%s\"\n", argv[i]);
- dumpHelp();
- exit(-1);
- }
- } else
- {
- realargv[realargc]= strdup(argv[i]);
- realargc++;
- }
+ return printUsage();
}
+ else
+ {
+ return badOption("unknown", option.c_str());
+ }
+ (void) rArgs.erase(first);
}
-
- return bVerbose;
-}
-
-static void cleanCommandArgs()
-{
- for (int i=0; i<realargc; i++)
- {
- free(realargv[i]);
- }
+ return true;
}
-
-
#if (defined UNX) || (defined OS2)
int main( int argc, char * argv[] )
#else
int _cdecl main( int argc, char * argv[] )
#endif
{
- bool bVerbose = checkCommandArgs(argc, argv);
+ Options_Impl options(argv[0]);
- if (realargc < 4)
+ std::vector< std::string > args;
+ for (int i = 1; i < argc; i++)
{
- dumpHelp();
- cleanCommandArgs();
- exit(1);
+ if (!Options::checkArgument(args, argv[i], strlen(argv[i])))
+ {
+ options.printUsage();
+ return (1);
+ }
+ }
+ if (!options.initOptions(args))
+ {
+ return (1);
+ }
+ if (args.size() < 3)
+ {
+ options.printUsage();
+ return (1);
}
-
- ::rtl::OUString regName( convertToFileUrl(realargv[1]) );
Registry reg;
+ OUString regName( convertToFileUrl(args[0].c_str(), args[0].size()) );
if (reg.open(regName, REG_READWRITE) != REG_NO_ERROR)
{
if (reg.create(regName) != REG_NO_ERROR)
{
- if (bVerbose)
- fprintf(stderr, "open registry \"%s\" failed\n", realargv[1]);
- cleanCommandArgs();
- exit(-1);
+ if (options.isVerbose())
+ fprintf(stderr, "open registry \"%s\" failed\n", args[0].c_str());
+ return (-1);
}
}
RegistryKey rootKey;
- if (reg.openRootKey(rootKey) == REG_NO_ERROR)
+ if (reg.openRootKey(rootKey) != REG_NO_ERROR)
+ {
+ if (options.isVerbose())
+ fprintf(stderr, "open root key of registry \"%s\" failed\n", args[0].c_str());
+ return (-4);
+ }
+
+ OUString mergeKeyName( OUString::createFromAscii(args[1].c_str()) );
+ for (size_t i = 2; i < args.size(); i++)
{
- ::rtl::OUString mergeKeyName( ::rtl::OUString::createFromAscii(realargv[2]) );
- ::rtl::OUString targetRegName;
- for (int i = 3; i < realargc; i++)
+ OUString targetRegName( convertToFileUrl(args[i].c_str(), args[i].size()) );
+ RegError _ret = reg.mergeKey(rootKey, mergeKeyName, targetRegName, sal_False, options.isVerbose());
+ if (_ret != REG_NO_ERROR)
{
- targetRegName = convertToFileUrl(realargv[i]);
- RegError _ret = reg.mergeKey(rootKey, mergeKeyName, targetRegName, sal_False, bVerbose);
- if (_ret != REG_NO_ERROR)
+ if (_ret == REG_MERGE_CONFLICT)
{
- if (_ret == REG_MERGE_CONFLICT)
- {
- if (bVerbose)
- fprintf(stderr, "merging registry \"%s\" under key \"%s\" in registry \"%s\".\n",
- realargv[i], realargv[2], realargv[1]);
- } else
- {
- if (bVerbose)
- fprintf(stderr, "ERROR: merging registry \"%s\" under key \"%s\" in registry \"%s\" failed.\n",
- realargv[i], realargv[2], realargv[1]);
- exit(-2);
- }
- } else
- {
- if (bVerbose)
+ if (options.isVerbose())
fprintf(stderr, "merging registry \"%s\" under key \"%s\" in registry \"%s\".\n",
- realargv[i], realargv[2], realargv[1]);
+ args[i].c_str(), args[1].c_str(), args[0].c_str());
+ }
+ else
+ {
+ if (options.isVerbose())
+ fprintf(stderr, "ERROR: merging registry \"%s\" under key \"%s\" in registry \"%s\" failed.\n",
+ args[i].c_str(), args[1].c_str(), args[0].c_str());
+ return (-2);
}
}
-
- rootKey.releaseKey();
- } else
- {
- if (bVerbose)
- fprintf(stderr, "open root key of registry \"%s\" failed\n",
- realargv[1]);
- exit(-4);
+ else
+ {
+ if (options.isVerbose())
+ fprintf(stderr, "merging registry \"%s\" under key \"%s\" in registry \"%s\".\n",
+ args[i].c_str(), args[1].c_str(), args[0].c_str());
+ }
}
+ rootKey.releaseKey();
if (reg.close() != REG_NO_ERROR)
{
- if (bVerbose)
- fprintf(stderr, "closing registry \"%s\" failed\n", realargv[1]);
- cleanCommandArgs();
- exit(-5);
+ if (options.isVerbose())
+ fprintf(stderr, "closing registry \"%s\" failed\n", args[0].c_str());
+ return (-5);
}
- cleanCommandArgs();
return(0);
}
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ \ No newline at end of file
diff --git a/registry/tools/regview.cxx b/registry/tools/regview.cxx
index 88c1632de867..482d62b44f9b 100644
--- a/registry/tools/regview.cxx
+++ b/registry/tools/regview.cxx
@@ -29,65 +29,16 @@
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_registry.hxx"
-#include <stdio.h>
-
#include "registry/registry.h"
-#include <rtl/ustring.hxx>
-#include <rtl/alloc.h>
-#include <osl/process.h>
-#include <osl/diagnose.h>
-#include <osl/thread.h>
-#include <osl/file.hxx>
-
-#ifdef SAL_UNX
-#define SEPARATOR '/'
-#else
-#define SEPARATOR '\\'
-#endif
-
-using namespace ::rtl;
-using namespace ::osl;
-
-sal_Bool isFileUrl(const OString& fileName)
-{
- if (fileName.indexOf("file://") == 0 )
- return sal_True;
- return sal_False;
-}
+#include "fileurl.hxx"
-OUString convertToFileUrl(const OString& fileName)
-{
- if ( isFileUrl(fileName) )
- {
- return OStringToOUString(fileName, osl_getThreadTextEncoding());
- }
+#include "rtl/ustring.hxx"
- OUString uUrlFileName;
- OUString uFileName(fileName.getStr(), fileName.getLength(), osl_getThreadTextEncoding());
- if ( fileName.indexOf('.') == 0 || fileName.indexOf(SEPARATOR) < 0 )
- {
- OUString uWorkingDir;
- if (osl_getProcessWorkingDir(&uWorkingDir.pData) != osl_Process_E_None)
- {
- OSL_ASSERT(false);
- }
- if (FileBase::getAbsoluteFileURL(uWorkingDir, uFileName, uUrlFileName)
- != FileBase::E_None)
- {
- OSL_ASSERT(false);
- }
- } else
- {
- if (FileBase::getFileURLFromSystemPath(uFileName, uUrlFileName)
- != FileBase::E_None)
- {
- OSL_ASSERT(false);
- }
- }
-
- return uUrlFileName;
-}
+#include <stdio.h>
+#include <string.h>
+using rtl::OUString;
+using namespace registry::tools;
#if (defined UNX) || (defined OS2)
int main( int argc, char * argv[] )
@@ -104,7 +55,7 @@ int _cdecl main( int argc, char * argv[] )
exit(1);
}
- OUString regName( convertToFileUrl(argv[1]) );
+ OUString regName( convertToFileUrl(argv[1], strlen(argv[1])) );
if (reg_openRegistry(regName.pData, &hReg, REG_READONLY))
{
fprintf(stderr, "open registry \"%s\" failed\n", argv[1]);
@@ -128,12 +79,14 @@ int _cdecl main( int argc, char * argv[] )
fprintf(stderr, "closing key \"%s\" of registry \"%s\" failed\n",
argv[2], argv[1]);
}
- } else
+ }
+ else
{
fprintf(stderr, "key \"%s\" not exists in registry \"%s\"\n",
argv[2], argv[1]);
}
- } else
+ }
+ else
{
if (reg_dumpRegistry(hRootKey))
{
@@ -145,7 +98,8 @@ int _cdecl main( int argc, char * argv[] )
{
fprintf(stderr, "closing root key of registry \"%s\" failed\n", argv[1]);
}
- } else
+ }
+ else
{
fprintf(stderr, "open root key of registry \"%s\" failed\n", argv[1]);
}
diff --git a/sal/cppunittester/cppunittester.cxx b/sal/cppunittester/cppunittester.cxx
index 87d250114eb9..dd3d724298e3 100644
--- a/sal/cppunittester/cppunittester.cxx
+++ b/sal/cppunittester/cppunittester.cxx
@@ -29,13 +29,27 @@
#include "precompiled_sal.hxx"
#include "sal/config.h"
-#include <cstdlib>
-#include <iostream>
-
#ifdef WNT
#include <windows.h>
#endif
+#include <cstdlib>
+#include <iostream>
+#include <limits>
+#include <string>
+
+#include "cppunittester/protectorfactory.hxx"
+#include "osl/module.h"
+#include "osl/module.hxx"
+#include "osl/thread.h"
+#include "rtl/process.h"
+#include "rtl/string.h"
+#include "rtl/string.hxx"
+#include "rtl/textcvt.h"
+#include "rtl/ustring.hxx"
+#include "sal/main.h"
+#include "sal/types.h"
+
#include "cppunit/CompilerOutputter.h"
#include "cppunit/TestResult.h"
#include "cppunit/TestResultCollector.h"
@@ -43,15 +57,36 @@
#include "cppunit/extensions/TestFactoryRegistry.h"
#include "cppunit/plugin/PlugInManager.h"
#include "cppunit/portability/Stream.h"
-#include "osl/thread.h"
-#include "rtl/process.h"
-#include "rtl/string.hxx"
-#include "rtl/ustring.hxx"
-#include "sal/main.h"
-SAL_IMPLEMENT_MAIN()
-{
+namespace {
+
+void usageFailure() {
+ std::cerr
+ << ("Usage: cppunittester (--protector <shared-library-path>"
+ " <function-symbol>)* <shared-library-path>")
+ << std::endl;
+ std::exit(EXIT_FAILURE);
+}
+
+rtl::OUString getArgument(sal_Int32 index) {
+ rtl::OUString arg;
+ rtl_getAppCommandArg(index, &arg.pData);
+ return arg;
+}
+
+std::string convertLazy(rtl::OUString const & s16) {
+ rtl::OString s8(rtl::OUStringToOString(s16, osl_getThreadTextEncoding()));
+ return std::string(
+ s8.getStr(),
+ ((static_cast< sal_uInt32 >(s8.getLength())
+ > std::numeric_limits< std::string::size_type >::max())
+ ? std::numeric_limits< std::string::size_type >::max()
+ : static_cast< std::string::size_type >(s8.getLength())));
+}
+}
+
+SAL_IMPLEMENT_MAIN() {
#ifdef WNT
//Disable Dr-Watson in order to crash simply without popup dialogs under
//windows
@@ -59,31 +94,55 @@ SAL_IMPLEMENT_MAIN()
SetErrorMode(SEM_NOGPFAULTERRORBOX|dwMode);
#endif
- sal_uInt32 nCommandArgs = rtl_getAppCommandArgCount();
- if (nCommandArgs < 1)
- {
- std::cerr << "Usage: cppunittester <shared-library-path>" << std::endl;
- return EXIT_FAILURE;
+ CppUnit::TestResult result;
+ sal_uInt32 index = 0;
+ for (; index < rtl_getAppCommandArgCount(); index += 3) {
+ if (!getArgument(index).equalsAsciiL(
+ RTL_CONSTASCII_STRINGPARAM("--protector")))
+ {
+ break;
+ }
+ if (rtl_getAppCommandArgCount() - index < 3) {
+ usageFailure();
+ }
+ rtl::OUString lib(getArgument(index + 1));
+ rtl::OUString sym(getArgument(index + 2));
+ oslGenericFunction fn = (new osl::Module(lib, SAL_LOADMODULE_GLOBAL))
+ ->getFunctionSymbol(sym);
+ CppUnit::Protector * p = fn == 0
+ ? 0
+ : (*reinterpret_cast< cppunittester::ProtectorFactory * >(fn))();
+ if (p == 0) {
+ std::cerr
+ << "Failure instantiating protector \"" << convertLazy(lib)
+ << "\", \"" << convertLazy(sym) << '"' << std::endl;
+ std::exit(EXIT_FAILURE);
+ }
+ result.pushProtector(p);
+ }
+ if (rtl_getAppCommandArgCount() - index < 1) {
+ usageFailure();
}
+
std::string testlib;
{
rtl::OUString path;
- rtl_getAppCommandArg(0, &path.pData);
+ rtl_getAppCommandArg(index, &path.pData);
testlib = rtl::OUStringToOString(path, osl_getThreadTextEncoding()).getStr();
}
std::string args = testlib;
- for (sal_uInt32 i = 1; i < nCommandArgs; ++i)
+ for (sal_uInt32 i = index + 1; i < rtl_getAppCommandArgCount(); ++i)
{
rtl::OUString arg;
rtl_getAppCommandArg(i, &arg.pData);
args += ' ';
args += rtl::OUStringToOString(arg, osl_getThreadTextEncoding()).getStr();
}
+
CppUnit::PlugInManager manager;
manager.load(testlib, args);
CppUnit::TestRunner runner;
runner.addTest(CppUnit::TestFactoryRegistry::getRegistry().makeTest());
- CppUnit::TestResult result;
CppUnit::TestResultCollector collector;
result.addListener(&collector);
runner.run(result);
diff --git a/sal/inc/cppunittester/protectorfactory.hxx b/sal/inc/cppunittester/protectorfactory.hxx
new file mode 100644
index 000000000000..c309dbe8aa85
--- /dev/null
+++ b/sal/inc/cppunittester/protectorfactory.hxx
@@ -0,0 +1,45 @@
+/*************************************************************************
+*
+* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+*
+* Copyright 2000, 2011 Oracle and/or its affiliates.
+*
+* OpenOffice.org - a multi-platform office productivity suite
+*
+* This file is part of OpenOffice.org.
+*
+* OpenOffice.org is free software: you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License version 3
+* only, as published by the Free Software Foundation.
+*
+* OpenOffice.org is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU Lesser General Public License version 3 for more details
+* (a copy is included in the LICENSE file that accompanied this code).
+*
+* You should have received a copy of the GNU Lesser General Public License
+* version 3 along with OpenOffice.org. If not, see
+* <http://www.openoffice.org/license.html>
+* for a copy of the LGPLv3 License.
+*
+************************************************************************/
+
+#ifndef INCLUDED_CPPUNITTESTER_PROTECTORFACTORY_HXX
+#define INCLUDED_CPPUNITTESTER_PROTECTORFACTORY_HXX
+
+#include "sal/config.h"
+
+#include "sal/types.h"
+
+namespace CppUnit { class Protector; }
+
+namespace cppunittester {
+
+// The type of CppUnit::Protector factory functions that can be plugged into
+// cppunittester:
+extern "C" typedef CppUnit::Protector * SAL_CALL ProtectorFactory();
+
+}
+
+#endif
diff --git a/sal/osl/os2/diagnose.c b/sal/osl/os2/diagnose.c
index 999c304ae77e..f1b0048703cf 100644
--- a/sal/osl/os2/diagnose.c
+++ b/sal/osl/os2/diagnose.c
@@ -125,7 +125,8 @@ sal_Bool SAL_CALL osl_assertFailedLine( const sal_Char* pszFileName, sal_Int32 n
fputs(szMessage, stderr);
- return sal_True; /* abort */
+ char const * env = getenv( "SAL_DIAGNOSE_ABORT" );
+ return ( ( env != NULL ) && ( *env != '\0' ) );
}
/*----------------------------------------------------------------------------*/
diff --git a/sal/osl/unx/diagnose.c b/sal/osl/unx/diagnose.c
index 36c9c0d5fec1..5425810ae408 100644
--- a/sal/osl/unx/diagnose.c
+++ b/sal/osl/unx/diagnose.c
@@ -219,6 +219,11 @@ sal_Bool SAL_CALL osl_assertFailedLine (
oslDebugMessageFunc f = g_pDebugMessageFunc;
char szMessage[1024];
+ // after reporting the assertion, abort if told so by SAL_DIAGNOSE_ABORT, but *not* if
+ // assertions are routed to some external instance
+ char const * env = getenv( "SAL_DIAGNOSE_ABORT" );
+ sal_Bool const doAbort = ( ( env != NULL ) && ( *env != '\0' ) && ( f == NULL ) );
+
/* If there's a callback for detailed messages, use it */
if ( g_pDetailedDebugMessageFunc != NULL )
{
@@ -228,7 +233,7 @@ sal_Bool SAL_CALL osl_assertFailedLine (
/* if SAL assertions are disabled in general, stop here */
if ( getenv("DISABLE_SAL_DBGBOX") )
- return sal_False;
+ return doAbort;
/* format message into buffer */
if (pszMessage != 0)
@@ -253,9 +258,10 @@ sal_Bool SAL_CALL osl_assertFailedLine (
/* output backtrace */
osl_diagnose_backtrace_Impl(f);
- /* release lock and leave, w/o calling osl_breakDebug() */
+ /* release lock and leave */
pthread_mutex_unlock(&g_mutex);
- return sal_False;
+
+ return doAbort;
}
/************************************************************************/
@@ -263,7 +269,7 @@ sal_Bool SAL_CALL osl_assertFailedLine (
/************************************************************************/
void SAL_CALL osl_breakDebug()
{
- exit(0);
+ abort();
}
/************************************************************************/
@@ -310,4 +316,4 @@ void osl_trace(char const * pszFormat, ...) {
va_end(args);
}
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ \ No newline at end of file
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sal/osl/unx/file.cxx b/sal/osl/unx/file.cxx
index ae8b161893da..a1984d9d3d45 100644
--- a/sal/osl/unx/file.cxx
+++ b/sal/osl/unx/file.cxx
@@ -216,7 +216,8 @@ FileHandle_Impl::Allocator::~Allocator()
void FileHandle_Impl::Allocator::allocate (sal_uInt8 ** ppBuffer, size_t * pnSize)
{
OSL_PRECOND((0 != ppBuffer) && (0 != pnSize), "FileHandle_Impl::Allocator::allocate(): contract violation");
- *ppBuffer = static_cast< sal_uInt8* >(rtl_cache_alloc(m_cache)), *pnSize = m_bufsiz;
+ if ((0 != ppBuffer) && (0 != pnSize))
+ *ppBuffer = static_cast< sal_uInt8* >(rtl_cache_alloc(m_cache)), *pnSize = m_bufsiz;
}
void FileHandle_Impl::Allocator::deallocate (sal_uInt8 * pBuffer)
{
diff --git a/sal/osl/unx/file_misc.cxx b/sal/osl/unx/file_misc.cxx
index 61f486995f29..2e822efb7e27 100644
--- a/sal/osl/unx/file_misc.cxx
+++ b/sal/osl/unx/file_misc.cxx
@@ -325,10 +325,8 @@ oslFileError SAL_CALL osl_getDirectoryItem( rtl_uString* ustrFileURL, oslDirecto
rtl_uString* ustrSystemPath = NULL;
oslFileError osl_error = osl_File_E_INVAL;
- OSL_ASSERT(ustrFileURL);
- OSL_ASSERT(pItem);
-
- if (0 == ustrFileURL->length || NULL == pItem)
+ OSL_ASSERT((0 != ustrFileURL) && (0 != pItem));
+ if ((0 == ustrFileURL) || (0 == ustrFileURL->length) || (0 == pItem))
return osl_File_E_INVAL;
osl_error = osl_getSystemPathFromFileURL_Ex(ustrFileURL, &ustrSystemPath, sal_False);
diff --git a/sal/osl/unx/file_path_helper.cxx b/sal/osl/unx/file_path_helper.cxx
index 76045efe661a..c956edfa29bf 100644
--- a/sal/osl/unx/file_path_helper.cxx
+++ b/sal/osl/unx/file_path_helper.cxx
@@ -74,19 +74,21 @@
void SAL_CALL osl_systemPathRemoveSeparator(rtl_uString* pustrPath)
{
- OSL_PRECOND(pustrPath, "osl_systemPathRemoveSeparator: Invalid parameter");
-
- // maybe there are more than one separator at end
- // so we run in a loop
- while ((pustrPath->length > 1) && (FPH_CHAR_PATH_SEPARATOR == pustrPath->buffer[pustrPath->length - 1]))
+ OSL_PRECOND(0 != pustrPath, "osl_systemPathRemoveSeparator: Invalid parameter");
+ if (0 != pustrPath)
{
- pustrPath->length--;
- pustrPath->buffer[pustrPath->length] = (sal_Unicode)'\0';
- }
+ // maybe there are more than one separator at end
+ // so we run in a loop
+ while ((pustrPath->length > 1) && (FPH_CHAR_PATH_SEPARATOR == pustrPath->buffer[pustrPath->length - 1]))
+ {
+ pustrPath->length--;
+ pustrPath->buffer[pustrPath->length] = (sal_Unicode)'\0';
+ }
- OSL_POSTCOND((0 == pustrPath->length) || (1 == pustrPath->length) || \
- (pustrPath->length > 1 && pustrPath->buffer[pustrPath->length - 1] != FPH_CHAR_PATH_SEPARATOR), \
- "osl_systemPathRemoveSeparator: Post condition failed");
+ OSL_POSTCOND((0 == pustrPath->length) || (1 == pustrPath->length) || \
+ (pustrPath->length > 1 && pustrPath->buffer[pustrPath->length - 1] != FPH_CHAR_PATH_SEPARATOR), \
+ "osl_systemPathRemoveSeparator: Post condition failed");
+ }
}
/*******************************************
@@ -95,21 +97,22 @@
void SAL_CALL osl_systemPathEnsureSeparator(rtl_uString** ppustrPath)
{
- OSL_PRECOND(ppustrPath && (NULL != *ppustrPath), \
- "osl_systemPathEnsureSeparator: Invalid parameter");
-
- rtl::OUString path(*ppustrPath);
- sal_Int32 lp = path.getLength();
- sal_Int32 i = path.lastIndexOf(FPH_CHAR_PATH_SEPARATOR);
-
- if ((lp > 1 && i != (lp - 1)) || ((lp < 2) && i < 0))
- {
- path += FPH_PATH_SEPARATOR();
- rtl_uString_assign(ppustrPath, path.pData);
- }
-
- OSL_POSTCOND(path.lastIndexOf(FPH_CHAR_PATH_SEPARATOR) == (path.getLength() - 1), \
- "osl_systemPathEnsureSeparator: Post condition failed");
+ OSL_PRECOND((0 != ppustrPath) && (0 != *ppustrPath), "osl_systemPathEnsureSeparator: Invalid parameter");
+ if ((0 != ppustrPath) && (0 != *ppustrPath))
+ {
+ rtl::OUString path(*ppustrPath);
+ sal_Int32 lp = path.getLength();
+ sal_Int32 i = path.lastIndexOf(FPH_CHAR_PATH_SEPARATOR);
+
+ if ((lp > 1 && i != (lp - 1)) || ((lp < 2) && i < 0))
+ {
+ path += FPH_PATH_SEPARATOR();
+ rtl_uString_assign(ppustrPath, path.pData);
+ }
+
+ OSL_POSTCOND(path.lastIndexOf(FPH_CHAR_PATH_SEPARATOR) == (path.getLength() - 1), \
+ "osl_systemPathEnsureSeparator: Post condition failed");
+ }
}
/*******************************************
@@ -118,8 +121,8 @@
sal_Bool SAL_CALL osl_systemPathIsRelativePath(const rtl_uString* pustrPath)
{
- OSL_PRECOND(pustrPath, "osl_systemPathIsRelativePath: Invalid parameter");
- return ((0 == pustrPath->length) || (pustrPath->buffer[0] != FPH_CHAR_PATH_SEPARATOR));
+ OSL_PRECOND(0 != pustrPath, "osl_systemPathIsRelativePath: Invalid parameter");
+ return ((0 == pustrPath) || (0 == pustrPath->length) || (pustrPath->buffer[0] != FPH_CHAR_PATH_SEPARATOR));
}
/******************************************
@@ -178,21 +181,16 @@
sal_Bool SAL_CALL osl_systemPathIsHiddenFileOrDirectoryEntry(
const rtl_uString* pustrPath)
{
- OSL_PRECOND(pustrPath, "osl_systemPathIsHiddenFileOrDirectoryEntry: Invalid parameter");
-
- sal_Bool is_hidden = sal_False;
+ OSL_PRECOND(0 != pustrPath, "osl_systemPathIsHiddenFileOrDirectoryEntry: Invalid parameter");
+ if ((0 == pustrPath) || (0 == pustrPath->length))
+ return sal_False;
- if (pustrPath->length > 0)
- {
- rtl::OUString fdp;
-
- osl_systemPathGetFileNameOrLastDirectoryPart(pustrPath, &fdp.pData);
-
- is_hidden = ((fdp.pData->length > 0) && (fdp.pData->buffer[0] == FPH_CHAR_DOT) &&
- !osl_systemPathIsLocalOrParentDirectoryEntry(fdp.pData));
- }
+ rtl::OUString fdp;
+ osl_systemPathGetFileNameOrLastDirectoryPart(pustrPath, &fdp.pData);
- return is_hidden;
+ return ((fdp.pData->length > 0) &&
+ (fdp.pData->buffer[0] == FPH_CHAR_DOT) &&
+ !osl_systemPathIsLocalOrParentDirectoryEntry(fdp.pData));
}
diff --git a/sal/osl/unx/process_impl.cxx b/sal/osl/unx/process_impl.cxx
index ac043339b899..49d6603612ae 100644
--- a/sal/osl/unx/process_impl.cxx
+++ b/sal/osl/unx/process_impl.cxx
@@ -480,17 +480,20 @@ extern "C" int _imp_setProcessLocale( rtl_Locale * );
*********************************************/
oslProcessError SAL_CALL osl_getProcessLocale( rtl_Locale ** ppLocale )
{
+ oslProcessError result = osl_Process_E_Unknown;
OSL_PRECOND(ppLocale, "osl_getProcessLocale(): Invalid parameter.");
+ if (ppLocale)
+ {
+ pthread_mutex_lock(&(g_process_locale.m_mutex));
- pthread_mutex_lock(&(g_process_locale.m_mutex));
-
- if (g_process_locale.m_pLocale == 0)
- _imp_getProcessLocale (&(g_process_locale.m_pLocale));
- *ppLocale = g_process_locale.m_pLocale;
-
- pthread_mutex_unlock (&(g_process_locale.m_mutex));
+ if (g_process_locale.m_pLocale == 0)
+ _imp_getProcessLocale (&(g_process_locale.m_pLocale));
+ *ppLocale = g_process_locale.m_pLocale;
+ result = osl_Process_E_None;
- return (osl_Process_E_None);
+ pthread_mutex_unlock (&(g_process_locale.m_mutex));
+ }
+ return (result);
}
/**********************************************
diff --git a/sal/osl/unx/profile.c b/sal/osl/unx/profile.c
index 6d6184887d4e..c2a0cc490af9 100644
--- a/sal/osl/unx/profile.c
+++ b/sal/osl/unx/profile.c
@@ -513,7 +513,6 @@ sal_Bool SAL_CALL osl_readProfileString(oslProfile Profile,
if ( pTmpProfile->m_bIsValid == sal_False )
{
- OSL_ASSERT(pProfile->m_bIsValid);
pthread_mutex_unlock(&(pTmpProfile->m_AccessLock));
#ifdef TRACE_OSL_PROFILE
OSL_TRACE("Out osl_readProfileString [not valid]\n");
diff --git a/sal/osl/unx/socket.c b/sal/osl/unx/socket.c
index 8beb70364647..a8e91236b02e 100644
--- a/sal/osl/unx/socket.c
+++ b/sal/osl/unx/socket.c
@@ -1104,7 +1104,6 @@ oslHostAddr SAL_CALL osl_createHostAddr (
rtl_string_release(strHostname);
}
-
return HostAddr;
}
@@ -1128,7 +1127,7 @@ oslHostAddr SAL_CALL osl_psz_createHostAddr (
pHostAddr= (oslHostAddr) malloc(sizeof(struct oslHostAddrImpl));
OSL_ASSERT(pHostAddr);
- if (pAddr == NULL)
+ if (pHostAddr == NULL)
{
free (cn);
return ((oslHostAddr)NULL);
@@ -2360,7 +2359,10 @@ sal_Bool __osl_socket_poll (
int timeout;
int result;
- OSL_ASSERT(pSocket);
+ OSL_ASSERT(0 != pSocket);
+ if (0 == pSocket)
+ return sal_False; /* EINVAL */
+
pSocket->m_nLastError = 0;
fds.fd = pSocket->m_Socket;
@@ -2403,7 +2405,10 @@ sal_Bool __osl_socket_poll (
struct timeval tv;
int result;
- OSL_ASSERT(pSocket);
+ OSL_ASSERT(0 != pSocket);
+ if (0 == pSocket)
+ return sal_False; /* EINVAL */
+
pSocket->m_nLastError = 0;
FD_ZERO(&fds);
diff --git a/sal/osl/w32/diagnose.c b/sal/osl/w32/diagnose.c
index e25c60e8c886..30356ee9af8c 100755
--- a/sal/osl/w32/diagnose.c
+++ b/sal/osl/w32/diagnose.c
@@ -93,6 +93,7 @@ sal_Bool SAL_CALL osl_assertFailedLine(const sal_Char* pszFileName, sal_Int32 nL
/* get app name or NULL if unknown (don't call assert) */
LPCSTR lpszAppName = "Error";
sal_Char szMessage[512];
+ char const * env = getenv( "SAL_DIAGNOSE_ABORT" );
/* format message into buffer */
szMessage[sizeof(szMessage)-1] = '\0'; /* zero terminate always */
@@ -105,40 +106,45 @@ sal_Bool SAL_CALL osl_assertFailedLine(const sal_Char* pszFileName, sal_Int32 nL
_pPrintDetailedDebugMessage( pszFileName, nLine, pszMessage );
else if ( _pPrintDebugMessage )
_pPrintDebugMessage( szMessage );
- else if ( !getenv( "DISABLE_SAL_DBGBOX" ) )
+ else
{
- TCHAR szBoxMessage[1024];
- int nCode;
+ if ( !getenv( "DISABLE_SAL_DBGBOX" ) )
+ {
+ TCHAR szBoxMessage[1024];
+ int nCode;
- /* active popup window for the current thread */
- hWndParent = GetActiveWindow();
- if (hWndParent != NULL)
- hWndParent = GetLastActivePopup(hWndParent);
+ /* active popup window for the current thread */
+ hWndParent = GetActiveWindow();
+ if (hWndParent != NULL)
+ hWndParent = GetLastActivePopup(hWndParent);
- /* set message box flags */
- nFlags = MB_TASKMODAL | MB_ICONWARNING | MB_YESNOCANCEL | MB_DEFBUTTON2 | MB_SETFOREGROUND;
- if (hWndParent == NULL)
- nFlags |= MB_SERVICE_NOTIFICATION;
+ /* set message box flags */
+ nFlags = MB_TASKMODAL | MB_ICONWARNING | MB_YESNOCANCEL | MB_DEFBUTTON2 | MB_SETFOREGROUND;
+ if (hWndParent == NULL)
+ nFlags |= MB_SERVICE_NOTIFICATION;
- /* display the assert */
+ /* display the assert */
- szBoxMessage[sizeof(szBoxMessage)-1] = 0;
- _snprintf(szBoxMessage, sizeof(szBoxMessage)-1, "%s\n( Yes=Abort / No=Ignore / Cancel=Debugger )",
- szMessage);
+ szBoxMessage[sizeof(szBoxMessage)-1] = 0;
+ _snprintf(szBoxMessage, sizeof(szBoxMessage)-1, "%s\n( Yes=Abort / No=Ignore / Cancel=Debugger )",
+ szMessage);
- nCode = MessageBox(hWndParent, szBoxMessage, "Assertion Failed!", nFlags);
+ nCode = MessageBox(hWndParent, szBoxMessage, "Assertion Failed!", nFlags);
- if (nCode == IDYES)
- FatalExit(-1);
+ if (nCode == IDYES)
+ FatalExit(-1);
- if (nCode == IDNO)
- return sal_False; /* ignore */
+ if (nCode == IDNO)
+ return sal_False; /* ignore */
- if (nCode == IDCANCEL)
- return sal_True; /* will cause oslDebugBreak */
+ if (nCode == IDCANCEL)
+ return sal_True; /* will cause oslDebugBreak */
+ }
+ return ( ( env != NULL ) && ( *env != '\0' ) );
}
+
+ return sal_False;
#endif /* NO_DEBUG_CRT */
- return sal_False; /* not sure, don't care */
}
sal_Int32 SAL_CALL osl_reportError(sal_uInt32 nType, const sal_Char* pszMessage)
diff --git a/sal/osl/w32/file_dirvol.cxx b/sal/osl/w32/file_dirvol.cxx
index 88cefe7d7eca..b6dc0028879e 100644
--- a/sal/osl/w32/file_dirvol.cxx
+++ b/sal/osl/w32/file_dirvol.cxx
@@ -155,7 +155,7 @@ namespace /* private */
void parse_UNC_path(const sal_Unicode* path, UNCComponents* puncc)
{
OSL_PRECOND(is_UNC_path(path), "Precondition violated: No UNC path");
- OSL_PRECOND(rtl_ustr_indexOfChar(path, SLASH) != -1, "Path must not contain slashes");
+ OSL_PRECOND(rtl_ustr_indexOfChar(path, SLASH) == -1, "Path must not contain slashes");
const sal_Unicode* pend = path + rtl_ustr_getLength(path);
const sal_Unicode* ppos = path + 2;
diff --git a/sal/osl/w32/module.cxx b/sal/osl/w32/module.cxx
index 1c2c485a6ca7..5554eadc02cc 100644..100755
--- a/sal/osl/w32/module.cxx
+++ b/sal/osl/w32/module.cxx
@@ -37,6 +37,7 @@
#include <osl/thread.h>
#include <osl/file.h>
#include <rtl/logfile.h>
+#include <vector>
/*
under WIN32, we use the void* oslModule
@@ -66,10 +67,32 @@ oslModule SAL_CALL osl_loadModule(rtl_uString *strModuleName, sal_Int32 /*nRtldM
rtl_uString_assign(&Module, strModuleName);
hInstance = LoadLibraryW(reinterpret_cast<LPCWSTR>(Module->buffer));
+
if (hInstance == NULL)
hInstance = LoadLibraryExW(reinterpret_cast<LPCWSTR>(Module->buffer), NULL,
LOAD_WITH_ALTERED_SEARCH_PATH);
+ //In case of long path names (\\?\c:\...) try to shorten the filename.
+ //LoadLibrary cannot handle file names which exceed 260 letters.
+ //In case the path is to long, the function will fail. However, the error
+ //code can be different. For example, it returned ERROR_FILENAME_EXCED_RANGE
+ //on Windows XP and ERROR_INSUFFICIENT_BUFFER on Windows 7 (64bit)
+ if (hInstance == NULL && Module->length > 260)
+ {
+ std::vector<sal_Unicode, rtl::Allocator<sal_Unicode> > vec(Module->length + 1);
+ DWORD len = GetShortPathNameW(reinterpret_cast<LPCWSTR>(Module->buffer),
+ &vec[0], Module->length + 1);
+ if (len )
+ {
+ hInstance = LoadLibraryW(&vec[0]);
+
+ if (hInstance == NULL)
+ hInstance = LoadLibraryExW(&vec[0], NULL,
+ LOAD_WITH_ALTERED_SEARCH_PATH);
+ }
+ }
+
+
if (hInstance <= (HINSTANCE)HINSTANCE_ERROR)
hInstance = 0;
diff --git a/sal/osl/w32/procimpl.cxx b/sal/osl/w32/procimpl.cxx
index 87b47fe263a5..54d5f912d0e2 100644..100755
--- a/sal/osl/w32/procimpl.cxx
+++ b/sal/osl/w32/procimpl.cxx
@@ -301,6 +301,39 @@ namespace /* private */
return quoted.makeStringAndClear();
}
+ //The parameter path must be a system path. If it is longer than 260 characters
+ //then it is shortened using the GetShortPathName function. This function only
+ //works if the path exists. Because "path" can be the path to an executable, it
+ //may not have the file extension ".exe". However, if the file on disk has the
+ //".exe" extension, then the function will fail. In this case a second attempt
+ //is started by adding the parameter "extension" to "path".
+ rtl::OUString getShortPath(rtl::OUString const & path, rtl::OUString const & extension)
+ {
+ rtl::OUString ret(path);
+ if (path.getLength() > 260)
+ {
+ std::vector<sal_Unicode, rtl::Allocator<sal_Unicode> > vec(path.getLength() + 1);
+ //GetShortPathNameW only works if the file can be found!
+ const DWORD len = GetShortPathNameW(
+ path.getStr(), &vec[0], path.getLength() + 1);
+
+ if (!len && GetLastError() == ERROR_FILE_NOT_FOUND
+ && extension.getLength())
+ {
+ const rtl::OUString extPath(path + extension);
+ std::vector<sal_Unicode, rtl::Allocator<sal_Unicode> > vec2(
+ extPath.getLength() + 1);
+ const DWORD len2 = GetShortPathNameW(
+ extPath.getStr(), &vec2[0], extPath.getLength() + 1);
+ ret = rtl::OUString(&vec2[0], len2);
+ }
+ else
+ {
+ ret = rtl::OUString(&vec[0], len);
+ }
+ }
+ return ret;
+ }
//##########################################################
// Returns the system path of the executable which can either
// be provided via the strImageName parameter or as first
@@ -327,6 +360,8 @@ namespace /* private */
if (osl_File_E_None != osl::FileBase::getSystemPathFromFileURL(exe_url, exe_path))
return rtl::OUString();
+ exe_path = getShortPath(exe_path, rtl::OUString(RTL_CONSTASCII_USTRINGPARAM(".exe")));
+
if (exe_path.indexOf(' ') != -1)
exe_path = quote_string(exe_path);
diff --git a/sal/prj/d.lst b/sal/prj/d.lst
index e685e590e6d0..8891d15c418b 100644
--- a/sal/prj/d.lst
+++ b/sal/prj/d.lst
@@ -1,11 +1,12 @@
mkdir: %_DEST%\bin%_EXT%\cppunit
+mkdir: %_DEST%\inc%_EXT%\cppunittester
mkdir: %_DEST%\inc%_EXT%\sal
mkdir: %_DEST%\inc%_EXT%\osl
mkdir: %_DEST%\inc%_EXT%\rtl
mkdir: %_DEST%\inc%_EXT%\systools
mkdir: %_DEST%\inc%_EXT%\systools\win32
-mkdir: %_DEST%\bin%_EXT%\cppunit
+..\inc\cppunittester\protectorfactory.hxx %_DEST%\inc%_EXT%\protectorfactory.hxx
..\%__SRC%\inc\rtlbootstrap.mk %_DEST%\inc%_EXT%\rtlbootstrap.mk
..\inc\sal\*.h %_DEST%\inc%_EXT%\sal\*.h
..\%__SRC%\inc\sal\typesizes.h %_DEST%\inc%_EXT%\sal\typesizes.h
diff --git a/sal/rtl/source/alloc_arena.c b/sal/rtl/source/alloc_arena.c
index 6766cf91e18d..69b4b9cf3bdb 100644
--- a/sal/rtl/source/alloc_arena.c
+++ b/sal/rtl/source/alloc_arena.c
@@ -29,22 +29,13 @@
#define _BSD_SOURCE /* sys/mman.h: MAP_ANON */
#include "alloc_arena.h"
-#ifndef INCLUDED_RTL_ARENA_IMPL_H
#include "alloc_impl.h"
-#endif
#include "internal/once.h"
#include "sal/macros.h"
#include "osl/diagnose.h"
-#ifndef INCLUDED_STRING_H
#include <string.h>
-#endif
-
-#ifndef INCLUDED_STDIO_H
#include <stdio.h>
-#endif
-
-#include "sal/types.h"
#ifdef OS2
#undef OSL_TRACE
@@ -953,6 +944,7 @@ try_alloc:
if (result != 0)
{
rtl_arena_type * arena = result;
+ VALGRIND_CREATE_MEMPOOL(arena, 0, 0);
rtl_arena_constructor (arena);
if (!source_arena)
@@ -975,6 +967,7 @@ try_alloc:
{
rtl_arena_deactivate (arena);
rtl_arena_destructor (arena);
+ VALGRIND_DESTROY_MEMPOOL(arena);
rtl_arena_free (gp_arena_arena, arena, size);
}
}
@@ -1000,6 +993,7 @@ SAL_CALL rtl_arena_destroy (
{
rtl_arena_deactivate (arena);
rtl_arena_destructor (arena);
+ VALGRIND_DESTROY_MEMPOOL(arena);
rtl_arena_free (gp_arena_arena, arena, sizeof(rtl_arena_type));
}
}
@@ -1055,6 +1049,10 @@ SAL_CALL rtl_arena_alloc (
rtl_arena_hash_insert (arena, segment);
+ /* DEBUG ONLY: mark allocated, undefined */
+ OSL_DEBUG_ONLY(memset((void*)(segment->m_addr), 0x77777777, segment->m_size));
+ VALGRIND_MEMPOOL_ALLOC(arena, segment->m_addr, segment->m_size);
+
(*pSize) = segment->m_size;
addr = (void*)(segment->m_addr);
}
@@ -1098,6 +1096,11 @@ SAL_CALL rtl_arena_free (
{
rtl_arena_segment_type *next, *prev;
+ /* DEBUG ONLY: mark unallocated, undefined */
+ VALGRIND_MEMPOOL_FREE(arena, segment->m_addr);
+ /* OSL_DEBUG_ONLY() */ VALGRIND_MAKE_MEM_UNDEFINED(segment->m_addr, segment->m_size);
+ OSL_DEBUG_ONLY(memset((void*)(segment->m_addr), 0x33333333, segment->m_size));
+
/* coalesce w/ adjacent free segment(s) */
rtl_arena_segment_coalesce (arena, segment);
@@ -1289,6 +1292,7 @@ rtl_arena_once_init (void)
static rtl_arena_type g_machdep_arena;
OSL_ASSERT(gp_machdep_arena == 0);
+ VALGRIND_CREATE_MEMPOOL(&g_machdep_arena, 0, 0);
rtl_arena_constructor (&g_machdep_arena);
gp_machdep_arena = rtl_arena_activate (
@@ -1305,6 +1309,7 @@ rtl_arena_once_init (void)
static rtl_arena_type g_default_arena;
OSL_ASSERT(gp_default_arena == 0);
+ VALGRIND_CREATE_MEMPOOL(&g_default_arena, 0, 0);
rtl_arena_constructor (&g_default_arena);
gp_default_arena = rtl_arena_activate (
@@ -1323,6 +1328,7 @@ rtl_arena_once_init (void)
static rtl_arena_type g_arena_arena;
OSL_ASSERT(gp_arena_arena == 0);
+ VALGRIND_CREATE_MEMPOOL(&g_arena_arena, 0, 0);
rtl_arena_constructor (&g_arena_arena);
gp_arena_arena = rtl_arena_activate (
@@ -1348,7 +1354,18 @@ rtl_arena_init (void)
/* ================================================================= */
-#if defined(__GNUC__)
+/*
+ Issue http://udk.openoffice.org/issues/show_bug.cgi?id=92388
+
+ Mac OS X does not seem to support "__cxa__atexit", thus leading
+ to the situation that "__attribute__((destructor))__" functions
+ (in particular "rtl_{memory|cache|arena}_fini") become called
+ _before_ global C++ object d'tors.
+
+ Delegated the call to "rtl_arena_fini()" into a dummy C++ object,
+ see alloc_fini.cxx .
+*/
+#if defined(__GNUC__) && !defined(MACOSX)
static void rtl_arena_fini (void) __attribute__((destructor));
#elif defined(__SUNPRO_C) || defined(__SUNPRO_CC)
#pragma fini(rtl_arena_fini)
diff --git a/sal/rtl/source/alloc_cache.c b/sal/rtl/source/alloc_cache.c
index 01d4e14961f8..9da21d32a3c9 100644
--- a/sal/rtl/source/alloc_cache.c
+++ b/sal/rtl/source/alloc_cache.c
@@ -508,6 +508,10 @@ rtl_cache_slab_alloc (
addr = (void*)rtl_cache_hash_insert (cache, bufctl);
else
addr = bufctl;
+
+ /* DEBUG ONLY: mark allocated, undefined */
+ OSL_DEBUG_ONLY(memset(addr, 0x77777777, cache->m_type_size));
+ VALGRIND_MEMPOOL_ALLOC(cache, addr, cache->m_type_size);
}
RTL_MEMORY_LOCK_RELEASE(&(cache->m_slab_lock));
@@ -530,6 +534,11 @@ rtl_cache_slab_free (
RTL_MEMORY_LOCK_ACQUIRE(&(cache->m_slab_lock));
+ /* DEBUG ONLY: mark unallocated, undefined */
+ VALGRIND_MEMPOOL_FREE(cache, addr);
+ /* OSL_DEBUG_ONLY() */ VALGRIND_MAKE_MEM_UNDEFINED(addr, cache->m_type_size);
+ OSL_DEBUG_ONLY(memset(addr, 0x33333333, cache->m_type_size));
+
/* determine slab from addr */
if (cache->m_features & RTL_CACHE_FEATURE_HASH)
{
@@ -636,8 +645,13 @@ rtl_cache_magazine_clear (
void * obj = mag->m_objects[mag->m_mag_used - 1];
mag->m_objects[mag->m_mag_used - 1] = 0;
+ /* DEBUG ONLY: mark cached object allocated, undefined */
+ VALGRIND_MEMPOOL_ALLOC(cache, obj, cache->m_type_size);
if (cache->m_destructor != 0)
{
+ /* DEBUG ONLY: keep constructed object defined */
+ VALGRIND_MAKE_MEM_DEFINED(obj, cache->m_type_size);
+
/* destruct object */
(cache->m_destructor)(obj, cache->m_userarg);
}
@@ -966,11 +980,16 @@ rtl_cache_deactivate (
rtl_cache_type * cache
)
{
+ int active = 1;
+
/* remove from cache list */
RTL_MEMORY_LOCK_ACQUIRE(&(g_cache_list.m_lock));
+ active = QUEUE_STARTED_NAMED(cache, cache_) == 0;
QUEUE_REMOVE_NAMED(cache, cache_);
RTL_MEMORY_LOCK_RELEASE(&(g_cache_list.m_lock));
+ OSL_PRECOND(active, "rtl_cache_deactivate(): orphaned cache.");
+
/* cleanup magazine layer */
if (cache->m_magazine_cache != 0)
{
@@ -1122,6 +1141,7 @@ try_alloc:
if (result != 0)
{
rtl_cache_type * cache = result;
+ VALGRIND_CREATE_MEMPOOL(cache, 0, 0);
(void) rtl_cache_constructor (cache);
if (!source)
@@ -1149,6 +1169,7 @@ try_alloc:
/* activation failed */
rtl_cache_deactivate (cache);
rtl_cache_destructor (cache);
+ VALGRIND_DESTROY_MEMPOOL(cache);
rtl_arena_free (gp_cache_arena, cache, size);
}
}
@@ -1173,6 +1194,7 @@ void SAL_CALL rtl_cache_destroy (
{
rtl_cache_deactivate (cache);
rtl_cache_destructor (cache);
+ VALGRIND_DESTROY_MEMPOOL(cache);
rtl_arena_free (gp_cache_arena, cache, sizeof(rtl_cache_type));
}
}
@@ -1201,6 +1223,14 @@ SAL_CALL rtl_cache_alloc (
if ((curr != 0) && (curr->m_mag_used > 0))
{
obj = curr->m_objects[--curr->m_mag_used];
+#if defined(HAVE_VALGRIND_MEMCHECK_H)
+ VALGRIND_MEMPOOL_ALLOC(cache, obj, cache->m_type_size);
+ if (cache->m_constructor != 0)
+ {
+ /* keep constructed object defined */
+ VALGRIND_MAKE_MEM_DEFINED(obj, cache->m_type_size);
+ }
+#endif /* HAVE_VALGRIND_MEMCHECK_H */
cache->m_cpu_stats.m_alloc += 1;
RTL_MEMORY_LOCK_RELEASE(&(cache->m_depot_lock));
@@ -1243,7 +1273,6 @@ SAL_CALL rtl_cache_alloc (
rtl_cache_slab_free (cache, obj), obj = 0;
}
}
-
return (obj);
}
@@ -1268,6 +1297,9 @@ SAL_CALL rtl_cache_free (
if ((curr != 0) && (curr->m_mag_used < curr->m_mag_size))
{
curr->m_objects[curr->m_mag_used++] = obj;
+#if defined(HAVE_VALGRIND_MEMCHECK_H)
+ VALGRIND_MEMPOOL_FREE(cache, obj);
+#endif /* HAVE_VALGRIND_MEMCHECK_H */
cache->m_cpu_stats.m_free += 1;
RTL_MEMORY_LOCK_RELEASE(&(cache->m_depot_lock));
@@ -1581,6 +1613,7 @@ rtl_cache_once_init (void)
static rtl_cache_type g_cache_magazine_cache;
OSL_ASSERT(gp_cache_magazine_cache == 0);
+ VALGRIND_CREATE_MEMPOOL(&g_cache_magazine_cache, 0, 0);
(void) rtl_cache_constructor (&g_cache_magazine_cache);
gp_cache_magazine_cache = rtl_cache_activate (
@@ -1605,6 +1638,7 @@ rtl_cache_once_init (void)
static rtl_cache_type g_cache_slab_cache;
OSL_ASSERT(gp_cache_slab_cache == 0);
+ VALGRIND_CREATE_MEMPOOL(&g_cache_slab_cache, 0, 0);
(void) rtl_cache_constructor (&g_cache_slab_cache);
gp_cache_slab_cache = rtl_cache_activate (
@@ -1626,6 +1660,7 @@ rtl_cache_once_init (void)
static rtl_cache_type g_cache_bufctl_cache;
OSL_ASSERT(gp_cache_bufctl_cache == 0);
+ VALGRIND_CREATE_MEMPOOL(&g_cache_bufctl_cache, 0, 0);
(void) rtl_cache_constructor (&g_cache_bufctl_cache);
gp_cache_bufctl_cache = rtl_cache_activate (
@@ -1656,7 +1691,18 @@ rtl_cache_init (void)
/* ================================================================= */
-#if defined(__GNUC__)
+/*
+ Issue http://udk.openoffice.org/issues/show_bug.cgi?id=92388
+
+ Mac OS X does not seem to support "__cxa__atexit", thus leading
+ to the situation that "__attribute__((destructor))__" functions
+ (in particular "rtl_{memory|cache|arena}_fini") become called
+ _before_ global C++ object d'tors.
+
+ Delegated the call to "rtl_cache_fini()" into a dummy C++ object,
+ see alloc_fini.cxx .
+*/
+#if defined(__GNUC__) && !defined(MACOSX)
static void rtl_cache_fini (void) __attribute__((destructor));
#elif defined(__SUNPRO_C) || defined(__SUNPRO_CC)
#pragma fini(rtl_cache_fini)
@@ -1677,18 +1723,21 @@ rtl_cache_fini (void)
cache = gp_cache_bufctl_cache, gp_cache_bufctl_cache = 0;
rtl_cache_deactivate (cache);
rtl_cache_destructor (cache);
+ VALGRIND_DESTROY_MEMPOOL(cache);
}
if (gp_cache_slab_cache != 0)
{
cache = gp_cache_slab_cache, gp_cache_slab_cache = 0;
rtl_cache_deactivate (cache);
rtl_cache_destructor (cache);
+ VALGRIND_DESTROY_MEMPOOL(cache);
}
if (gp_cache_magazine_cache != 0)
{
cache = gp_cache_magazine_cache, gp_cache_magazine_cache = 0;
rtl_cache_deactivate (cache);
rtl_cache_destructor (cache);
+ VALGRIND_DESTROY_MEMPOOL(cache);
}
if (gp_cache_arena != 0)
{
diff --git a/sal/rtl/source/memory_fini.cxx b/sal/rtl/source/alloc_fini.cxx
index a0fb012ff6a5..aba5093a362d 100644
--- a/sal/rtl/source/memory_fini.cxx
+++ b/sal/rtl/source/alloc_fini.cxx
@@ -26,32 +26,33 @@
*
************************************************************************/
-
/*
Issue http://udk.openoffice.org/issues/show_bug.cgi?id=92388
Mac OS X does not seem to support "__cxa__atexit", thus leading
to the situation that "__attribute__((destructor))__" functions
- (in particular "rtl_memory_fini") become called _before_ global
- C++ object d'tors.
+ (in particular "rtl_{memory|cache|arena}_fini") become called
+ _before_ global C++ object d'tors.
Using a C++ dummy object instead.
*/
-#include <stdio.h>
-
extern "C" void rtl_memory_fini (void);
+extern "C" void rtl_cache_fini (void);
+extern "C" void rtl_arena_fini (void);
-
-struct RTL_Memory_Fini {
- ~RTL_Memory_Fini() ;
+struct RTL_Alloc_Fini
+{
+ ~RTL_Alloc_Fini() ;
};
-RTL_Memory_Fini::~RTL_Memory_Fini() {
+RTL_Alloc_Fini::~RTL_Alloc_Fini()
+{
rtl_memory_fini();
+ rtl_cache_fini();
+ rtl_arena_fini();
}
-
-static RTL_Memory_Fini rtl_Memory_Fini;
+static RTL_Alloc_Fini g_RTL_Alloc_Fini;
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sal/rtl/source/alloc_global.c b/sal/rtl/source/alloc_global.c
index 5930e00e57a5..ac95c8e1b188 100644
--- a/sal/rtl/source/alloc_global.c
+++ b/sal/rtl/source/alloc_global.c
@@ -26,6 +26,7 @@
*
************************************************************************/
+#include "alloc_impl.h"
#include "rtl/alloc.h"
#include <sal/macros.h>
@@ -63,7 +64,6 @@ static void determine_alloc_mode(void)
*
* ================================================================= */
-#include "alloc_impl.h"
#include "internal/once.h"
#include "sal/macros.h"
#include "osl/diagnose.h"
diff --git a/sal/rtl/source/alloc_impl.h b/sal/rtl/source/alloc_impl.h
index 4a89e62af135..18073926399f 100644
--- a/sal/rtl/source/alloc_impl.h
+++ b/sal/rtl/source/alloc_impl.h
@@ -241,6 +241,30 @@ typedef CRITICAL_SECTION rtl_memory_lock_type;
#define RTL_CACHE_FLAG_QUANTUMCACHE (2 << 13) /* used as arena quantum cache */
+/** Valgrind support macros.
+ */
+#if !defined(HAVE_MEMCHECK_H) || (OSL_DEBUG_LEVEL == 0)
+#if !defined(NVALGRIND)
+#define NVALGRIND 1
+#endif /* ! NVALGRIND */
+#endif /* ! HAVE_MEMCHECK_H || (OSL_DEBUG_LEVEL == 0) */
+
+#if defined(NVALGRIND)
+#define VALGRIND_MAKE_MEM_UNDEFINED(addr, size)
+#define VALGRIND_MAKE_MEM_DEFINED(addr, size)
+#define VALGRIND_MALLOCLIKE_BLOCK(addr, sizeB, rzB, is_zeroed)
+#define VALGRIND_FREELIKE_BLOCK(addr, rzB)
+#define VALGRIND_CREATE_MEMPOOL(pool, rzB, is_zeroed)
+#define VALGRIND_DESTROY_MEMPOOL(pool)
+#define VALGRIND_MEMPOOL_ALLOC(pool, addr, size)
+#define VALGRIND_MEMPOOL_FREE(pool, addr)
+#elif defined(HAVE_MEMCHECK_H)
+#include <memcheck.h>
+#if !defined(FORCE_SYSALLOC)
+#define FORCE_SYSALLOC 1
+#endif /* !FORCE_SYSALLOC */
+#endif /* NVALGRIND || HAVE_MEMCHECK_H */
+
#ifdef __cplusplus
}
#endif
diff --git a/sal/rtl/source/makefile.mk b/sal/rtl/source/makefile.mk
index 3121f184ba8b..67ae7f8d9177 100644
--- a/sal/rtl/source/makefile.mk
+++ b/sal/rtl/source/makefile.mk
@@ -46,6 +46,11 @@ TARGETTYPE=CUI
.INCLUDE : settings.mk
+.IF "$(VALGRIND_CFLAGS)" != ""
+CFLAGS += $(VALGRIND_CFLAGS)
+CDEFS += -DHAVE_MEMCHECK_H=1
+.ENDIF # VALGRIND_CFLAGS
+
.IF "$(ALLOC)" == "SYS_ALLOC" || "$(ALLOC)" == "TCMALLOC" || "$(ALLOC)" == "JEMALLOC"
CDEFS+= -DFORCE_SYSALLOC
.ENDIF
@@ -98,7 +103,7 @@ SLOFILES= \
$(SLO)$/alloc_arena.obj
.IF "$(OS)"=="MACOSX" || "$(OS)"=="AIX"
-SLOFILES+=$(SLO)$/memory_fini.obj
+SLOFILES+=$(SLO)$/alloc_fini.obj
.ENDIF
@@ -130,7 +135,7 @@ OBJFILES= \
$(OBJ)$/alloc_arena.obj
.IF "$(OS)"=="MACOSX" || "$(OS)"=="AIX"
-OBJFILES+=$(OBJ)$/memory_fini.obj
+OBJFILES+=$(OBJ)$/alloc_fini.obj
.ENDIF
diff --git a/store/source/lockbyte.cxx b/store/source/lockbyte.cxx
index 40c098f52ac4..b947dd0e3b97 100644
--- a/store/source/lockbyte.cxx
+++ b/store/source/lockbyte.cxx
@@ -601,7 +601,8 @@ oslInterlockedCount SAL_CALL MappedLockBytes::release()
void MappedLockBytes::allocate_Impl (void ** ppPage, sal_uInt16 * pnSize)
{
OSL_PRECOND((ppPage != 0) && (pnSize != 0), "contract violation");
- *ppPage = 0, *pnSize = m_nPageSize;
+ if ((ppPage != 0) && (pnSize != 0))
+ *ppPage = 0, *pnSize = m_nPageSize;
}
void MappedLockBytes::deallocate_Impl (void * pPage)
diff --git a/store/source/storbase.cxx b/store/source/storbase.cxx
index 78e311b28fa0..8fd79ba27eff 100644
--- a/store/source/storbase.cxx
+++ b/store/source/storbase.cxx
@@ -159,7 +159,8 @@ PageData::Allocator_Impl::~Allocator_Impl()
void PageData::Allocator_Impl::allocate_Impl (void ** ppPage, sal_uInt16 * pnSize)
{
OSL_PRECOND((ppPage != 0) && (pnSize != 0), "contract violation");
- *ppPage = rtl_cache_alloc(m_page_cache), *pnSize = m_page_size;
+ if ((ppPage != 0) && (pnSize != 0))
+ *ppPage = rtl_cache_alloc(m_page_cache), *pnSize = m_page_size;
}
void PageData::Allocator_Impl::deallocate_Impl (void * pPage)
diff --git a/udkapi/com/sun/star/container/XStringKeyMap.idl b/udkapi/com/sun/star/container/XStringKeyMap.idl
index cf2b87d49b49..49848e2da791 100644
--- a/udkapi/com/sun/star/container/XStringKeyMap.idl
+++ b/udkapi/com/sun/star/container/XStringKeyMap.idl
@@ -56,7 +56,7 @@ module com { module sun { module star { module container {
/** maps strings to anys.
- @since OOo 2.3.0
+ @since OOo 2.3
*/
interface XStringKeyMap
diff --git a/udkapi/com/sun/star/io/XAsyncOutputMonitor.idl b/udkapi/com/sun/star/io/XAsyncOutputMonitor.idl
index aa5a0ba1802c..1aa25e82f253 100644
--- a/udkapi/com/sun/star/io/XAsyncOutputMonitor.idl
+++ b/udkapi/com/sun/star/io/XAsyncOutputMonitor.idl
@@ -59,7 +59,7 @@ module com { module sun { module star { module io {
should be called after the series of calls to
<member scope="com::sun::star::io">XOutputStream::writeBytes</member>.</p>
- @since OOo2.0.0
+ @since OOo 2.0
*/
interface XAsyncOutputMonitor {
/**
diff --git a/udkapi/com/sun/star/java/InvalidJavaSettingsException.idl b/udkapi/com/sun/star/java/InvalidJavaSettingsException.idl
index 588ac4933b05..66fa96465b10 100755
--- a/udkapi/com/sun/star/java/InvalidJavaSettingsException.idl
+++ b/udkapi/com/sun/star/java/InvalidJavaSettingsException.idl
@@ -41,7 +41,7 @@ module com { module sun { module star { module java {
by distributors to determine what versions are supported. If this
file is modified, then the current settings are regarded as invalid.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
exception InvalidJavaSettingsException: JavaInitializationException
{
diff --git a/udkapi/com/sun/star/java/JavaNotFoundException.idl b/udkapi/com/sun/star/java/JavaNotFoundException.idl
index 3f8a994decc1..5dbc369a9f6d 100644
--- a/udkapi/com/sun/star/java/JavaNotFoundException.idl
+++ b/udkapi/com/sun/star/java/JavaNotFoundException.idl
@@ -37,7 +37,7 @@ module com { module sun { module star { module java {
/** indicates that no suitable JRE was found.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
exception JavaNotFoundException: JavaInitializationException
{
diff --git a/udkapi/com/sun/star/java/RestartRequiredException.idl b/udkapi/com/sun/star/java/RestartRequiredException.idl
index a41b7de14b6a..c07271e424a1 100755
--- a/udkapi/com/sun/star/java/RestartRequiredException.idl
+++ b/udkapi/com/sun/star/java/RestartRequiredException.idl
@@ -37,7 +37,7 @@ module com { module sun { module star { module java {
/** indicates that the office must be restarted before a JRE can be used.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
exception RestartRequiredException: JavaInitializationException
{
diff --git a/udkapi/com/sun/star/reflection/XInterfaceAttributeTypeDescription2.idl b/udkapi/com/sun/star/reflection/XInterfaceAttributeTypeDescription2.idl
index 96b8957683ff..a19dd7f528fd 100644
--- a/udkapi/com/sun/star/reflection/XInterfaceAttributeTypeDescription2.idl
+++ b/udkapi/com/sun/star/reflection/XInterfaceAttributeTypeDescription2.idl
@@ -41,7 +41,7 @@ interface XCompoundTypeDescription;
<p>This type supersedes <type>XInterfaceAttributeTypeDescription</type>,
which does not support extended attributes.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XInterfaceAttributeTypeDescription2:
XInterfaceAttributeTypeDescription
diff --git a/udkapi/com/sun/star/reflection/XInterfaceTypeDescription2.idl b/udkapi/com/sun/star/reflection/XInterfaceTypeDescription2.idl
index 31ab93e4ecac..18be75166617 100644
--- a/udkapi/com/sun/star/reflection/XInterfaceTypeDescription2.idl
+++ b/udkapi/com/sun/star/reflection/XInterfaceTypeDescription2.idl
@@ -39,7 +39,7 @@ interface XTypeDescription;
<p>This type supersedes <type>XInterfaceTypeDescription</type>, which only
supported single inheritance.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XInterfaceTypeDescription2: XInterfaceTypeDescription {
/** Returns a sequence of all directly inherited (mandatory) base interface
diff --git a/udkapi/com/sun/star/reflection/XParameter.idl b/udkapi/com/sun/star/reflection/XParameter.idl
index d7b8aaa16cbb..ca827fe08d8f 100644
--- a/udkapi/com/sun/star/reflection/XParameter.idl
+++ b/udkapi/com/sun/star/reflection/XParameter.idl
@@ -38,7 +38,7 @@ module com { module sun { module star { module reflection {
<p>This type supersedes <type>XMethodParameter</type>, which only supports
parameters of interface methods (which cannot have rest parameters).</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XParameter: XMethodParameter {
/**
diff --git a/udkapi/com/sun/star/reflection/XPublished.idl b/udkapi/com/sun/star/reflection/XPublished.idl
index afb7cefa8a9a..4b3bc090dcfd 100644
--- a/udkapi/com/sun/star/reflection/XPublished.idl
+++ b/udkapi/com/sun/star/reflection/XPublished.idl
@@ -96,7 +96,7 @@ module com { module sun { module star { module reflection {
supported.</li>
</ul>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XPublished {
/**
diff --git a/udkapi/com/sun/star/reflection/XServiceConstructorDescription.idl b/udkapi/com/sun/star/reflection/XServiceConstructorDescription.idl
index 2f8f05ba82cc..4a45e69b20f0 100644
--- a/udkapi/com/sun/star/reflection/XServiceConstructorDescription.idl
+++ b/udkapi/com/sun/star/reflection/XServiceConstructorDescription.idl
@@ -38,7 +38,7 @@ interface XParameter;
/**
Reflects a service constructor.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XServiceConstructorDescription {
/**
diff --git a/udkapi/com/sun/star/reflection/XServiceTypeDescription2.idl b/udkapi/com/sun/star/reflection/XServiceTypeDescription2.idl
index 2536a2d2fe16..988bd5f66c18 100644
--- a/udkapi/com/sun/star/reflection/XServiceTypeDescription2.idl
+++ b/udkapi/com/sun/star/reflection/XServiceTypeDescription2.idl
@@ -41,7 +41,7 @@ interface XTypeDescription;
<p>This type supersedes <type>XServiceTypeDescription</type>, which only
supports obsolete, accumulation-based services.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XServiceTypeDescription2: XServiceTypeDescription {
/**
diff --git a/udkapi/com/sun/star/reflection/XSingletonTypeDescription2.idl b/udkapi/com/sun/star/reflection/XSingletonTypeDescription2.idl
index c4b42d786b00..b7083a6a8abf 100644
--- a/udkapi/com/sun/star/reflection/XSingletonTypeDescription2.idl
+++ b/udkapi/com/sun/star/reflection/XSingletonTypeDescription2.idl
@@ -40,7 +40,7 @@ interface XTypeDescription;
<p>This type supersedes <type>XSingletonTypeDescription</type>, which only
supports obsolete, service-based singletons.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XSingletonTypeDescription2: XSingletonTypeDescription {
/**
diff --git a/udkapi/com/sun/star/reflection/XStructTypeDescription.idl b/udkapi/com/sun/star/reflection/XStructTypeDescription.idl
index 69063323874c..6635492179c9 100644
--- a/udkapi/com/sun/star/reflection/XStructTypeDescription.idl
+++ b/udkapi/com/sun/star/reflection/XStructTypeDescription.idl
@@ -66,7 +66,7 @@ interface XTypeDescription;
sequence.</li>
</ul>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
interface XStructTypeDescription: XCompoundTypeDescription {
/**
diff --git a/udkapi/com/sun/star/script/BasicErrorException.idl b/udkapi/com/sun/star/script/BasicErrorException.idl
index 63a91b8e6373..7b627a993700 100644
--- a/udkapi/com/sun/star/script/BasicErrorException.idl
+++ b/udkapi/com/sun/star/script/BasicErrorException.idl
@@ -40,7 +40,7 @@ module com { module sun { module star { module script {
/** is thrown in order to transport an error to Basic.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
published exception BasicErrorException: com::sun::star::uno::Exception
{
diff --git a/udkapi/com/sun/star/uri/ExternalUriReferenceTranslator.idl b/udkapi/com/sun/star/uri/ExternalUriReferenceTranslator.idl
index 3ed909101441..ba649a09551f 100644
--- a/udkapi/com/sun/star/uri/ExternalUriReferenceTranslator.idl
+++ b/udkapi/com/sun/star/uri/ExternalUriReferenceTranslator.idl
@@ -35,7 +35,7 @@ published interface XExternalUriReferenceTranslator;
/**
translates between external and internal URI references.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
published service ExternalUriReferenceTranslator:
XExternalUriReferenceTranslator;
diff --git a/udkapi/com/sun/star/uri/RelativeUriExcessParentSegments.idl b/udkapi/com/sun/star/uri/RelativeUriExcessParentSegments.idl
index 6d65648b7950..00b30462b60a 100644
--- a/udkapi/com/sun/star/uri/RelativeUriExcessParentSegments.idl
+++ b/udkapi/com/sun/star/uri/RelativeUriExcessParentSegments.idl
@@ -37,7 +37,7 @@ module com { module sun { module star { module uri {
@see com::sun::star::uri::XUriReferenceFactory::makeAbsolute
for a method that uses this enumeration.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
published enum RelativeUriExcessParentSegments {
/**
diff --git a/udkapi/com/sun/star/uri/UriReferenceFactory.idl b/udkapi/com/sun/star/uri/UriReferenceFactory.idl
index 678258d75ce0..c01d9eadac12 100644
--- a/udkapi/com/sun/star/uri/UriReferenceFactory.idl
+++ b/udkapi/com/sun/star/uri/UriReferenceFactory.idl
@@ -68,7 +68,7 @@ published interface XUriReferenceFactory;
service does not support
<type scope="com::sun::star::uri">XUriSchemeParser</type>.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
published service UriReferenceFactory: XUriReferenceFactory;
diff --git a/udkapi/com/sun/star/uri/UriSchemeParser_vndDOTsunDOTstarDOTscript.idl b/udkapi/com/sun/star/uri/UriSchemeParser_vndDOTsunDOTstarDOTscript.idl
index 50da8154e43a..c071ce6addac 100644
--- a/udkapi/com/sun/star/uri/UriSchemeParser_vndDOTsunDOTstarDOTscript.idl
+++ b/udkapi/com/sun/star/uri/UriSchemeParser_vndDOTsunDOTstarDOTscript.idl
@@ -48,7 +48,7 @@ published interface XUriSchemeParser;
Rather, it should be used indirectly through the
<type scope="com::sun::star::uri">UriReferenceFactory</type> service.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
published service UriSchemeParser_vndDOTsunDOTstarDOTscript: XUriSchemeParser
{};
diff --git a/udkapi/com/sun/star/uri/VndSunStarPkgUrlReferenceFactory.idl b/udkapi/com/sun/star/uri/VndSunStarPkgUrlReferenceFactory.idl
index f652851cf280..9edd29a6c702 100644
--- a/udkapi/com/sun/star/uri/VndSunStarPkgUrlReferenceFactory.idl
+++ b/udkapi/com/sun/star/uri/VndSunStarPkgUrlReferenceFactory.idl
@@ -35,7 +35,7 @@ published interface XVndSunStarPkgUrlReferenceFactory;
/**
creates &ldquo;vnd.sun.star.pkg&rdquo; URL references.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
published service VndSunStarPkgUrlReferenceFactory:
XVndSunStarPkgUrlReferenceFactory;
diff --git a/udkapi/com/sun/star/uri/XExternalUriReferenceTranslator.idl b/udkapi/com/sun/star/uri/XExternalUriReferenceTranslator.idl
index 3dc6b8bfca77..d97c677ebd36 100644
--- a/udkapi/com/sun/star/uri/XExternalUriReferenceTranslator.idl
+++ b/udkapi/com/sun/star/uri/XExternalUriReferenceTranslator.idl
@@ -54,7 +54,7 @@ module com { module sun { module star { module uri {
references (that do not include a scheme) are left unmodified by the
translation process.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
published interface XExternalUriReferenceTranslator {
/**
diff --git a/udkapi/com/sun/star/uri/XUriReference.idl b/udkapi/com/sun/star/uri/XUriReference.idl
index 79ad88f47a1c..eccd19164248 100644
--- a/udkapi/com/sun/star/uri/XUriReference.idl
+++ b/udkapi/com/sun/star/uri/XUriReference.idl
@@ -47,7 +47,7 @@ module com { module sun { module star { module uri {
<type scope="com::sun::star::uri">XUriReference</type> and additional,
scheme-specific interfaces.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
published interface XUriReference: com::sun::star::uno::XInterface {
/**
diff --git a/udkapi/com/sun/star/uri/XUriReferenceFactory.idl b/udkapi/com/sun/star/uri/XUriReferenceFactory.idl
index bd62235b985d..a7bc1514f98c 100644
--- a/udkapi/com/sun/star/uri/XUriReferenceFactory.idl
+++ b/udkapi/com/sun/star/uri/XUriReferenceFactory.idl
@@ -40,7 +40,7 @@ module com { module sun { module star { module uri {
<p>See <a href="http://www.ietf.org/rfc/rfc2396.txt">RFC&nbsp;2396</a> for a
description of URI references and related terms.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
published interface XUriReferenceFactory: com::sun::star::uno::XInterface {
/**
diff --git a/udkapi/com/sun/star/uri/XUriSchemeParser.idl b/udkapi/com/sun/star/uri/XUriSchemeParser.idl
index 61a8173d9ab4..a267b38b4329 100644
--- a/udkapi/com/sun/star/uri/XUriSchemeParser.idl
+++ b/udkapi/com/sun/star/uri/XUriSchemeParser.idl
@@ -39,7 +39,7 @@ module com { module sun { module star { module uri {
<p>See <a href="http://www.ietf.org/rfc/rfc2396.txt">RFC&nbsp;2396</a> for a
description of URIs and related terms.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
published interface XUriSchemeParser: com::sun::star::uno::XInterface {
/**
diff --git a/udkapi/com/sun/star/uri/XVndSunStarPkgUrlReferenceFactory.idl b/udkapi/com/sun/star/uri/XVndSunStarPkgUrlReferenceFactory.idl
index e6db55f9905b..179253b8de78 100644
--- a/udkapi/com/sun/star/uri/XVndSunStarPkgUrlReferenceFactory.idl
+++ b/udkapi/com/sun/star/uri/XVndSunStarPkgUrlReferenceFactory.idl
@@ -37,7 +37,7 @@ published interface XUriReference;
/**
creates &ldquo;vnd.sun.star.pkg&rdquo; URL references.
- @since OOo 2.0.0
+ @since OOo 2.0
*/
published interface XVndSunStarPkgUrlReferenceFactory {
/**
diff --git a/udkapi/com/sun/star/uri/XVndSunStarScriptUrl.idl b/udkapi/com/sun/star/uri/XVndSunStarScriptUrl.idl
index 753ed90b1cef..ceae7926f04d 100644
--- a/udkapi/com/sun/star/uri/XVndSunStarScriptUrl.idl
+++ b/udkapi/com/sun/star/uri/XVndSunStarScriptUrl.idl
@@ -61,7 +61,7 @@ module com { module sun { module star { module uri {
without considering case folding or normalization. There may be multiple
parameters with equal keys.</p>
- @since OOo 2.0.0
+ @since OOo 2.0
*/
published interface XVndSunStarScriptUrl: com::sun::star::uno::XInterface {
/**
diff --git a/unoil/climaker/version.txt b/unoil/climaker/version.txt
index 2678d1bc035b..f59c2f9482b4 100644..100755
--- a/unoil/climaker/version.txt
+++ b/unoil/climaker/version.txt
@@ -25,8 +25,8 @@
#
#*************************************************************************
-CLI_OOOTYPES_NEW_VERSION=1.0.7.0
-CLI_OOOTYPES_OLD_VERSION=1.0.0.0-1.0.6.0
-CLI_OOOTYPES_POLICY_VERSION=7.0.0.0
+CLI_OOOTYPES_NEW_VERSION=1.0.8.0
+CLI_OOOTYPES_OLD_VERSION=1.0.0.0-1.0.7.0
+CLI_OOOTYPES_POLICY_VERSION=8.0.0.0
CLI_OOOTYPES_POLICY_ASSEMBLY=policy.1.0.cli_oootypes
diff --git a/unoil/util/makefile.mk b/unoil/util/makefile.mk
index f5d8125b81f8..c2bd22ef2733 100644
--- a/unoil/util/makefile.mk
+++ b/unoil/util/makefile.mk
@@ -35,7 +35,7 @@ TARGET = unoil
MAXLINELENGTH = 100000
-JARCLASSDIRS = com drafts
+JARCLASSDIRS = com
JARTARGET = $(TARGET).jar
JARCOMPRESS = TRUE