summaryrefslogtreecommitdiff
path: root/offapi/com/sun/star/util
diff options
context:
space:
mode:
Diffstat (limited to 'offapi/com/sun/star/util')
-rw-r--r--offapi/com/sun/star/util/AliasProgrammaticPair.idl56
-rw-r--r--offapi/com/sun/star/util/AtomClassRequest.idl61
-rw-r--r--offapi/com/sun/star/util/AtomDescription.idl60
-rw-r--r--offapi/com/sun/star/util/CellProtection.idl66
-rw-r--r--offapi/com/sun/star/util/ChangesEvent.idl77
-rw-r--r--offapi/com/sun/star/util/ChangesSet.idl61
-rw-r--r--offapi/com/sun/star/util/CloseVetoException.idl52
-rw-r--r--offapi/com/sun/star/util/Color.idl52
-rw-r--r--offapi/com/sun/star/util/DataEditorEvent.idl55
-rw-r--r--offapi/com/sun/star/util/DataEditorEventType.idl51
-rw-r--r--offapi/com/sun/star/util/Date.idl63
-rw-r--r--offapi/com/sun/star/util/DateTime.idl87
-rw-r--r--offapi/com/sun/star/util/DateTimeRange.idl116
-rw-r--r--offapi/com/sun/star/util/DiskFullException.idl51
-rw-r--r--offapi/com/sun/star/util/Duration.idl101
-rw-r--r--offapi/com/sun/star/util/ElementChange.idl65
-rw-r--r--offapi/com/sun/star/util/Endianness.idl64
-rw-r--r--offapi/com/sun/star/util/FileIOException.idl50
-rw-r--r--offapi/com/sun/star/util/JobManager.idl46
-rw-r--r--offapi/com/sun/star/util/Language.idl44
-rw-r--r--offapi/com/sun/star/util/MalformedNumberFormatException.idl60
-rw-r--r--offapi/com/sun/star/util/MeasureUnit.idl106
-rw-r--r--offapi/com/sun/star/util/ModeChangeEvent.idl63
-rw-r--r--offapi/com/sun/star/util/NotNumericException.idl51
-rw-r--r--offapi/com/sun/star/util/NumberFormat.idl126
-rw-r--r--offapi/com/sun/star/util/NumberFormatProperties.idl81
-rw-r--r--offapi/com/sun/star/util/NumberFormatSettings.idl88
-rw-r--r--offapi/com/sun/star/util/NumberFormats.idl64
-rw-r--r--offapi/com/sun/star/util/NumberFormatsSupplier.idl77
-rw-r--r--offapi/com/sun/star/util/NumberFormatter.idl69
-rw-r--r--offapi/com/sun/star/util/OfficeInstallationDirectories.idl79
-rw-r--r--offapi/com/sun/star/util/PathSettings.idl173
-rw-r--r--offapi/com/sun/star/util/PathSubstitution.idl108
-rw-r--r--offapi/com/sun/star/util/ReplaceDescriptor.idl59
-rw-r--r--offapi/com/sun/star/util/RevisionTag.idl71
-rw-r--r--offapi/com/sun/star/util/SearchDescriptor.idl140
-rw-r--r--offapi/com/sun/star/util/SortDescriptor.idl111
-rw-r--r--offapi/com/sun/star/util/SortDescriptor2.idl57
-rw-r--r--offapi/com/sun/star/util/SortField.idl67
-rw-r--r--offapi/com/sun/star/util/SortFieldType.idl64
-rw-r--r--offapi/com/sun/star/util/Sortable.idl67
-rw-r--r--offapi/com/sun/star/util/TextSearch.idl53
-rw-r--r--offapi/com/sun/star/util/Time.idl66
-rw-r--r--offapi/com/sun/star/util/TriState.idl66
-rw-r--r--offapi/com/sun/star/util/URL.idl131
-rw-r--r--offapi/com/sun/star/util/URLTransformer.idl54
-rw-r--r--offapi/com/sun/star/util/UriAbbreviation.idl48
-rw-r--r--offapi/com/sun/star/util/VetoException.idl54
-rw-r--r--offapi/com/sun/star/util/XArchiver.idl80
-rw-r--r--offapi/com/sun/star/util/XAtomServer.idl146
-rw-r--r--offapi/com/sun/star/util/XBroadcaster.idl84
-rw-r--r--offapi/com/sun/star/util/XCancelManager.idl67
-rw-r--r--offapi/com/sun/star/util/XCancellable.idl58
-rw-r--r--offapi/com/sun/star/util/XChainable.idl83
-rw-r--r--offapi/com/sun/star/util/XChangesBatch.idl86
-rw-r--r--offapi/com/sun/star/util/XChangesListener.idl64
-rw-r--r--offapi/com/sun/star/util/XChangesNotifier.idl64
-rw-r--r--offapi/com/sun/star/util/XChangesSet.idl73
-rw-r--r--offapi/com/sun/star/util/XCloneable.idl56
-rw-r--r--offapi/com/sun/star/util/XCloseBroadcaster.idl80
-rw-r--r--offapi/com/sun/star/util/XCloseListener.idl139
-rw-r--r--offapi/com/sun/star/util/XCloseable.idl135
-rw-r--r--offapi/com/sun/star/util/XDataEditor.idl76
-rw-r--r--offapi/com/sun/star/util/XDataEditorListener.idl56
-rw-r--r--offapi/com/sun/star/util/XFlushListener.idl60
-rw-r--r--offapi/com/sun/star/util/XFlushable.idl70
-rw-r--r--offapi/com/sun/star/util/XImportable.idl71
-rw-r--r--offapi/com/sun/star/util/XIndent.idl60
-rw-r--r--offapi/com/sun/star/util/XJobManager.idl65
-rw-r--r--offapi/com/sun/star/util/XLinkUpdate.idl59
-rw-r--r--offapi/com/sun/star/util/XLocalizedAliases.idl117
-rw-r--r--offapi/com/sun/star/util/XMergeable.idl63
-rw-r--r--offapi/com/sun/star/util/XModeChangeApproveListener.idl74
-rw-r--r--offapi/com/sun/star/util/XModeChangeBroadcaster.idl97
-rw-r--r--offapi/com/sun/star/util/XModeChangeListener.idl63
-rw-r--r--offapi/com/sun/star/util/XModeSelector.idl78
-rw-r--r--offapi/com/sun/star/util/XModifiable.idl74
-rw-r--r--offapi/com/sun/star/util/XModifiable2.idl88
-rw-r--r--offapi/com/sun/star/util/XModifyBroadcaster.idl69
-rw-r--r--offapi/com/sun/star/util/XModifyListener.idl66
-rw-r--r--offapi/com/sun/star/util/XNumberFormatPreviewer.idl137
-rw-r--r--offapi/com/sun/star/util/XNumberFormatTypes.idl111
-rw-r--r--offapi/com/sun/star/util/XNumberFormats.idl136
-rw-r--r--offapi/com/sun/star/util/XNumberFormatsSupplier.idl75
-rw-r--r--offapi/com/sun/star/util/XNumberFormatter.idl149
-rw-r--r--offapi/com/sun/star/util/XOfficeInstallationDirectories.idl114
-rw-r--r--offapi/com/sun/star/util/XPropertyReplace.idl101
-rw-r--r--offapi/com/sun/star/util/XProtectable.idl72
-rw-r--r--offapi/com/sun/star/util/XRefreshListener.idl60
-rw-r--r--offapi/com/sun/star/util/XRefreshable.idl70
-rw-r--r--offapi/com/sun/star/util/XReplaceDescriptor.idl62
-rw-r--r--offapi/com/sun/star/util/XReplaceable.idl80
-rw-r--r--offapi/com/sun/star/util/XSearchDescriptor.idl62
-rw-r--r--offapi/com/sun/star/util/XSearchable.idl112
-rw-r--r--offapi/com/sun/star/util/XSimpleErrorHandler.idl54
-rw-r--r--offapi/com/sun/star/util/XSortable.idl113
-rw-r--r--offapi/com/sun/star/util/XStringAbbreviation.idl83
-rw-r--r--offapi/com/sun/star/util/XStringEscape.idl83
-rw-r--r--offapi/com/sun/star/util/XStringMapping.idl55
-rw-r--r--offapi/com/sun/star/util/XStringSubstitution.idl134
-rw-r--r--offapi/com/sun/star/util/XStringWidth.idl63
-rw-r--r--offapi/com/sun/star/util/XTextSearch.idl190
-rw-r--r--offapi/com/sun/star/util/XTimeStamped.idl73
-rw-r--r--offapi/com/sun/star/util/XURLTransformer.idl146
-rw-r--r--offapi/com/sun/star/util/XUniqueIDFactory.idl51
-rw-r--r--offapi/com/sun/star/util/XUpdatable.idl58
-rw-r--r--offapi/com/sun/star/util/makefile.mk151
107 files changed, 8647 insertions, 0 deletions
diff --git a/offapi/com/sun/star/util/AliasProgrammaticPair.idl b/offapi/com/sun/star/util/AliasProgrammaticPair.idl
new file mode 100644
index 000000000000..6ceaa1f29ee2
--- /dev/null
+++ b/offapi/com/sun/star/util/AliasProgrammaticPair.idl
@@ -0,0 +1,56 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_AliasProgrammaticPair_idl__
+#define __com_sun_star_util_AliasProgrammaticPair_idl__
+
+//=============================================================================
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** represents an entry from a component which implements the
+ <type>XLocalizedAliases</type>.
+ */
+published struct AliasProgrammaticPair
+{
+ /** determines the name which is registered as an alias for a programmatic name.
+ */
+ string Alias;
+ //-------------------------------------------------------------------------
+
+ /** determines which programmatic name belongs to the alias.
+
+ @see com::sun::star::util::XLocalizedAliases
+ */
+ string ProgrammaticName;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/AtomClassRequest.idl b/offapi/com/sun/star/util/AtomClassRequest.idl
new file mode 100644
index 000000000000..9135ed26ddf4
--- /dev/null
+++ b/offapi/com/sun/star/util/AtomClassRequest.idl
@@ -0,0 +1,61 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_AtomClassRequest_idl__
+#define __com_sun_star_util_AtomClassRequest_idl__
+
+module com
+{
+module sun
+{
+module star
+{
+module util
+{
+
+/** is used to describe which atoms the user wants to know about.
+
+ @see com::sun::star::util::XAtomServer
+*/
+published struct AtomClassRequest
+{
+ /** the class of the atoms described in member
+ <member>AtomClassRequest::atoms</member>.
+ */
+ long atomClass;
+
+ /** the atoms requested from class <member>AtomClassRequest::atomClass</member>.
+ */
+ sequence< long > atoms;
+};
+
+}; // module util
+}; // module star
+}; // module sun
+}; // module com
+
+
+#endif
diff --git a/offapi/com/sun/star/util/AtomDescription.idl b/offapi/com/sun/star/util/AtomDescription.idl
new file mode 100644
index 000000000000..5c8878f95139
--- /dev/null
+++ b/offapi/com/sun/star/util/AtomDescription.idl
@@ -0,0 +1,60 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_AtomDescription_idl__
+#define __com_sun_star_util_AtomDescription_idl__
+
+module com
+{
+module sun
+{
+module star
+{
+module util
+{
+
+/** contains a string and the corresponding registered atom .
+
+ @see com::sun::star::util::XAtomServer
+*/
+published struct AtomDescription
+{
+ /** the atom itself
+ */
+ long atom;
+
+ /** the string it stands for
+ */
+ string description;
+};
+
+}; // module util
+}; // module star
+}; // module sun
+}; // module com
+
+
+#endif
diff --git a/offapi/com/sun/star/util/CellProtection.idl b/offapi/com/sun/star/util/CellProtection.idl
new file mode 100644
index 000000000000..1f0775717195
--- /dev/null
+++ b/offapi/com/sun/star/util/CellProtection.idl
@@ -0,0 +1,66 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_CellProtection_idl__
+#define __com_sun_star_util_CellProtection_idl__
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** describes the kind of protection for a protectable cell.
+ */
+published struct CellProtection
+{
+ /** specifies if the cell is locked from modifications by the user.
+ */
+ boolean IsLocked;
+
+ //-------------------------------------------------------------------------
+ /** specifies if the formula is hidden from the user.
+ */
+ boolean IsFormulaHidden;
+
+ //-------------------------------------------------------------------------
+ /** specifies if the cell is hidden from the user.
+ */
+ boolean IsHidden;
+
+ //-------------------------------------------------------------------------
+ /** specifies if the cell is hidden on printouts.
+ */
+ boolean IsPrintHidden;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/ChangesEvent.idl b/offapi/com/sun/star/util/ChangesEvent.idl
new file mode 100644
index 000000000000..e17893d52115
--- /dev/null
+++ b/offapi/com/sun/star/util/ChangesEvent.idl
@@ -0,0 +1,77 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_ChangesEvent_idl__
+#define __com_sun_star_util_ChangesEvent_idl__
+
+#ifndef __com_sun_star_lang_EventObject_idl__
+#include <com/sun/star/lang/EventObject.idl>
+#endif
+
+#ifndef __com_sun_star_util_ElementChange_idl__
+#include <com/sun/star/util/ElementChange.idl>
+#endif
+
+#ifndef __com_sun_star_util_ChangesSet_idl__
+#include <com/sun/star/util/ChangesSet.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** This event is fired when a set of changes becomes effective on the source of the event.
+
+ @see XChangesSet
+ @see XChangesBatch
+ @see XChangesListener
+ @see XChangesNotifier
+ @see com::sun::star::container::ContainerEvent
+ @see ElementChange
+ */
+published struct ChangesEvent: com::sun::star::lang::EventObject
+{
+ //-------------------------------------------------------------------------
+ /** contains the accessor to the common root of the changed elements.
+
+ <p>Type and value of the accessor depend on the service.</p>
+ */
+ any Base;
+
+ //-------------------------------------------------------------------------
+ /** contains the changes which occurred.
+ */
+ ChangesSet Changes;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/ChangesSet.idl b/offapi/com/sun/star/util/ChangesSet.idl
new file mode 100644
index 000000000000..439ff2e31861
--- /dev/null
+++ b/offapi/com/sun/star/util/ChangesSet.idl
@@ -0,0 +1,61 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_ChangesSet_idl__
+#define __com_sun_star_util_ChangesSet_idl__
+
+#ifndef __com_sun_star_util_ElementChange_idl__
+#include <com/sun/star/util/ElementChange.idl>
+#endif
+
+/*
+#ifndef __com_sun_star_util_XChangesSet_idl__
+#include <com/sun/star/util/XChangesSet.idl>
+#endif
+*/
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+/** describes a set of changes occurring as a batch transaction.
+
+ @see XChangesBatch
+ @see XChangesSet
+ @see ChangesEvent
+ @see ElementChange
+*/
+published typedef sequence<ElementChange> ChangesSet;
+
+//typedef XChangesSet ChangesSet;
+
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/CloseVetoException.idl b/offapi/com/sun/star/util/CloseVetoException.idl
new file mode 100644
index 000000000000..49608f76b0be
--- /dev/null
+++ b/offapi/com/sun/star/util/CloseVetoException.idl
@@ -0,0 +1,52 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_CloseVetoException_idl__
+#define __com_sun_star_util_CloseVetoException_idl__
+
+#ifndef __com_sun_star_uno_Exception_idl__
+#include <com/sun/star/uno/Exception.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+/** this exception can be thrown to prevent the environment of any object
+ from closing
+
+ @see XCloseListener
+ */
+published exception CloseVetoException: com::sun::star::uno::Exception
+{
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/Color.idl b/offapi/com/sun/star/util/Color.idl
new file mode 100644
index 000000000000..f6585e0e5723
--- /dev/null
+++ b/offapi/com/sun/star/util/Color.idl
@@ -0,0 +1,52 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_color_idl__
+#define __com_sun_star_util_color_idl__
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+/** describes an RGB color value with an optional alpha channel.
+
+ <p>The byte order is from high to low:
+ <ol>alpha channel
+ <li>red
+ <li>green
+ <li>blue
+ </ol>
+*/
+published typedef long Color;
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/util/DataEditorEvent.idl b/offapi/com/sun/star/util/DataEditorEvent.idl
new file mode 100644
index 000000000000..0d5b34cc00ae
--- /dev/null
+++ b/offapi/com/sun/star/util/DataEditorEvent.idl
@@ -0,0 +1,55 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_DataEditorEvent_idl__
+#define __com_sun_star_util_DataEditorEvent_idl__
+
+#ifndef __com_sun_star_lang_EventObject_idl__
+#include <com/sun/star/lang/EventObject.idl>
+#endif
+
+#ifndef __com_sun_star_util_DataEditorEventType_idl__
+#include <com/sun/star/util/DataEditorEventType.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+/** specifies an event broadcasted by an <type>XDataEditor</type>.
+ */
+published struct DataEditorEvent: com::sun::star::lang::EventObject
+{
+ /** specifies the type of the event.
+ */
+ DataEditorEventType Type;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/DataEditorEventType.idl b/offapi/com/sun/star/util/DataEditorEventType.idl
new file mode 100644
index 000000000000..d7c036b52c57
--- /dev/null
+++ b/offapi/com/sun/star/util/DataEditorEventType.idl
@@ -0,0 +1,51 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_DataEditorEventType_idl__
+#define __com_sun_star_util_DataEditorEventType_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+/** specifies the type of an event from an <type>XDataEditor</type>.
+ */
+published enum DataEditorEventType
+{
+ /** specifies that the data editing is done (data stored).
+ */
+ DONE,
+
+ /** specifies that the data editing was cancelled by the user (data not stored).
+ */
+ CANCELED
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/Date.idl b/offapi/com/sun/star/util/Date.idl
new file mode 100644
index 000000000000..0835662faa1d
--- /dev/null
+++ b/offapi/com/sun/star/util/Date.idl
@@ -0,0 +1,63 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_Date_idl__
+#define __com_sun_star_util_Date_idl__
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** represents a date value.
+ */
+published struct Date
+{
+ /** contains the day of month (1-31 or 0 for a void date).
+ */
+ unsigned short Day;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the month of year (1-12 or 0 for a void date).
+ */
+ unsigned short Month;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the year.
+ */
+ unsigned short Year;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/DateTime.idl b/offapi/com/sun/star/util/DateTime.idl
new file mode 100644
index 000000000000..d208e425b678
--- /dev/null
+++ b/offapi/com/sun/star/util/DateTime.idl
@@ -0,0 +1,87 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_DateTime_idl__
+#define __com_sun_star_util_DateTime_idl__
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** represents a combined date+time value.
+ */
+published struct DateTime
+{
+ /** contains the hundredth seconds (0-99).
+ */
+ unsigned short HundredthSeconds;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the seconds (0-59).
+ */
+ unsigned short Seconds;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the minutes (0-59).
+ */
+ unsigned short Minutes;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the hour (0-23).
+ */
+ unsigned short Hours;
+
+ //-------------------------------------------------------------------------
+
+ /** is the day of month (1-31 or 0 for a void date).
+ */
+ unsigned short Day;
+
+ //-------------------------------------------------------------------------
+
+ /** is the month of year (1-12 or 0 for a void date).
+ */
+ unsigned short Month;
+
+ //-------------------------------------------------------------------------
+
+ /** is the year.
+ */
+ unsigned short Year;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/DateTimeRange.idl b/offapi/com/sun/star/util/DateTimeRange.idl
new file mode 100644
index 000000000000..13612e79290f
--- /dev/null
+++ b/offapi/com/sun/star/util/DateTimeRange.idl
@@ -0,0 +1,116 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_DateTimeRange_idl__
+#define __com_sun_star_util_DateTimeRange_idl__
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** represents a range of date+time values.
+ */
+published struct DateTimeRange
+{
+ /** contains the start hundredth seconds (0-99) for the range.
+ */
+ unsigned short StartHundredthSeconds;
+
+ //-------------------------------------------------------------------------
+ /** contains the start seconds (0-59) for the range.
+ */
+ unsigned short StartSeconds;
+
+ //-------------------------------------------------------------------------
+ /** contains the start minutes (0-59) for the range.
+ */
+ unsigned short StartMinutes;
+
+ //-------------------------------------------------------------------------
+ /** contains the start hour (0-23) for the range.
+ */
+ unsigned short StartHours;
+
+ //-------------------------------------------------------------------------
+ /** contains the start day of month (1-31 or 0 for a void date) for the range.
+ */
+ unsigned short StartDay;
+
+ //-------------------------------------------------------------------------
+ /** contains the start month of year (1-12 or 0 for a void date) for the range.
+ */
+ unsigned short StartMonth;
+
+ //-------------------------------------------------------------------------
+ /** contains the start year for the range.
+ */
+ unsigned short StartYear;
+
+ //-------------------------------------------------------------------------
+ /** contains the end hundredth seconds (0-99) for the range.
+ */
+ unsigned short EndHundredthSeconds;
+
+ //-------------------------------------------------------------------------
+ /** contains the end seconds (0-59) for the range.
+ */
+ unsigned short EndSeconds;
+
+ //-------------------------------------------------------------------------
+ /** contains the end minutes (0-59) for the range.
+ */
+ unsigned short EndMinutes;
+
+ //-------------------------------------------------------------------------
+ /** contains the end hour (0-23) for the range.
+ */
+ unsigned short EndHours;
+
+ //-------------------------------------------------------------------------
+ /** contains the end day of month (1-31 or 0 for a void date) for the range.
+ */
+ unsigned short EndDay;
+
+ //-------------------------------------------------------------------------
+ /** contains the end month of year (1-12 or 0 for a void date) for the range.
+ */
+ unsigned short EndMonth;
+
+ //-------------------------------------------------------------------------
+ /** contains the end year for the range.
+ */
+ unsigned short EndYear;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/DiskFullException.idl b/offapi/com/sun/star/util/DiskFullException.idl
new file mode 100644
index 000000000000..385a5d1f590a
--- /dev/null
+++ b/offapi/com/sun/star/util/DiskFullException.idl
@@ -0,0 +1,51 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_DiskFullException_idl__
+#define __com_sun_star_util_DiskFullException_idl__
+
+#ifndef __com_sun_star_util_FileIOException_idl__
+#include <com/sun/star/util/FileIOException.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** is thrown when a disk full error occurs.
+ */
+published exception DiskFullException: com::sun::star::util::FileIOException
+{
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/Duration.idl b/offapi/com/sun/star/util/Duration.idl
new file mode 100644
index 000000000000..1832b4af4a55
--- /dev/null
+++ b/offapi/com/sun/star/util/Duration.idl
@@ -0,0 +1,101 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_util_Duration_idl__
+#define __com_sun_star_util_Duration_idl__
+
+
+//========================================================================
+
+module com { module sun { module star { module util {
+
+//========================================================================
+
+/** represents a duration.
+
+ <p>
+ A duration is the difference of 2 <type>DateTime</type>s.
+ </p>
+
+ <p>
+ Note that there are no constraints on the ranges of the members,
+ except that every member must be non-negative:
+ for example, a Duration of 400 Days is valid.
+ </p>
+
+ @since OOo 3.3
+ */
+struct Duration
+{
+ //--------------------------------------------------------------------
+ /** explicit sign bit.
+ */
+ boolean Negative;
+
+ //--------------------------------------------------------------------
+ /** contains the years.
+ */
+ unsigned short Years;
+
+ //--------------------------------------------------------------------
+ /** contains the months.
+ */
+ unsigned short Months;
+
+ //--------------------------------------------------------------------
+ /** contains the days.
+ */
+ unsigned short Days;
+
+ //--------------------------------------------------------------------
+ /** contains the hours.
+ */
+ unsigned short Hours;
+
+ //--------------------------------------------------------------------
+ /** contains the minutes.
+ */
+ unsigned short Minutes;
+
+ //--------------------------------------------------------------------
+ /** contains the seconds.
+ */
+ unsigned short Seconds;
+
+ //--------------------------------------------------------------------
+ /** contains the hundredth seconds.
+ */
+ unsigned short HundredthSeconds;
+
+};
+
+//========================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/util/ElementChange.idl b/offapi/com/sun/star/util/ElementChange.idl
new file mode 100644
index 000000000000..9ceb3a14ac70
--- /dev/null
+++ b/offapi/com/sun/star/util/ElementChange.idl
@@ -0,0 +1,65 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_ElementChange_idl__
+#define __com_sun_star_util_ElementChange_idl__
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** This structure describes a single change that is part of a batch of changes.
+ */
+published struct ElementChange
+{
+ /** This contains the accessor to the element which changed.
+
+ <p>The type and the value of the accessor depends on the service.</p>
+ */
+ any Accessor;
+
+ //-------------------------------------------------------------------------
+
+ /** This contains the element that was inserted or changed.
+ */
+ any Element;
+
+ //-------------------------------------------------------------------------
+
+ /** This contains the element that was replaced or removed.
+ */
+ any ReplacedElement;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/Endianness.idl b/offapi/com/sun/star/util/Endianness.idl
new file mode 100644
index 000000000000..c48698a0cbc7
--- /dev/null
+++ b/offapi/com/sun/star/util/Endianness.idl
@@ -0,0 +1,64 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_Endianness_idl__
+#define __com_sun_star_util_Endianness_idl__
+
+module com { module sun { module star { module util {
+
+/** These constans describe the endiannes of data structures.<p>
+
+ The endianness specifies the order in which the bytes of larger
+ types are laid out in memory.<p>
+
+ @since OOo 2.0.0
+ */
+constants Endianness
+{
+ /** Little endian.<p>
+
+ The values are stored in little endian format, i.e. the bytes
+ of the long word 0xAABBCCDD are layed out like 0xDD, 0xCC,
+ 0xBB, 0xAA in memory. That is, data of arbitrary machine word
+ lengths always starts with the least significant byte, and
+ ends with the most significant one.<p>
+ */
+ const byte LITTLE=0;
+
+ /** Big endian.<p>
+
+ The values are stored in big endian format, i.e. the bytes of
+ the long word 0xAABBCCDD are layed out like 0xAA, 0xBB, 0xCC,
+ 0xDD in memory. That is, data of arbitrary machine word
+ lengths always start with the most significant byte, and ends
+ with the least significant one.<p>
+ */
+ const byte BIG=1;
+};
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/FileIOException.idl b/offapi/com/sun/star/util/FileIOException.idl
new file mode 100644
index 000000000000..2b1d2ae31400
--- /dev/null
+++ b/offapi/com/sun/star/util/FileIOException.idl
@@ -0,0 +1,50 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_FileIOException_idl__
+#define __com_sun_star_util_FileIOException_idl__
+
+#ifndef __com_sun_star_uno_Exception_idl__
+#include <com/sun/star/uno/Exception.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** thrown when file I/O error occurs.
+ */
+published exception FileIOException: com::sun::star::uno::Exception
+{
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/JobManager.idl b/offapi/com/sun/star/util/JobManager.idl
new file mode 100644
index 000000000000..371fa0ae3bb6
--- /dev/null
+++ b/offapi/com/sun/star/util/JobManager.idl
@@ -0,0 +1,46 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun__star_util_JobManager_idl__
+#define __com_sun__star_util_JobManager_idl__
+
+#ifndef __com_sun_star_util_XJobManager_idl__
+#include <com/sun/star/util/XJobManager.idl>
+#endif
+
+module com { module sun { module star { module util {
+
+//============================================================================
+/** Manage cancellable jobs
+
+ @see XJobManager
+ */
+service JobManager : XJobManager;
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/Language.idl b/offapi/com/sun/star/util/Language.idl
new file mode 100644
index 000000000000..8b1446414d04
--- /dev/null
+++ b/offapi/com/sun/star/util/Language.idl
@@ -0,0 +1,44 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_Language_idl__
+#define __com_sun_star_util_Language_idl__
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+/** This type is used for a language identifier number.
+*/
+published typedef short Language;
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/MalformedNumberFormatException.idl b/offapi/com/sun/star/util/MalformedNumberFormatException.idl
new file mode 100644
index 000000000000..f084663289d3
--- /dev/null
+++ b/offapi/com/sun/star/util/MalformedNumberFormatException.idl
@@ -0,0 +1,60 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_MalformedNumberFormatException_idl__
+#define __com_sun_star_util_MalformedNumberFormatException_idl__
+
+#ifndef __com_sun_star_uno_Exception_idl__
+#include <com/sun/star/uno/Exception.idl>
+#endif
+
+
+//=============================================================================
+
+ module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** is thrown when a NumberFormat string is syntactically
+ incorrect.
+ */
+published exception MalformedNumberFormatException: com::sun::star::uno::Exception
+{
+ //-------------------------------------------------------------------------
+
+ /** contains the character position in the string where the malformation
+ begins.
+ */
+ long CheckPos;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/util/MeasureUnit.idl b/offapi/com/sun/star/util/MeasureUnit.idl
new file mode 100644
index 000000000000..9071c44b27a5
--- /dev/null
+++ b/offapi/com/sun/star/util/MeasureUnit.idl
@@ -0,0 +1,106 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_MeasureUnit_idl__
+#define __com_sun_star_util_MeasureUnit_idl__
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** These constants are used to specify a measure.<p>
+ A component using these constants may not support all units.
+ */
+published constants MeasureUnit
+{
+ /** all measures for this component are in 100th millimeter */
+ const short MM_100TH = 0;
+
+ /** all measures for this component are in 10th millimeter */
+ const short MM_10TH = 1;
+
+ /** all measures for this component are in millimeter */
+ const short MM = 2;
+
+ /** all measures for this component are in centimeters */
+ const short CM = 3;
+
+ /** all measures for this component are in 1000th inch */
+ const short INCH_1000TH = 4;
+
+ /** all measures for this component are in 100th inch */
+ const short INCH_100TH = 5;
+
+ /** all measures for this component are in 10th inch */
+ const short INCH_10TH = 6;
+
+ /** all measures for this component are in inch */
+ const short INCH = 7;
+
+ /** all measures for this component are in points */
+ const short POINT = 8;
+
+ /** all measures for this component are in twips */
+ const short TWIP = 9;
+
+ /** all measures for this component are in meters */
+ const short M = 10;
+
+ /** all measures for this component are in kilometers */
+ const short KM = 11;
+
+ /** all measures for this component are in pica */
+ const short PICA = 12;
+
+ /** all measures for this component are in foot */
+ const short FOOT = 13;
+
+ /** all measures for this component are in miles */
+ const short MILE = 14;
+
+ /** all measures for this component are in percentage */
+ const short PERCENT = 15;
+
+ /** all measures for this component are in pixel */
+ const short PIXEL = 16;
+
+ /** all measures for this component are in APPFONT */
+ const short APPFONT = 17;
+
+ /** all measures for this component are in SYSFONT */
+ const short SYSFONT = 18;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/util/ModeChangeEvent.idl b/offapi/com/sun/star/util/ModeChangeEvent.idl
new file mode 100644
index 000000000000..f03b337e1bbc
--- /dev/null
+++ b/offapi/com/sun/star/util/ModeChangeEvent.idl
@@ -0,0 +1,63 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_util_ModeChangeEvent_idl__
+#define __com_sun_star_util_ModeChangeEvent_idl__
+
+#ifndef __com_sun_star_lang_EventObject_idl__
+#include <com/sun/star/lang/EventObject.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** allows to veto changes in an object's internal mode.
+
+ @see XModeChangeBroadcaster
+ @see XModeChangeListener
+
+ @since OOo 1.1.2
+*/
+published struct ModeChangeEvent : com::sun::star::lang::EventObject
+{
+ /** denotes the new internal mode of a component
+
+ <p>The semantics of the mode string is to be defined by the component
+ broadcasting this event.</p>
+ */
+ string NewMode;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/util/NotNumericException.idl b/offapi/com/sun/star/util/NotNumericException.idl
new file mode 100644
index 000000000000..ed1d550c2163
--- /dev/null
+++ b/offapi/com/sun/star/util/NotNumericException.idl
@@ -0,0 +1,51 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_NotNumericException_idl__
+#define __com_sun_star_util_NotNumericException_idl__
+
+#ifndef __com_sun_star_uno_Exception_idl__
+#include <com/sun/star/uno/Exception.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** indicates that a non-numeric string is to be converted to a number.
+ */
+published exception NotNumericException: com::sun::star::uno::Exception
+{
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/NumberFormat.idl b/offapi/com/sun/star/util/NumberFormat.idl
new file mode 100644
index 000000000000..f8f18e9874cc
--- /dev/null
+++ b/offapi/com/sun/star/util/NumberFormat.idl
@@ -0,0 +1,126 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_NumberFormat_idl__
+#define __com_sun_star_util_NumberFormat_idl__
+
+
+//=============================================================================
+
+ module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** contains constants that are used to specify the type of a number format.
+ */
+published constants NumberFormat
+{
+ //-------------------------------------------------------------------------
+
+ /** selects all number formats.
+ */
+ const short ALL = 0;
+
+ //-------------------------------------------------------------------------
+
+ /** selects only user-defined number formats.
+ */
+ const short DEFINED = 1;
+
+ //-------------------------------------------------------------------------
+
+ /** selects date formats.
+ */
+ const short DATE = 2;
+
+ //-------------------------------------------------------------------------
+
+ /** selects time formats.
+ */
+ const short TIME = 4;
+
+ //-------------------------------------------------------------------------
+
+ /** selects currency formats.
+ */
+ const short CURRENCY = 8;
+
+ //-------------------------------------------------------------------------
+
+ /** selects decimal number formats.
+ */
+ const short NUMBER = 16;
+
+ //-------------------------------------------------------------------------
+
+ /** selects scientific number formats.
+ */
+ const short SCIENTIFIC = 32;
+
+ //-------------------------------------------------------------------------
+
+ /** selects number formats for fractions.
+ */
+ const short FRACTION = 64;
+
+ //-------------------------------------------------------------------------
+
+ /** selects percentage number formats.
+ */
+ const short PERCENT = 128;
+
+ //-------------------------------------------------------------------------
+
+ /** selects text number formats.
+ */
+ const short TEXT = 256;
+
+ //-------------------------------------------------------------------------
+
+ /** selects number formats which contain date and time.
+ */
+ const short DATETIME = 6;
+
+ //-------------------------------------------------------------------------
+
+ /** selects boolean number formats.
+ */
+ const short LOGICAL = 1024;
+
+ //-------------------------------------------------------------------------
+
+ /** is used as a return value if no format exists.
+ */
+ const short UNDEFINED = 2048;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/util/NumberFormatProperties.idl b/offapi/com/sun/star/util/NumberFormatProperties.idl
new file mode 100644
index 000000000000..7c747aff3d0f
--- /dev/null
+++ b/offapi/com/sun/star/util/NumberFormatProperties.idl
@@ -0,0 +1,81 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_NumberFormatProperties_idl__
+#define __com_sun_star_util_NumberFormatProperties_idl__
+
+#ifndef __com_sun_star_lang_Locale_idl__
+#include <com/sun/star/lang/Locale.idl>
+#endif
+
+
+//=============================================================================
+
+ module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** contains properties specifying the behavior of a <type>NumberFormatter</type>.
+
+ @see NumberFormatter
+ */
+published service NumberFormatProperties
+{
+ //-------------------------------------------------------------------------
+
+ /** contains the format string of the number format.
+ */
+ [readonly, property] string FormatString;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the locale of the number format.
+ */
+ [readonly, property] com::sun::star::lang::Locale Locale;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the type of the number format.
+
+ @see NumberFormat
+ */
+ [readonly, property] short Type;
+
+ //-------------------------------------------------------------------------
+
+ /** contains a comment regarding the number format for
+ display to the user.
+ */
+ [property] string Comment;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/util/NumberFormatSettings.idl b/offapi/com/sun/star/util/NumberFormatSettings.idl
new file mode 100644
index 000000000000..2f1013ae93ad
--- /dev/null
+++ b/offapi/com/sun/star/util/NumberFormatSettings.idl
@@ -0,0 +1,88 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_NumberFormatSettings_idl__
+#define __com_sun_star_util_NumberFormatSettings_idl__
+
+#ifndef __com_sun_star_beans_XPropertySet_idl__
+#include <com/sun/star/beans/XPropertySet.idl>
+#endif
+
+#ifndef __com_sun_star_util_Date_idl__
+#include <com/sun/star/util/Date.idl>
+#endif
+
+
+//=============================================================================
+
+ module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** specifies the settings for number formatting.
+ */
+published service NumberFormatSettings
+{
+ /** provides access to the properties.
+ */
+ interface com::sun::star::beans::XPropertySet;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the date which is represented by the value 0.
+
+ <p>The most common value for this is 12/30/1899.</p>
+ */
+ [property] com::sun::star::util::Date NullDate;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the maximum number of decimals used for the
+ standard number format ("General").
+ */
+ [property] short StandardDecimals;
+
+ //-------------------------------------------------------------------------
+
+ /** is set to indicate that a zero value should be formatted as an empty string.
+ */
+ [property] boolean NoZero;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the first year to be generated from a two-digit
+ year input.
+ */
+ [property] short TwoDigitDateStart;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/util/NumberFormats.idl b/offapi/com/sun/star/util/NumberFormats.idl
new file mode 100644
index 000000000000..a451fd1b7a4f
--- /dev/null
+++ b/offapi/com/sun/star/util/NumberFormats.idl
@@ -0,0 +1,64 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_NumberFormats_idl__
+#define __com_sun_star_util_NumberFormats_idl__
+
+#ifndef __com_sun_star_util_XNumberFormats_idl__
+#include <com/sun/star/util/XNumberFormats.idl>
+#endif
+
+#ifndef __com_sun_star_util_XNumberFormatTypes_idl__
+#include <com/sun/star/util/XNumberFormatTypes.idl>
+#endif
+
+
+//=============================================================================
+
+ module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** specifies a container of number formats.
+ */
+published service NumberFormats
+{
+ /** is used to access or create individual formats.
+ */
+ interface com::sun::star::util::XNumberFormats;
+
+ /** is used to get specific, predefined number formats.
+ */
+ interface com::sun::star::util::XNumberFormatTypes;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/util/NumberFormatsSupplier.idl b/offapi/com/sun/star/util/NumberFormatsSupplier.idl
new file mode 100644
index 000000000000..3b7fae2d7ecb
--- /dev/null
+++ b/offapi/com/sun/star/util/NumberFormatsSupplier.idl
@@ -0,0 +1,77 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_util_NumberFormatsSupplier_idl__
+#define __com_sun_star_util_NumberFormatsSupplier_idl__
+
+#ifndef __com_sun_star_util_XNumberFormatsSupplier_idl__
+#include <com/sun/star/util/XNumberFormatsSupplier.idl>
+#endif
+
+#ifndef __com_sun_star_lang_XInitialization_idl__
+#include <com/sun/star/lang/XInitialization.idl>
+#endif
+
+//=============================================================================
+
+ module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** provides an supplier of number formats
+
+ @see NumberFormats
+ @see NumberFormatter
+
+ @since OOo 1.1.2
+*/
+published service NumberFormatsSupplier
+{
+ /** used to initialize the component when instantiating.
+
+ <p>In the <member scope="com::sun::star::lang">XInitialization::initialize</member> method, you can
+ pass a <type scope="com::sun::star::lang">Locale</type> to specify the default locale of the
+ number formats supplier.</p>
+
+ <p>The component should be initialized only once, after it has been instantiated, and before it
+ has been used.<br/>
+ If you initialize it a second time (or after you used it), it is up to implementation
+ how this is handled.</p>
+ */
+ interface com::sun::star::lang::XInitialization;
+
+ /** allows access to the number formats supplied by the component.
+ */
+ interface XNumberFormatsSupplier;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/util/NumberFormatter.idl b/offapi/com/sun/star/util/NumberFormatter.idl
new file mode 100644
index 000000000000..c130dfebc210
--- /dev/null
+++ b/offapi/com/sun/star/util/NumberFormatter.idl
@@ -0,0 +1,69 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_NumberFormatter_idl__
+#define __com_sun_star_util_NumberFormatter_idl__
+
+#ifndef __com_sun_star_util_XNumberFormatter_idl__
+#include <com/sun/star/util/XNumberFormatter.idl>
+#endif
+
+#ifndef __com_sun_star_util_XNumberFormatPreviewer_idl__
+#include <com/sun/star/util/XNumberFormatPreviewer.idl>
+#endif
+
+
+//=============================================================================
+
+ module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** represents an object which can format numbers and strings.
+
+ <p>A NumberFormatter, if available, can be created by the global
+ service manager.</p>
+ */
+published service NumberFormatter
+{
+ /** is used to format or parse numbers using formats from a
+ <type>NumberFormats</type> object.
+ */
+ interface com::sun::star::util::XNumberFormatter;
+
+ /** is used to format numbers using a number format string
+ that is not inserted into a <type>NumberFormats</type> object.
+ */
+ interface com::sun::star::util::XNumberFormatPreviewer;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/util/OfficeInstallationDirectories.idl b/offapi/com/sun/star/util/OfficeInstallationDirectories.idl
new file mode 100644
index 000000000000..3c127fa701d2
--- /dev/null
+++ b/offapi/com/sun/star/util/OfficeInstallationDirectories.idl
@@ -0,0 +1,79 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_util_OfficeInstallationDirectories_idl__
+#define __com_sun_star_util_OfficeInstallationDirectories_idl__
+
+#ifndef __com_sun_star_util_XOfficeInstallationDirectories_idl__
+#include <com/sun/star/util/XOfficeInstallationDirectories.idl>
+#endif
+
+//============================================================================
+
+module com { module sun { module star { module util {
+
+//============================================================================
+
+/** encapsulates access to the current office installation directory and
+ office user data directory, provides functionality to create URLs
+ containing relocatable (not absolute) references to the current office
+ installation directory and user data directory and vice versa.
+
+ <p>This functionality is useful when data containing references to the
+ current office installation directory or user data directory must be made
+ persistent and re-read later. In many cases, storing the reference
+ directly would destroy the relocatability of an office installation and the
+ possibility to share one office user data directory among parallel office
+ installtions.
+
+ @since OOo 2.0.0
+ */
+service OfficeInstallationDirectories
+{
+ /** provides access to the current office installation directories (office
+ base installation and user data).
+ */
+ interface com::sun::star::util::XOfficeInstallationDirectories;
+};
+
+//============================================================================
+
+/** A singleton that provides access to the current office installation
+ directories.
+
+ @see OfficeInstallationDirectories
+*/
+singleton theOfficeInstallationDirectories
+{
+ service com::sun::star::util::OfficeInstallationDirectories;
+};
+
+//============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/PathSettings.idl b/offapi/com/sun/star/util/PathSettings.idl
new file mode 100644
index 000000000000..e67f6813af93
--- /dev/null
+++ b/offapi/com/sun/star/util/PathSettings.idl
@@ -0,0 +1,173 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_util_PathSettings_idl__
+#define __com_sun_star_util_PathSettings_idl__
+
+#ifndef __com_sun_star_beans_XPropertySet_idl__
+#include <com/sun/star/beans/XPropertySet.idl>
+#endif
+
+#ifndef __com_sun_star_beans_XFastPropertySet_idl__
+#include <com/sun/star/beans/XFastPropertySet.idl>
+#endif
+
+#ifndef __com_sun_star_beans_XMultiPropertySet_idl__
+#include <com/sun/star/beans/XMultiPropertySet.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** Supports read/write access and listener for the paths properties that
+ the Office uses.
+ <p>
+ The property names of the Office paths/directories are an exactly match
+ to the configuration entries found in the file
+ (org/openoffice/Office/Common.xml).<br>
+ This service supports the usage of path variables to define
+ paths that a relative to other office or system directories.
+ See <type>PathSubstitution</type>
+ </p>
+
+ @since OOo 1.1.2
+ */
+published service PathSettings
+{
+ /** Main interface to have access to the path properties. */
+ interface com::sun::star::beans::XPropertySet;
+
+ /** An extension to the <type scope="com::sun::star::beans">XPropertySet</type> interface.
+ The get and set methods use handles to access the property values
+ instead of character strings. */
+ interface com::sun::star::beans::XFastPropertySet;
+
+ /** Provides access to multiple properties of this service with a
+ single call. */
+ interface com::sun::star::beans::XMultiPropertySet;
+
+ /** Specifies the directory that contains spreadsheet add-ins which use
+ the old add-in API */
+ [property] string Addin;
+
+ /** The settings of the AutoCorrect dialog. The value can be more than
+ one path separated by a semicolon.
+ */
+ [property] string AutoCorrect;
+
+ /**The directory which contains the AutoText modules. The value can be more than
+ one path separated by a semicolon.*/
+ [property] string AutoText;
+
+ /** Automatic backup copies of documents are stored here. */
+ [property] string Backup;
+
+ /** The Basic files, used by the AutoPilots, can be found here. The value can be more than
+ one path separated by a semicolon.*/
+ [property] string Basic;
+
+ /** This directory contains the icons for the toolbars. */
+ [property] string Bitmap;
+
+ /** The configuration files are located here. This entry cannot be changed
+ by the user in Office user interface. */
+ [property] string Config;
+
+ /** The provided dictionaries are stored here. */
+ [property] string Dictionary;
+
+ /** Path to save folder bookmarks */
+ [property] string Favorite;
+
+ /** Specifies the directory where all the filters are stored. */
+ [property] string Filter;
+
+ /** Specifies the directories which contains the Gallery
+ database and multimedia files. The value can be more than
+ one path separated by a semicolon.*/
+ [property] string Gallery;
+
+ /** This directory is displayed when the dialog for opening a graphic
+ or for saving a new graphic is called. */
+ [property] string Graphic;
+
+ /** The path to the Office help files. */
+ [property] string Help;
+
+ /** The files that are necessary for the spellcheck are saved here. */
+ [property] string Linguistic;
+
+ /** This is the path for the modules. */
+ [property] string Module;
+
+ /** This is the path to the palette files *.SOB to *.SOF containing
+ user-defined colors and patterns. */
+ [property] string Palette;
+
+ /** Plugins are saved in these directories. The value can be more than
+ one path separated by a semicolon.*/
+ [property] string Plugin;
+
+ /** Mail, News files and other information (for example, about FTP Server)
+ are stored here.*/
+ [property] string Storage;
+
+ /** The base url to the office temp-files */
+ [property] string Temp;
+
+ /** The templates originate from these folders and sub-folders. The value
+ can be more than one path separated by a semicolon.*/
+ [property] string Template;
+
+ /** Global directories to look for user interface configuration files. The
+ user interface configuration will be merged with user settings stored
+ in the directory specified by <var>UserConfig</var>. The value can be more
+ than one path separated by a semicolon.*/
+ [property] string UIConfig;
+
+ /** Specifies the folder with the user settings. */
+ [property] string UserConfig;
+
+ /** The custom dictionaries are contained here.
+ * @deprecated
+ * */
+ [property] string UserDictionary;
+
+ /** The path of the work folder can be modified according to the
+ user's needs. The path specified here can be seen in the Open
+ or Save dialog. */
+ [property] string Work;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/PathSubstitution.idl b/offapi/com/sun/star/util/PathSubstitution.idl
new file mode 100644
index 000000000000..455465ddf06a
--- /dev/null
+++ b/offapi/com/sun/star/util/PathSubstitution.idl
@@ -0,0 +1,108 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_util_PathSubstitution_idl__
+#define __com_sun_star_util_PathSubstitution_idl__
+
+#ifndef __com_sun_star_util_XStringSubstitution_idl__
+#include <com/sun/star/util/XStringSubstitution.idl>
+#endif
+
+#ifndef __com_sun_star_container_XNameContainer_idl__
+#include <com/sun/star/container/XNameContainer.idl>
+#endif
+
+#ifndef __com_sun_star_container_XContainerListener_idl__
+#include <com/sun/star/container/XContainerListener.idl>
+#endif
+
+//=============================================================================
+
+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 synatx: "$("&lt;variable-name&gt;")".
+ Path variables are not case sensitive and are always provided as a UCB-complient URL's
+ (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>$(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>
+ <dt>$(temp)</dt>
+ <dd>The current temporary directory.</dd>
+ <dt>$(path)</dt>
+ <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>
+ <dt>$(vlang)</dt>
+ <dd>The language used by the Office as a string. Like "german" for a german Office.</dd>
+ </dl>
+
+ @since OOo 1.1.2
+*/
+
+published service PathSubstitution
+{
+ //-------------------------------------------------------------------------
+ /** Interface to exchange path variables with defined paths and to resubstitute paths with path variables.
+
+ <p>
+ To resubstitute path variables the caller must provide pathes as UCB-compliant URL's.
+ </p>
+ */
+ interface com::sun::star::util::XStringSubstitution;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/ReplaceDescriptor.idl b/offapi/com/sun/star/util/ReplaceDescriptor.idl
new file mode 100644
index 000000000000..192c10707226
--- /dev/null
+++ b/offapi/com/sun/star/util/ReplaceDescriptor.idl
@@ -0,0 +1,59 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_ReplaceDescriptor_idl__
+#define __com_sun_star_util_ReplaceDescriptor_idl__
+
+#ifndef __com_sun_star_util_SearchDescriptor_idl__
+#include <com/sun/star/util/SearchDescriptor.idl>
+#endif
+
+#ifndef __com_sun_star_util_XReplaceDescriptor_idl__
+#include <com/sun/star/util/XReplaceDescriptor.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** describes what and how to replace strings.
+ */
+published service ReplaceDescriptor
+{
+ service com::sun::star::util::SearchDescriptor;
+
+ interface com::sun::star::util::XReplaceDescriptor;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/RevisionTag.idl b/offapi/com/sun/star/util/RevisionTag.idl
new file mode 100644
index 000000000000..d8db6304669f
--- /dev/null
+++ b/offapi/com/sun/star/util/RevisionTag.idl
@@ -0,0 +1,71 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_RevisionTag_idl__
+#define __com_sun_star_util_RevisionTag_idl__
+
+#include <com/sun/star/util/DateTime.idl>
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** represents the information that describes a revision of something, f.e. a document
+ */
+struct RevisionTag
+{
+ //-------------------------------------------------------------------------
+ /** contains the time when the revision was created ( can be invalid )
+ */
+ DateTime TimeStamp;
+
+ //-------------------------------------------------------------------------
+ /** contains an identifier for the author that created the revision( can be empty )
+ */
+ string Author;
+
+ //-------------------------------------------------------------------------
+ /** contains a comment that the author has left for this revision ( can be empty )
+ */
+ string Comment;
+
+ //-------------------------------------------------------------------------
+ /** contains a unique identifier for the revision and must not be empty
+ <p>
+ This identifier can have any form. It can be something like "1.2.3" or "Version 1" etc.
+ It depends on the revision control system how it names the revisions.
+ </p>
+ */
+ string Identifier;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/SearchDescriptor.idl b/offapi/com/sun/star/util/SearchDescriptor.idl
new file mode 100644
index 000000000000..b49e174ccf50
--- /dev/null
+++ b/offapi/com/sun/star/util/SearchDescriptor.idl
@@ -0,0 +1,140 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_SearchDescriptor_idl__
+#define __com_sun_star_util_SearchDescriptor_idl__
+
+#ifndef __com_sun_star_util_XSearchDescriptor_idl__
+#include <com/sun/star/util/XSearchDescriptor.idl>
+#endif
+
+#ifndef __com_sun_star_beans_XPropertySet_idl__
+#include <com/sun/star/beans/XPropertySet.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** describes what and how to search within a container.
+ */
+published service SearchDescriptor
+{
+ interface com::sun::star::util::XSearchDescriptor;
+
+ interface com::sun::star::beans::XPropertySet;
+
+ //-------------------------------------------------------------------------
+ /** If <TRUE/>, the search is done backwards in the document.
+ */
+ [property] boolean SearchBackwards;
+
+ //-------------------------------------------------------------------------
+ /** If <TRUE/>, the case of the letters is important for the match.
+ */
+ [property] boolean SearchCaseSensitive;
+
+ //-------------------------------------------------------------------------
+ /** If <TRUE/>, only complete words will be found.
+ */
+ [property] boolean SearchWords;
+
+ //-------------------------------------------------------------------------
+ /** If <TRUE/>, the search string is evaluated as a regular expression.
+ */
+ [property] boolean SearchRegularExpression;
+
+ //-------------------------------------------------------------------------
+ /** If <TRUE/>, it is searched for positions where the paragraph style with
+ the name of the search pattern is applied.
+ */
+ [property] boolean SearchStyles;
+
+ //-------------------------------------------------------------------------
+ /** If <TRUE/>, a "similarity search" is performed.
+
+ <p>In the case of a similarity search, the following properties
+ specify the kind of similarity:
+ </p>
+ <ul>
+ <li>SearchSimilarityRelax
+ </li>
+ <li>SearchSimilarityRemove
+ </li>
+ <li>SearchSimilarityAdd
+ </li>
+ <li>SearchSimilarityExchange
+ </li>
+ </ul>
+ */
+ [property] boolean SearchSimilarity;
+
+ //-------------------------------------------------------------------------
+ /** If <TRUE/>, all similarity rules are applied together.
+
+ <p>In the case of a relaxed similarity search, the following
+ properties are applied together:
+
+ </p>
+ <ul>
+ <li>SearchSimilarityRemove
+ </li>
+ <li>SearchSimilarityAdd
+ </li>
+ <li>SearchSimilarityExchange
+ </li>
+ </ul>
+ */
+ [property] boolean SearchSimilarityRelax;
+
+ //-------------------------------------------------------------------------
+ /** This property specifies the number of characters that may be
+ ignored to match the search pattern.
+ */
+ [property] short SearchSimilarityRemove;
+
+ //-------------------------------------------------------------------------
+ /** specifies the number of characters that must be
+ added to match the search pattern.
+ */
+ [property] short SearchSimilarityAdd;
+
+ //-------------------------------------------------------------------------
+ /** This property specifies the number of characters that must
+ be replaced to match the search pattern.
+ */
+ [property] short SearchSimilarityExchange;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/SortDescriptor.idl b/offapi/com/sun/star/util/SortDescriptor.idl
new file mode 100644
index 000000000000..cab1cf01f0e2
--- /dev/null
+++ b/offapi/com/sun/star/util/SortDescriptor.idl
@@ -0,0 +1,111 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_SortDescriptor_idl__
+#define __com_sun_star_util_SortDescriptor_idl__
+
+#ifndef __com_sun_star_beans_XPropertySet_idl__
+#include <com/sun/star/beans/XPropertySet.idl>
+#endif
+
+#ifndef __com_sun_star_lang_Locale_idl__
+#include <com/sun/star/lang/Locale.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** specifies the properties which can be used to describe
+ a sort order applied to an XSortable.
+
+ @see XSortable
+
+ @deprecated
+ */
+published service SortDescriptor
+{
+ interface com::sun::star::beans::XPropertySet;
+
+ //-------------------------------------------------------------------------
+ /** specifies if the case of letters is important when comparing entries.
+ */
+ [property] boolean IsCaseSensitive;
+
+ //-------------------------------------------------------------------------
+ /** specifies the sorting order.
+
+ The sorting order may be defined for sepearte keys in specific
+ implementations. For those this property may not need to be set.
+
+ @see <type scope"com::sun::star::text">TextSortDescriptor</type>
+ */
+ [optional, property] boolean SortAscending;
+
+ //-------------------------------------------------------------------------
+ /** specifies if the columns are sorted.
+
+ <dl>
+ <dt>
+ <TRUE/>
+ </dt>
+ <dd>The columns are sorted.
+
+ </dd>
+ <dt>
+ <FALSE/>
+ </dt>
+ <dd>The rows are sorted.
+ </dd>
+ </dl>
+ */
+ [property] boolean SortColumns;
+
+ //-------------------------------------------------------------------------
+ /** specifies the locale for the compare operator (collator).
+ */
+ [property] com::sun::star::lang::Locale CollatorLocale;
+
+ //-------------------------------------------------------------------------
+ /** specifies the algorithm for the compare operator (collator).
+
+ The collator algorithm may be defined for sepearte keys in specific
+ implementations. For those this property may not need to be set.
+
+ @see <type scope"com::sun::star::text">TextSortDescriptor</type>
+
+ @see com::sun::star::i18n::XCollator
+ */
+ [optional, property] string CollatorAlgorithm;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/SortDescriptor2.idl b/offapi/com/sun/star/util/SortDescriptor2.idl
new file mode 100644
index 000000000000..8d6e8606cab6
--- /dev/null
+++ b/offapi/com/sun/star/util/SortDescriptor2.idl
@@ -0,0 +1,57 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_SortDescriptor2_idl__
+#define __com_sun_star_util_SortDescriptor2_idl__
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** gives access to the properties of a sort descriptor. The properties are
+ given in a sequence of PropertyValue.
+
+ <p>The available properties are listed in the specific sort
+ descriptor implementing this service.</p>
+
+ @see XSortable
+ @see com::sun::star::table::TableSortDescriptor2
+ @see com::sun::star::text::TextSortDescriptor2
+
+ @since OOo 1.1.2
+ */
+published service SortDescriptor2
+{
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/SortField.idl b/offapi/com/sun/star/util/SortField.idl
new file mode 100644
index 000000000000..0c20871f3863
--- /dev/null
+++ b/offapi/com/sun/star/util/SortField.idl
@@ -0,0 +1,67 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_SortField_idl__
+#define __com_sun_star_util_SortField_idl__
+
+#ifndef __com_sun_star_util_SortFieldType_idl__
+#include <com/sun/star/util/SortFieldType.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+/** describes a single field in a sort descriptor.
+
+ @deprecated
+ */
+published struct SortField
+{
+ /** index of the field in the table; 0-based.
+ */
+ long Field;
+
+ //-------------------------------------------------------------------------
+ /** <TRUE/> if data are sorted in ascending order,
+ <FALSE/> if in descending order.
+ */
+ boolean SortAscending;
+
+ //-------------------------------------------------------------------------
+ /** type of contents in the field.
+ */
+ com::sun::star::util::SortFieldType FieldType;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/SortFieldType.idl b/offapi/com/sun/star/util/SortFieldType.idl
new file mode 100644
index 000000000000..e27f94374772
--- /dev/null
+++ b/offapi/com/sun/star/util/SortFieldType.idl
@@ -0,0 +1,64 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_SortFieldType_idl__
+#define __com_sun_star_util_SortFieldType_idl__
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** enumeration used to specify the type of contents in a sort field.
+
+ @deprecated
+ */
+published enum SortFieldType
+{
+ //-------------------------------------------------------------------------
+ /** type is determined automatically.
+ */
+ AUTOMATIC,
+
+ //-------------------------------------------------------------------------
+ /** sort field contains numerical data.
+ */
+ NUMERIC,
+
+ //-------------------------------------------------------------------------
+ /** sort field contains text data.
+ */
+ ALPHANUMERIC
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/Sortable.idl b/offapi/com/sun/star/util/Sortable.idl
new file mode 100644
index 000000000000..328a80517343
--- /dev/null
+++ b/offapi/com/sun/star/util/Sortable.idl
@@ -0,0 +1,67 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_Sortable_idl__
+#define __com_sun_star_util_Sortable_idl__
+
+#ifndef __com_sun_star_util_SortDescriptor_idl__
+#include <com/sun/star/util/SortDescriptor.idl>
+#endif
+
+#ifndef __com_sun_star_util_XSortable_idl__
+#include <com/sun/star/util/XSortable.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** provides an interface for sorting.
+
+ @deprecated
+
+ @since OOo 1.1.2
+
+ */
+published service Sortable
+{
+ /** the properties returned by a call to the 'createSortDescriptor' method
+ of this interfaces implementation are those of the
+ 'com.sun.star.util.SortDescriptor' service.
+
+ @see <type scope="com::sun::star::util">SortDescriptor</type>
+ */
+ interface com::sun::star::util::XSortable;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/TextSearch.idl b/offapi/com/sun/star/util/TextSearch.idl
new file mode 100644
index 000000000000..f6abf8c088e1
--- /dev/null
+++ b/offapi/com/sun/star/util/TextSearch.idl
@@ -0,0 +1,53 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_TextSearch_idl__
+#define __com_sun_star_util_TextSearch_idl__
+
+#ifndef __com_sun_star_lang_XTextSearch_idl__
+#include <com/sun/star/util/XTextSearch.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** search a string with a defined algorithm in another string.
+
+ <p>It is possible to search forward or backward in the string.
+*/
+published service TextSearch
+{
+ interface com::sun::star::util::XTextSearch;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/Time.idl b/offapi/com/sun/star/util/Time.idl
new file mode 100644
index 000000000000..3c03745b6e79
--- /dev/null
+++ b/offapi/com/sun/star/util/Time.idl
@@ -0,0 +1,66 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_Time_idl__
+#define __com_sun_star_util_Time_idl__
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** represents a time value.
+ */
+published struct Time
+{
+ /** contains the hundredth seconds (0-99).
+ */
+ unsigned short HundredthSeconds;
+
+ //-------------------------------------------------------------------------
+ /** contains the seconds (0-59).
+ */
+ unsigned short Seconds;
+
+ //-------------------------------------------------------------------------
+ /** contains the minutes (0-59).
+ */
+ unsigned short Minutes;
+
+ //-------------------------------------------------------------------------
+ /** contains the hour (0-23).
+ */
+ unsigned short Hours;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/TriState.idl b/offapi/com/sun/star/util/TriState.idl
new file mode 100644
index 000000000000..8b3c0f684e40
--- /dev/null
+++ b/offapi/com/sun/star/util/TriState.idl
@@ -0,0 +1,66 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_TriState_idl__
+#define __com_sun_star_util_TriState_idl__
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** This enumeration represents a tristate value.<p>
+
+ This enumeration defines three values, <TRUE/>, <FALSE/> and a don't know
+ value.<p>
+ */
+enum TriState
+{
+ /** The value is equivalent to <FALSE/>.
+ */
+ NO,
+
+ //-------------------------------------------------------------------------
+
+ /** The value is equivalent to <TRUE/>.
+ */
+ YES,
+
+ //-------------------------------------------------------------------------
+
+ /** The value is indeterminate.
+ */
+ INDETERMINATE
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/URL.idl b/offapi/com/sun/star/util/URL.idl
new file mode 100644
index 000000000000..a869331ac9dd
--- /dev/null
+++ b/offapi/com/sun/star/util/URL.idl
@@ -0,0 +1,131 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_URL_idl__
+#define __com_sun_star_util_URL_idl__
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** represents the structure of an Uniform Resource Locator.
+
+ <p>
+ If the structure represents a valid URL or not depends on prior usage of
+ the functions of <type>XURLTransformer</type>. Only after one of the functions
+ returned <TRUE/> this can be assumed.</br>
+ It is not necessary to set all of the fields; either <member>URL::Complete</member>
+ or (some of) the others are set. Additionally, most of the other
+ fields, like <member>URL::Host</member>, <member>URL::Port</member>,
+ <member>URL::User</member>, <member>URL::Password</member>,
+ or <member>URL::Mark</member>, are optional.
+
+ @see XURLTransformer
+
+ </p>
+ */
+published struct URL
+{
+ /** contains the string representation of the complete URL, for example,
+ http://www.sun.de:8080/pub/test/foo.txt?a=b#xyz
+
+ <p>
+ It is used as a central input/output or input parameter for the interfaces of
+ <type>XURLTransformer</type>. The usage of one of the <type>XURLTransformer</type>
+ function is mandatory to validate the URL. It cannot be assumed that
+ <member>URL::Complete</member> represents always a valid URL!
+ </p>
+ */
+ string Complete;
+
+ //-------------------------------------------------------------------------
+ /** contains the URL without a mark and without arguments, for example,
+ http://www.sun.de:8080/pub/test/foo.txt
+ */
+ string Main;
+
+ //-------------------------------------------------------------------------
+ /** contains the protocol (scheme) of the URL, for example, "http"
+ */
+ string Protocol;
+
+ //-------------------------------------------------------------------------
+ /** contains the user-identifier of the URL, for example, "me"
+ */
+ string User;
+
+ //-------------------------------------------------------------------------
+ /** contains the users password of the URL, for example, "pass"
+ */
+ string Password;
+
+ //-------------------------------------------------------------------------
+ /** contains the server part of the URL, for example, "www.sun.de"
+ */
+ string Server;
+
+ //-------------------------------------------------------------------------
+ /** contains the port at the server of the URL, for example, "8080"
+ */
+ short Port;
+
+ //-------------------------------------------------------------------------
+ /** contains all segments but the last one of the hierarchical path of the URL, for example, "/pub/test/"
+ */
+ string Path;
+
+ //-------------------------------------------------------------------------
+ /** contains the last segment of the hierarchical path of the URL, for the above example, "foo.txt"
+ <p>
+ <strong>Attention:</strong>A service implementing the <type>XURLTransformer</type> interface
+ will normally not detect if the last segment is a folder or a file. So it is possible that
+ the last segment describes a folder. If you want to be sure that a file URL that references
+ a folder will be correctly put into the URL fields you should append a '/' at the end of the
+ hierarchical path.
+ </p>
+ */
+ string Name;
+
+ //-------------------------------------------------------------------------
+ /** contains the arguments part of the URL, for example, "a=b"
+ */
+ string Arguments;
+
+ //-------------------------------------------------------------------------
+ /** contains the mark part of the URL, for example, "xyz"
+ */
+ string Mark;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/URLTransformer.idl b/offapi/com/sun/star/util/URLTransformer.idl
new file mode 100644
index 000000000000..46b4879a7e7d
--- /dev/null
+++ b/offapi/com/sun/star/util/URLTransformer.idl
@@ -0,0 +1,54 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_URLTransformer_idl__
+#define __com_sun_star_util_URLTransformer_idl__
+
+#ifndef __com_sun_star_util_XURLTransformer_idl__
+#include <com/sun/star/util/XURLTransformer.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** helps to split up a string containing a URL into its
+ structural parts and assembles the parts into a single string.
+ */
+published service URLTransformer
+{
+ interface com::sun::star::util::XURLTransformer;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/UriAbbreviation.idl b/offapi/com/sun/star/util/UriAbbreviation.idl
new file mode 100644
index 000000000000..2825fe74b32d
--- /dev/null
+++ b/offapi/com/sun/star/util/UriAbbreviation.idl
@@ -0,0 +1,48 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun__star_util_UriAbbreviation_idl__
+#define __com_sun__star_util_UriAbbreviation_idl__
+
+#ifndef __com_sun_star_util_XStringAbbreviation_idl__
+#include <com/sun/star/util/XStringAbbreviation.idl>
+#endif
+
+module com { module sun { module star { module util {
+
+//============================================================================
+/** Abbreviate arbitrary URIs.
+
+ <p>An abbreviation implementation that is specialized to URIs.</p>
+
+ @see XStringAbbreviation
+ */
+service UriAbbreviation: XStringAbbreviation;
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/VetoException.idl b/offapi/com/sun/star/util/VetoException.idl
new file mode 100644
index 000000000000..fdf4d084d790
--- /dev/null
+++ b/offapi/com/sun/star/util/VetoException.idl
@@ -0,0 +1,54 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_util_VetoException_idl__
+#define __com_sun_star_util_VetoException_idl__
+
+#ifndef __com_sun_star_uno_Exception_idl__
+#include <com/sun/star/uno/Exception.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** thrown to indicate a general veto.
+
+ @since OOo 1.1.2
+*/
+published exception VetoException : com::sun::star::uno::Exception
+{
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/util/XArchiver.idl b/offapi/com/sun/star/util/XArchiver.idl
new file mode 100644
index 000000000000..d3aee96cf08c
--- /dev/null
+++ b/offapi/com/sun/star/util/XArchiver.idl
@@ -0,0 +1,80 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_XArchiver_idl__
+#define __com_sun_star_util_XArchiver_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_beans_PropertyValue_idl__
+#include <com/sun/star/beans/PropertyValue.idl>
+#endif
+
+#ifndef __com_sun_star_container_XIndexAccess_idl__
+#include <com/sun/star/container/XIndexAccess.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** @deprecated
+ */
+published interface XArchiver: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+ // DOCUMENTATION OMITTED FOR XArchiver::pack
+ boolean pack( [in] sequence<string> input,
+ [in] string destination,
+ [in] sequence<com::sun::star::beans::PropertyValue> aArgs );
+
+ //-------------------------------------------------------------------------
+ // DOCUMENTATION OMITTED FOR XArchiver::unpack
+ boolean unpack( [in] string destinationpath,
+ [in] string source,
+ [in] sequence<string> files,
+ [in] sequence<com::sun::star::beans::PropertyValue> aArgs );
+
+ //-------------------------------------------------------------------------
+ // DOCUMENTATION OMITTED FOR XArchiver::getContent
+ com::sun::star::container::XIndexAccess getContent( [in] string source );
+
+ //-------------------------------------------------------------------------
+ // DOCUMENTATION OMITTED FOR XArchiver::getExtraData
+ string getExtraData( [in] string source );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/XAtomServer.idl b/offapi/com/sun/star/util/XAtomServer.idl
new file mode 100644
index 000000000000..610476a0d6c3
--- /dev/null
+++ b/offapi/com/sun/star/util/XAtomServer.idl
@@ -0,0 +1,146 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_XAtomServer_idl__
+#define __com_sun_star_util_XAtomServer_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_util_AtomDescription_idl__
+#include <com/sun/star/util/AtomDescription.idl>
+#endif
+
+#ifndef __com_sun_star_util_AtomClassRequest_idl__
+#include <com/sun/star/util/AtomClassRequest.idl>
+#endif
+
+
+module com
+{
+module sun
+{
+module star
+{
+module util
+{
+
+/** an interface to map between <i>string</i>s and <i>id</i>s
+
+ <p>a note on atoms:<br>
+ Atoms are abbreviations for strings.
+ When a string gets registered, it is assigned a numeric id
+ so that said string can always be referred to by this id.
+ This way strings have to be transported only once over remote connections.
+ Valid ids are (in this implementation) non zero, signed 32 bit values.
+ An atom of 0 means that the string in question is not registered</p>
+
+ <p>Additionally there is the abstraction of atom class:<br>
+ Atoms are grouped into classes, so that an id can be assigned
+ to multiple strings, depending on the class context. The main
+ advantage of this is that atoms in one class may be kept
+ to small numbers, so that bandwidth can be reduced by sending
+ the atoms only as 16 bit values. Note that it is up to the user in this
+ case to handle overflows.</p>
+*/
+
+published interface XAtomServer : com::sun::star::uno::XInterface
+{
+ /** returns a whole atom class
+
+ @param atomClass
+ which class to return
+
+ @returns
+ the descriptions for all atoms of class <code>atomClass</code>
+ */
+ sequence< AtomDescription > getClass( [in] long atomClass );
+ /** returns mutltiple atom classes
+
+ @param atomClasses
+ which classes to return
+
+ @returns
+ the descriptions for all atoms of the requested classes
+ */
+ sequence< sequence< AtomDescription > > getClasses( [in] sequence< long > atomClasses );
+ /** returns the strings for an arbitrary amount of atoms of multiple classes
+
+ @param atoms
+ describes which strings to return
+
+ @returns
+ the strings for the requested atoms
+ */
+ sequence< string > getAtomDescriptions( [in] sequence< AtomClassRequest > atoms );
+
+ //-----------------------------------------------------------------------
+ /** returns the atoms that have been registered to a class after an
+ already known atom
+
+ <p>Hint to implementor: using ascending atoms is the easiest way
+ to decide, which atoms are recent.</p>
+
+ @param atomClass
+ the class in question
+
+ @param atom
+ the last known atom
+
+ @returns
+ all atom description that have been added to class
+ <code>atomClass</code> after <code>atom</code>
+ */
+ sequence< AtomDescription > getRecentAtoms( [in] long atomClass, [in] long atom );
+
+ //-----------------------------------------------------------------------
+ /** registers or searches for a string
+
+ @param atomClass
+ the class of atoms in question
+
+ @param description
+ the string in question
+
+ @param create
+ if true a new atom will be created for an unknown string
+ else the invalid atom (0) will be returned for an unknown string
+
+ @returns
+ the atom for the string <code>description</code>
+ */
+ long getAtom( [in] long atomClass, [in] string description, [in] boolean create );
+};
+
+
+}; // module util
+}; // module star
+}; // module sun
+}; // module com
+
+
+#endif
diff --git a/offapi/com/sun/star/util/XBroadcaster.idl b/offapi/com/sun/star/util/XBroadcaster.idl
new file mode 100644
index 000000000000..feb09fe6124f
--- /dev/null
+++ b/offapi/com/sun/star/util/XBroadcaster.idl
@@ -0,0 +1,84 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_XBroadcaster_idl__
+#define __com_sun_star_util_XBroadcaster_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** allows to control notification behaviour of a broadcaster.
+
+ @since 3.0
+ */
+interface XBroadcaster: com::sun::star::uno::XInterface
+{
+ /** suspends broadcasts to the registered listeners.
+
+ <p>
+ The calls to <member>XBroadcaster::lockBroadcast()</member> and
+ <member>XBroadcaster::unlockBroadcasts()</member> may be
+ nested and even overlapping, but they must be in pairs. While
+ there is at least one lock remaining, no broadcasts are
+ send to registered listeners.
+ </p>
+ */
+ [oneway] void lockBroadcasts();
+
+ //-------------------------------------------------------------------------
+ /** resumes the broadcasts which were suspended by
+ <member>XBroadcaster::lockBroadcasts()</member>.
+
+ <p>
+ The calls to <member>XBroadcaster::lockBroadcast()</member> and
+ <member>XBroadcaster::unlockBroadcasts()</member> may be
+ nested and even overlapping, but they must be in pairs. While
+ there is at least one lock remaining, no broadcasts are
+ send to registered listeners.
+ </p>
+
+ <p> Pending broadcasts will be send immediately after the last
+ call to <member>XBroadcaster::lockBroadcast()</member> is matched
+ by a call to <member>XBroadcaster::unlockBroadcasts()</member>.
+ An implementation can decide to broadcast all pending notification in
+ order or batch them in single broadcasts.
+ </p>
+ */
+ [oneway] void unlockBroadcasts();
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/XCancelManager.idl b/offapi/com/sun/star/util/XCancelManager.idl
new file mode 100644
index 000000000000..36fac41e012e
--- /dev/null
+++ b/offapi/com/sun/star/util/XCancelManager.idl
@@ -0,0 +1,67 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_XCancelManager_idl__
+#define __com_sun_star_util_XCancelManager_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_util_XCancellable_idl__
+#include <com/sun/star/util/XCancellable.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** manages a list of cancellable objects.
+
+ @deprecated
+ */
+published interface XCancelManager: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+ /** registers a cancellable object.
+ */
+ void registerCancellable( [in] com::sun::star::util::XCancellable Cancel );
+
+ //-------------------------------------------------------------------------
+ /** deregisters a cancellable object.
+ */
+ void releaseCancellable( [in] com::sun::star::util::XCancellable Cancel );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/XCancellable.idl b/offapi/com/sun/star/util/XCancellable.idl
new file mode 100644
index 000000000000..6887942234e9
--- /dev/null
+++ b/offapi/com/sun/star/util/XCancellable.idl
@@ -0,0 +1,58 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_XCancellable_idl__
+#define __com_sun_star_util_XCancellable_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** offers the possibility of cancelling a job.
+
+ <p>This is supported by objects which represent a job.
+ */
+published interface XCancellable: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+ /** cancels the current job of the object.
+ */
+ void cancel();
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/XChainable.idl b/offapi/com/sun/star/util/XChainable.idl
new file mode 100644
index 000000000000..e381bc683839
--- /dev/null
+++ b/offapi/com/sun/star/util/XChainable.idl
@@ -0,0 +1,83 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_XChainable_idl__
+#define __com_sun_star_util_XChainable_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_lang_IllegalArgumentException_idl__
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** enables the object to be a member of a chain.
+ */
+published interface XChainable: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+ /** @returns
+ the previous object in this chain or NULL, if this is the first
+ object of this chain.
+ */
+ com::sun::star::util::XChainable getPredecessor();
+
+ //-------------------------------------------------------------------------
+ /** @returns
+ the next object in this chain or NULL, if this is the last
+ object in this chain.
+ */
+ com::sun::star::util::XChainable getSuccessor();
+
+ //-------------------------------------------------------------------------
+ /** connects the specified object to this object as the successor in a chain.
+
+ <p>This implies that this object will become the predecessor of
+ <var>xChainable</var>. </p>
+ */
+ void setSuccessor( [in] com::sun::star::util::XChainable xChainable )
+ raises( com::sun::star::lang::IllegalArgumentException );
+
+ //-------------------------------------------------------------------------
+ /** checks if the specified object can be linked to this.
+ */
+ boolean isChainable( [in] com::sun::star::util::XChainable xChainable );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/XChangesBatch.idl b/offapi/com/sun/star/util/XChangesBatch.idl
new file mode 100644
index 000000000000..253aa80abe33
--- /dev/null
+++ b/offapi/com/sun/star/util/XChangesBatch.idl
@@ -0,0 +1,86 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_XChangesBatch_idl__
+#define __com_sun_star_util_XChangesBatch_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_lang_WrappedTargetException_idl__
+#include <com/sun/star/lang/WrappedTargetException.idl>
+#endif
+
+#ifndef __com_sun_star_util_ChangesSet_idl__
+#include <com/sun/star/util/ChangesSet.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+/** this interface enables applying a set of changes in one batch transaction.
+
+ <p>An object implementing this interface allows other interfaces to change
+ its state locally. It will keep a list of pending changes until such changes
+ are committed or cancelled. </p>
+
+ <p>Only when they are explicitly committed will these changes take effect
+ persistently or globally. </p>
+
+ @see XChangesNotifier
+ @see XChangesSet
+ @see XCancellable
+ */
+published interface XChangesBatch: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+ /** commits any pending changes.
+
+ <p>The exact action depends on the concrete service. </p>
+ */
+ void commitChanges()
+ raises( com::sun::star::lang::WrappedTargetException );
+
+ //-------------------------------------------------------------------------
+ /** checks whether this object has any pending changes that can be committed.
+ */
+ boolean hasPendingChanges();
+
+ //-------------------------------------------------------------------------
+ /** queries for any pending changes that can be committed.
+ */
+ ChangesSet getPendingChanges();
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/XChangesListener.idl b/offapi/com/sun/star/util/XChangesListener.idl
new file mode 100644
index 000000000000..5591c2caf091
--- /dev/null
+++ b/offapi/com/sun/star/util/XChangesListener.idl
@@ -0,0 +1,64 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_XChangesListener_idl__
+#define __com_sun_star_util_XChangesListener_idl__
+
+#ifndef __com_sun_star_lang_XEventListener_idl__
+#include <com/sun/star/lang/XEventListener.idl>
+#endif
+
+#ifndef __com_sun_star_util_ChangesEvent_idl__
+#include <com/sun/star/util/ChangesEvent.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** receives events from batch change broadcaster objects.
+
+ @see ChangesEvent
+ @see XChangesNotifier
+ @see XChangesBatch
+ */
+published interface XChangesListener: com::sun::star::lang::XEventListener
+{
+ //-------------------------------------------------------------------------
+ /** is invoked when a batch of changes occurred.
+ */
+ [oneway] void changesOccurred( [in] com::sun::star::util::ChangesEvent Event );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/XChangesNotifier.idl b/offapi/com/sun/star/util/XChangesNotifier.idl
new file mode 100644
index 000000000000..6ca009069509
--- /dev/null
+++ b/offapi/com/sun/star/util/XChangesNotifier.idl
@@ -0,0 +1,64 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_XChangesNotifier_idl__
+#define __com_sun_star_util_XChangesNotifier_idl__
+
+#ifndef __com_sun_star_util_XChangesListener_idl__
+#include <com/sun/star/util/XChangesListener.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** broadcasts events about multiple changes that occur in bulk.
+
+ @see XChangesListener
+ @see XChangesBatch
+ @see ChangesEvent
+ */
+published interface XChangesNotifier: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+ /** adds the specified listener to receive events when changes occured.
+ */
+ [oneway] void addChangesListener( [in] com::sun::star::util::XChangesListener aListener );
+
+ //-------------------------------------------------------------------------
+ /** removes the specified listener.
+ */
+ [oneway] void removeChangesListener( [in] com::sun::star::util::XChangesListener aListener );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/XChangesSet.idl b/offapi/com/sun/star/util/XChangesSet.idl
new file mode 100644
index 000000000000..b812d0389eef
--- /dev/null
+++ b/offapi/com/sun/star/util/XChangesSet.idl
@@ -0,0 +1,73 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_XChangesSet_idl__
+#define __com_sun_star_util_XChangesSet_idl__
+
+#ifndef __com_sun_star_container_XElementAccess_idl__
+#include <com/sun/star/container/XElementAccess.idl>
+#endif
+
+#ifndef __com_sun_star_lang_WrappedTargetException_idl__
+#include <com/sun/star/lang/WrappedTargetException.idl>
+#endif
+
+#ifndef __com_sun_star_util_ElementChange_idl__
+#include <com/sun/star/util/ElementChange.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+/** this interface enables inspecting a set of changes forming one batch transaction.
+
+ <p>An object implementing this interface should implement more
+ container interfaces to access individual changes as well. </p>
+
+ @see XChangesBatch
+ @see ChangesEvent
+ @see XChangesListener
+ @see XChangesNotifier
+ */
+published interface XChangesSet: com::sun::star::container::XElementAccess
+{
+ //-------------------------------------------------------------------------
+ /** queries for all contained changes at once.
+
+ @returns an array of <type>ElementChange</type> holding information about
+ each changes that is part of this object.
+ */
+ sequence<ElementChange> getAllChanges();
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/XCloneable.idl b/offapi/com/sun/star/util/XCloneable.idl
new file mode 100644
index 000000000000..f89fcb9eb96d
--- /dev/null
+++ b/offapi/com/sun/star/util/XCloneable.idl
@@ -0,0 +1,56 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_XCloneable_idl__
+#define __com_sun_star_util_XCloneable_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** makes it possible to create a copy of the object which supports this interface.
+ */
+published interface XCloneable: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+ /** creates a copy of the object.
+ */
+ com::sun::star::util::XCloneable createClone();
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/XCloseBroadcaster.idl b/offapi/com/sun/star/util/XCloseBroadcaster.idl
new file mode 100644
index 000000000000..7bf7e0f892d5
--- /dev/null
+++ b/offapi/com/sun/star/util/XCloseBroadcaster.idl
@@ -0,0 +1,80 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_XCloseBroadcaster_idl__
+#define __com_sun_star_util_XCloseBroadcaster_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_util_XCloseListener_idl__
+#include <com/sun/star/util/XCloseListener.idl>
+#endif
+
+//=============================================================================
+
+ module com { module sun { module star { module util {
+
+//=============================================================================
+/** broadcasts each tried closing of an object to all interest listener
+
+ <p>
+ The called object for closing must post the closing events immediately
+ and before any internal cancel operations will be started.
+ If a listener disagree with that it should throw a <type>CloseVetoException</type>
+ and called function <method>XCloseable::close</method> must be breaked immediately.
+ It's not allowed to catch it inside the close() request.
+ If no listener nor internal processes hinder the object on closing
+ all listener get's a notification about real closing.
+ </p>
+
+ @see
+ */
+published interface XCloseBroadcaster: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+ /** adds the specified listener to receive or have a veto for "close" events
+
+ @param Listener
+ the listener wich is interest on closing events
+ */
+ [oneway] void addCloseListener( [in] XCloseListener Listener );
+
+ //-------------------------------------------------------------------------
+ /** removes the specified listener
+
+ @param Listener
+ the listener wich isn't interest on closing events anylonger
+ */
+ [oneway] void removeCloseListener( [in] XCloseListener Listener );
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/XCloseListener.idl b/offapi/com/sun/star/util/XCloseListener.idl
new file mode 100644
index 000000000000..8e45e3d7ad0f
--- /dev/null
+++ b/offapi/com/sun/star/util/XCloseListener.idl
@@ -0,0 +1,139 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_XCloseListener_idl__
+#define __com_sun_star_util_XCloseListener_idl__
+
+#ifndef __com_sun_star_util_CloseVetoException_idl__
+#include <com/sun/star/util/CloseVetoException.idl>
+#endif
+
+#ifndef __com_sun_star_lang_XEventListener_idl__
+#include <com/sun/star/lang/XEventListener.idl>
+#endif
+
+#ifndef __com_sun_star_lang_EventObject_idl__
+#include <com/sun/star/lang/EventObject.idl>
+#endif
+
+//=============================================================================
+
+ module com { module sun { module star { module util {
+
+//=============================================================================
+/** makes it possible to receive events when an object
+ is called for closing
+
+ <p>
+ Such close events are broadcasted by a <type>XCloseBroadcaster</type>
+ if somewhere tries to close it by calling <member>XCloseable::close()</member>.
+ Listener can:
+ <ul>
+ <li>break that by throwing <type>CloseVetoException</type></li>
+ <li>or accept that by deregister himself at this broadcaster.</li>
+ </ul>
+ </p>
+
+ <p>
+ If an event <method scope="com::sun::star::lang">XEventListener::disposing</method>
+ occured, nobody called <method>XCloseable::close</method> on listened object before.
+ Then it's not allowed to break this request - it must be accepted!
+ </p>
+
+ @see XCloseable
+ @see XCloseBroadcaster
+ */
+published interface XCloseListener: com::sun::star::lang::XEventListener
+{
+ //-------------------------------------------------------------------------
+ /** is called when somewhere tries to close listened object
+
+ <p>
+ Is called before <member>XCloseListener::notifyClosing()</member>.
+ Listener has the chance to break that by throwing a <type>CloseVetoException</type>.
+ This exception must be passed to the original caller of <member>XCloseable::close()</member>
+ without any interaction.
+ </p>
+
+ <p>
+ The parameter <var>GetsOwnership</var> regulate who has to try to close the listened object
+ again, if this listener disagree with the request by throwing the exception.
+ If it's set to <FALSE/> the original caller of <member>XCloseable::close()</member>
+ will be the owner in every case. It's not allowed to call close() from this listener then.
+ If it's set to <TRUE/> this listener will be the new owner if he throw the exception,
+ otherwise not! If his still running processes will be finished he must call close() on
+ listened object again then.
+ </p>
+
+ <p>
+ If this listener doesn't disagree with th close request it depends from his internal
+ implementation if he deregister himself at the listened object.
+ But normaly this must be done in <member>XCloseListener::notifyClosing()</member>.
+ </p>
+
+ @param Source
+ describes the source of the event (must be the listened object)
+
+ @param GetsOwnership
+ <TRUE/> pass the ownership to this listener, if he throw the veto exception
+ (otherwise this parameter must be ignored!)
+ <br>
+ <FALSE/> forbids to grab the ownership for the listened close object and call
+ close() on that any time.
+
+ @throws CloseVetoException
+ if listener disagree with the close request on listened object he must throw this exception
+ */
+ void queryClosing(
+ [in] com::sun::star::lang::EventObject Source,
+ [in] boolean GetsOwnership )
+ raises( CloseVetoException );
+
+ //-------------------------------------------------------------------------
+ /** is called when the listened object is closed realy
+
+ <p>
+ Now the listened object is closed realy. Listener has to accept that;
+ should deregister himself and relaese all references to it.
+ It's not allowed nor possible to disagree with that by throwing any exception.
+ </p>
+
+ <p>
+ If the event <member scope="com::sun::star::lang">XEventListener::disposing()</member> occured before
+ it must be accepted too. There exist no chance for a disagreement any more.
+ </p>
+
+ @param Source
+ describes the source of the event (must be the listened object)
+ */
+ void notifyClosing( [in] com::sun::star::lang::EventObject Source );
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/XCloseable.idl b/offapi/com/sun/star/util/XCloseable.idl
new file mode 100644
index 000000000000..56fb5429d18f
--- /dev/null
+++ b/offapi/com/sun/star/util/XCloseable.idl
@@ -0,0 +1,135 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_XClosable_idl__
+#define __com_sun_star_util_XClosable_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_util_XCloseBroadcaster_idl__
+#include <com/sun/star/util/XCloseBroadcaster.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+/** makes it possible to release any objects in a ordered manner by using
+ a two-step mechanism
+
+ <p>
+ If an object should be terminated, it can be:<br>
+ <ul>
+ <li>disposed (if it supports <member scope="com::sun::star::lang">XComponent::dispose()</member>)</li>
+ <li>closed (if it supports <member>XCloseable::close()</member>)</li>
+ </ul>
+ First version gives the object no chance to disagree with that (e.g. if a
+ process is still running and can't be cancelled realy). Last version
+ provides this possibility, but can't guarantee real termination of called object.
+ It depends from the environment of an object, if one or both mechanism are neccessary.
+ </p>
+
+ <p>
+ Base interface <type>XCloseBroadcaster</type> makes it possible that any listener
+ which is interrested on life time of listened object ...
+ <ul>
+ <li>can get a notification about closing of it</li>
+ <li>or can have a veto to break that.</li>
+ </ul>
+ </p>
+
+ @see com::sun::star::lang::XComponent::dispose()
+ @see XCloseBroadcaster
+ @see XCloseListener
+ */
+published interface XCloseable: XCloseBroadcaster
+{
+ //-------------------------------------------------------------------------
+ /** try to close the object
+
+ <p>
+ Must definitly be called before <member scope="com::sun::star::lang">XComponent::dispose()</member>.
+ But nobody can guarentee real closing of called object - because it can disagree with that if any
+ still running processes can't be cancelled yet. It's not allowed to block this call till internal
+ operations will be finished here. They must be cancelled or call must return imediatly by throwing
+ the <type>CloseVetoException</type>. Otherwise (if nothing exist to disagree) it must return normaly.
+ </p>
+
+ <p>
+ Before any internal processes will be cancelled, all registered <type>XCloseListener</type>
+ must be notified. Any of them can disagree with a <type>CloseVetoException</type> too.
+ It's forbidden to catch this exception inside the called close() method because the caller must
+ get this information!
+ </p>
+
+ <p>
+ If somewhere disagree with a CloseVetoException it will not clear who has to close the object again
+ after still running processes was finished. The parameter <var>DeliverOwnership</var> regulate that.
+ If it is set to <FALSE/> the caller of the method close() will be the owner of this object in every case.
+ Then it's not allowed to call close() from any other place (may a registered XCloseListener).
+ If it is set to <TRUE/> the caller gives up his ownership. If a XCloseListener throw the veto exception
+ he will be the new owner of the closing object. This information is passed to the listener by a parameter of
+ his notification method <member>XCloseListener::queryClosing()</member>. After his operations was finished
+ he MUST try to close it again. If the closing object itselfs disagree by an exception and the parameter
+ <var>DeliverOwnership</var> was set to <TRUE/> the object will be his own owner with all consequences of that.
+ <br><strong>Note:</strong><br>
+ There is no way to get the ownership back if it was delivered!
+ </p>
+
+ <p>
+ If this method was already called on an object it should return without any reaction. Normaly it's possible to throw
+ a <type scope="com::sun::star::lang">DisposedException</type> for already disposed or closed objects
+ (which represent a <type scope="com::sun::star::uno">RuntimeException</type> and can be thrown by every interface call),
+ but it shouldn't be used here. The veto exception should be the only way to indicates the result.
+ </p>
+
+ @param DeliverOwnership
+ <TRUE/> delegates the ownership of ths closing object to any one which throw the CloseVetoException.
+ This new owner has to close the closing object again if his still running processes will be finished.
+ <br>
+ <FALSE/> let the ownership at the original one which called the close() method. He must react for possible
+ CloseVetoExceptions and try it again at a later time. This can be usefull for a generic UI handling.
+
+ @throws CloseVetoException
+ indicates that the closing object himself or any of his currently registered listener disagree with this close() request.
+
+ @see XCloseListener
+ @see CloseVetoException
+ @see com::sun::star::lang::XComponent::dispose()
+ @see com::sun::star::lang::DisposedException
+ */
+ void close( [in] boolean DeliverOwnership )
+ raises( CloseVetoException );
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/XDataEditor.idl b/offapi/com/sun/star/util/XDataEditor.idl
new file mode 100644
index 000000000000..82cc18d53eae
--- /dev/null
+++ b/offapi/com/sun/star/util/XDataEditor.idl
@@ -0,0 +1,76 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_XDataEditor_idl__
+#define __com_sun_star_util_XDataEditor_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_util_XDataEditorListener_idl__
+#include <com/sun/star/util/XDataEditorListener.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+/** connects to a model and broadcasts status change events.
+ */
+published interface XDataEditor: com::sun::star::uno::XInterface
+{
+ /** makes the data editor visible to the user.
+ */
+ void show();
+
+ //--------------------------------------------------------------------------
+ /** connects the data editor to a data model.
+ */
+ void setModel( [in] com::sun::star::uno::XInterface model );
+
+ //--------------------------------------------------------------------------
+ /** @returns
+ the data model which was set by <method>XDataEditor::setModel</method>.
+ */
+ com::sun::star::uno::XInterface getModel();
+
+ //--------------------------------------------------------------------------
+ /** registers a listener to receive <type>DataEditorEvent</type>s.
+ */
+ void addDataEditorListener( [in] XDataEditorListener listener );
+
+ //--------------------------------------------------------------------------
+ /** unregisters a listener which received <type>DataEditorEvent</type>s.
+ */
+ void removeDataEditorListener( [in] XDataEditorListener listener );
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/XDataEditorListener.idl b/offapi/com/sun/star/util/XDataEditorListener.idl
new file mode 100644
index 000000000000..abe91ed2a36a
--- /dev/null
+++ b/offapi/com/sun/star/util/XDataEditorListener.idl
@@ -0,0 +1,56 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_XDataEditorListener_idl__
+#define __com_sun_star_util_XDataEditorListener_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_util_DataEditorEvent_idl__
+#include <com/sun/star/util/DataEditorEvent.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+/** makes it possible to receive status change events from an
+ <type>XDataEditor</type>.
+ */
+published interface XDataEditorListener: com::sun::star::uno::XInterface
+{
+ /** is called when the state of a connected <type>XDataEditor</type> changes.
+ */
+ void updateDataEditorState( [in] DataEditorEvent event );
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/XFlushListener.idl b/offapi/com/sun/star/util/XFlushListener.idl
new file mode 100644
index 000000000000..521aebc5e003
--- /dev/null
+++ b/offapi/com/sun/star/util/XFlushListener.idl
@@ -0,0 +1,60 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_XFlushListener_idl__
+#define __com_sun_star_util_XFlushListener_idl__
+
+#ifndef __com_sun_star_lang_XEventListener_idl__
+#include <com/sun/star/lang/XEventListener.idl>
+#endif
+
+#ifndef __com_sun_star_lang_EventObject_idl__
+#include <com/sun/star/lang/EventObject.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** makes it possible to receive <em>flushed</em> events.
+ */
+published interface XFlushListener: com::sun::star::lang::XEventListener
+{
+ //-------------------------------------------------------------------------
+ /** is called when the object data is flushed.
+ */
+ void flushed( [in] com::sun::star::lang::EventObject rEvent );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/XFlushable.idl b/offapi/com/sun/star/util/XFlushable.idl
new file mode 100644
index 000000000000..668d64055ed8
--- /dev/null
+++ b/offapi/com/sun/star/util/XFlushable.idl
@@ -0,0 +1,70 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_XFlushable_idl__
+#define __com_sun_star_util_XFlushable_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_util_XFlushListener_idl__
+#include <com/sun/star/util/XFlushListener.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** is supported by objects with data that can be flushed to a data source.
+ */
+published interface XFlushable: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+ /** flushes the data of the object to the connected data source.
+ */
+ void flush();
+
+ //-------------------------------------------------------------------------
+ /** adds the specified listener to receive event "flushed."
+ */
+ [oneway] void addFlushListener( [in] com::sun::star::util::XFlushListener l );
+
+ //-------------------------------------------------------------------------
+ /** removes the specified listener.
+ */
+ [oneway] void removeFlushListener( [in] com::sun::star::util::XFlushListener l );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/XImportable.idl b/offapi/com/sun/star/util/XImportable.idl
new file mode 100644
index 000000000000..05872c6e3231
--- /dev/null
+++ b/offapi/com/sun/star/util/XImportable.idl
@@ -0,0 +1,71 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_XImportable_idl__
+#define __com_sun_star_util_XImportable_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_beans_PropertyValue_idl__
+#include <com/sun/star/beans/PropertyValue.idl>
+#endif
+
+
+//=============================================================================
+
+ module com { module sun { module star { module util {
+
+//=============================================================================
+
+// DocMerge from xml: interface com::sun::star::util::XImportable
+/** makes it possible to import files into the object.
+ */
+published interface XImportable: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ // DocMerge from idl: method com::sun::star::util::XImportable::createImportDescriptor
+ /** @returns
+ a descriptor which contains the arguments for an import.
+ */
+ sequence<com::sun::star::beans::PropertyValue> createImportDescriptor( [in] boolean bEmpty );
+
+ //-------------------------------------------------------------------------
+
+ // DocMerge from xml: method com::sun::star::util::XImportable::doImport
+ /** imports data from an external database.
+ */
+ void doImport( [in] sequence<com::sun::star::beans::PropertyValue> aDescriptor );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/XIndent.idl b/offapi/com/sun/star/util/XIndent.idl
new file mode 100644
index 000000000000..dffd7334316b
--- /dev/null
+++ b/offapi/com/sun/star/util/XIndent.idl
@@ -0,0 +1,60 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_XIndent_idl__
+#define __com_sun_star_util_XIndent_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+
+//=============================================================================
+
+ module com { module sun { module star { module util {
+
+//=============================================================================
+/** allows indentation of the object to be changed.
+ */
+published interface XIndent: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+ /** shifts the indentation by one default step to the left.
+ */
+ void decrementIndent();
+
+ //-------------------------------------------------------------------------
+ /** shifts the indentation by one default step to the right.
+ */
+ void incrementIndent();
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/XJobManager.idl b/offapi/com/sun/star/util/XJobManager.idl
new file mode 100644
index 000000000000..99bc7b5428a1
--- /dev/null
+++ b/offapi/com/sun/star/util/XJobManager.idl
@@ -0,0 +1,65 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_util_XJobManager_idl__
+#define __com_sun_star_util_XJobManager_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_util_XCancellable_idl__
+#include <com/sun/star/util/XCancellable.idl>
+#endif
+
+module com { module sun { module star { module util {
+
+//============================================================================
+/** Manage cancellable jobs.
+
+ */
+published interface XJobManager: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+ /** registers a cancellable job.
+ */
+ void registerJob( [in] com::sun::star::util::XCancellable Job );
+
+ //-------------------------------------------------------------------------
+ /** deregisters a cancellable jobs.
+ */
+ void releaseJob( [in] com::sun::star::util::XCancellable Job );
+
+ //-------------------------------------------------------------------------
+ /** cancel all registered jobs.
+ */
+ void cancelAllJobs();
+};
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/XLinkUpdate.idl b/offapi/com/sun/star/util/XLinkUpdate.idl
new file mode 100644
index 000000000000..d4c3a1a41850
--- /dev/null
+++ b/offapi/com/sun/star/util/XLinkUpdate.idl
@@ -0,0 +1,59 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_XLinkUpdate_idl__
+#define __com_sun_star_util_XLinkUpdate_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** allows initiating an update of linked parts of a document.
+
+ */
+published interface XLinkUpdate: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+ /** initiates the reloading of all linked document content like linked graphics,
+ linked text sections.
+ */
+ void updateLinks();
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
+
diff --git a/offapi/com/sun/star/util/XLocalizedAliases.idl b/offapi/com/sun/star/util/XLocalizedAliases.idl
new file mode 100644
index 000000000000..cb3e0c7bc9f2
--- /dev/null
+++ b/offapi/com/sun/star/util/XLocalizedAliases.idl
@@ -0,0 +1,117 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_XLocalizedAliases_idl__
+#define __com_sun_star_util_XLocalizedAliases_idl__
+
+#ifndef __com_sun_star_lang_Locale_idl__
+#include <com/sun/star/lang/Locale.idl>
+#endif
+
+#ifndef __com_sun_star_container_NoSuchElementException_idl__
+#include <com/sun/star/container/NoSuchElementException.idl>
+#endif
+
+#ifndef __com_sun_star_container_ElementExistException_idl__
+#include <com/sun/star/container/ElementExistException.idl>
+#endif
+
+#ifndef __com_sun_star_util_AliasProgrammaticPair_idl__
+#include <com/sun/star/util/AliasProgrammaticPair.idl>
+#endif
+
+//=============================================================================
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** is the interface for binding programmatic names to aliases. Aliases
+ can be provided in several locales for the same programmatic name.
+ */
+published interface XLocalizedAliases: com::sun::star::uno::XInterface
+{
+
+ /** registers an alias for a programmatic name.
+ */
+ void bindAlias([in]string programmaticName,
+ [in]com::sun::star::lang::Locale locale,
+ [in]string alias)
+ raises (com::sun::star::container::ElementExistException);
+ //-------------------------------------------------------------------------
+ /** revokes an alias for a programmatic name.
+ */
+ void unbindAlias([in]com::sun::star::lang::Locale locale,
+ [in]string alias)
+ raises (com::sun::star::container::NoSuchElementException);
+ //-------------------------------------------------------------------------
+ /** retrieves a registered porgrammatic name identified by an alias.
+ */
+ string lookupAlias([in]com::sun::star::lang::Locale locale,
+ [in]string Alias)
+ raises (com::sun::star::container::NoSuchElementException);
+ //-------------------------------------------------------------------------
+ /** retrieves a given alias for a programmatic name.
+ */
+ string lookupProgrammatic([in]com::sun::star::lang::Locale locale,
+ [in]string programmatic)
+ raises (com::sun::star::container::NoSuchElementException);
+ //-------------------------------------------------------------------------
+ /** removes all aliases for a programmatic name.
+ */
+ void unbindAliases([in]string programmaticName)
+ raises (com::sun::star::container::NoSuchElementException);
+ //-------------------------------------------------------------------------
+ /** rebinds all aliases registered to a given URL to a new one.
+ */
+ void rebindAliases([in]string currentProgrammatic,
+ [in]string newProgrammatic)
+ raises (com::sun::star::container::NoSuchElementException,
+ com::sun::star::container::ElementExistException);
+ //-------------------------------------------------------------------------
+ /** renames an alias for a programmatic name.
+ */
+ void renameAlias([in]com::sun::star::lang::Locale locale,
+ [in]string oldName,
+ [in]string aNewName)
+ raises (com::sun::star::container::NoSuchElementException,
+ com::sun::star::container::ElementExistException);
+ //-------------------------------------------------------------------------
+ /** retrieves a list of all registered aliases for a certain language.
+
+ @param locale
+ specifies the locale scope.
+
+ @returns
+ a sequence of registered pair of alias and programmatic name.
+ */
+ sequence<AliasProgrammaticPair> listAliases([in]com::sun::star::lang::Locale locale);
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/XMergeable.idl b/offapi/com/sun/star/util/XMergeable.idl
new file mode 100644
index 000000000000..ba2ac3bc90ea
--- /dev/null
+++ b/offapi/com/sun/star/util/XMergeable.idl
@@ -0,0 +1,63 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_XMergeable_idl__
+#define __com_sun_star_util_XMergeable_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** represents a range of cells that can be merged.
+ */
+published interface XMergeable: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+ /** merges/unmerges the area specified by this object.
+ */
+ void merge( [in] boolean bMerge );
+
+ //-------------------------------------------------------------------------
+ /** @returns
+ <TRUE/> if the area specified by this object is merged,
+ or <FALSE/> otherwise.
+ */
+ boolean getIsMerged();
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/XModeChangeApproveListener.idl b/offapi/com/sun/star/util/XModeChangeApproveListener.idl
new file mode 100644
index 000000000000..76226462531f
--- /dev/null
+++ b/offapi/com/sun/star/util/XModeChangeApproveListener.idl
@@ -0,0 +1,74 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_util_XModeChangeApproveListener_idl__
+#define __com_sun_star_util_XModeChangeApproveListener_idl__
+
+#ifndef __com_sun_star_lang_XEventListener_idl__
+#include <com/sun/star/lang/XEventListener.idl>
+#endif
+
+#ifndef __com_sun_star_util_ModeChangeEvent_idl__
+#include <com/sun/star/util/ModeChangeEvent.idl>
+#endif
+
+#ifndef __com_sun_star_util_VetoException_idl__
+#include <com/sun/star/util/VetoException.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** allows to veto changes in an object's internal mode.
+
+ @see XModeChangeBroadcaster
+
+ @since OOo 1.1.2
+*/
+published interface XModeChangeApproveListener : com::sun::star::lang::XEventListener
+{
+ /** indicates that the mode of the broadcasting component is about to change.
+
+ <p>The <member>ModeChangeEvent::NewMode</member> indicates the new mode which
+ is to be set on the component</p>
+
+ @throws VetoException
+ when the mode change is vetoed
+ */
+ void approveModeChange( [in] ModeChangeEvent _rSource )
+ raises ( VetoException );
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/util/XModeChangeBroadcaster.idl b/offapi/com/sun/star/util/XModeChangeBroadcaster.idl
new file mode 100644
index 000000000000..1c9cbbde8fa8
--- /dev/null
+++ b/offapi/com/sun/star/util/XModeChangeBroadcaster.idl
@@ -0,0 +1,97 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_util_XModeChangeBroadcaster_idl__
+#define __com_sun_star_util_XModeChangeBroadcaster_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 __com_sun_star_util_XModeChangeListener_idl__
+#include <com/sun/star/util/XModeChangeListener.idl>
+#endif
+
+#ifndef __com_sun_star_util_XModeChangeApproveListener_idl__
+#include <com/sun/star/util/XModeChangeApproveListener.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** broadcasts changes in an object's internal mode.
+
+ @see XModeSelector
+ @see XModeChangeListener
+ @see XModeChangeApproveListener
+
+ @since OOo 1.1.2
+*/
+published interface XModeChangeBroadcaster : com::sun::star::uno::XInterface
+{
+ /** adds the given listener to the list of components to be notified when the mode
+ changes.
+ */
+ void addModeChangeListener( [in] XModeChangeListener _rxListener );
+
+ /** removes the given listener from the list of components to be notified when the mode
+ changes.
+ */
+ void removeModeChangeListener( [in] XModeChangeListener _rxListener );
+
+ /** adds the given listener to the list of components to be notified when the mode
+ is about to change.
+
+ @throws com::sun::star::lang::NoSupportException
+ if the component does not allow vetoing mode changes
+ */
+ void addModeChangeApproveListener( [in] XModeChangeApproveListener _rxListener )
+ raises( com::sun::star::lang::NoSupportException );
+
+ /** remove the given listener from the list of components to be notified when the mode
+ is about to change.
+
+ @throws com::sun::star::lang::NoSupportException
+ if the component does not allow vetoing mode changes
+ */
+ void removeModeChangeApproveListener( [in] XModeChangeApproveListener _rxListener )
+ raises( com::sun::star::lang::NoSupportException );
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/util/XModeChangeListener.idl b/offapi/com/sun/star/util/XModeChangeListener.idl
new file mode 100644
index 000000000000..5f3437081585
--- /dev/null
+++ b/offapi/com/sun/star/util/XModeChangeListener.idl
@@ -0,0 +1,63 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_util_XModeChangeListener_idl__
+#define __com_sun_star_util_XModeChangeListener_idl__
+
+#ifndef __com_sun_star_lang_XEventListener_idl__
+#include <com/sun/star/lang/XEventListener.idl>
+#endif
+
+#ifndef __com_sun_star_util_ModeChangeEvent_idl__
+#include <com/sun/star/util/ModeChangeEvent.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** allows to listen for changes in an object's internal mode.
+
+ @see XModeChangeBroadcaster
+
+ @since OOo 1.1.2
+*/
+published interface XModeChangeListener : com::sun::star::lang::XEventListener
+{
+ /** indicates that the mode of the broadcasting component has changed.
+ */
+ [oneway] void modeChanged( [in] ModeChangeEvent _rSource );
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/util/XModeSelector.idl b/offapi/com/sun/star/util/XModeSelector.idl
new file mode 100644
index 000000000000..7efefb361a04
--- /dev/null
+++ b/offapi/com/sun/star/util/XModeSelector.idl
@@ -0,0 +1,78 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_XModeSelector_idl__
+#define __com_sun_star_util_XModeSelector_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
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** is supported by objects which supply different modes.
+ */
+published interface XModeSelector: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+ /** sets a new mode for the implementing object.
+ */
+ void setMode( [in] string aMode )
+ raises( com::sun::star::lang::NoSupportException );
+
+ //-------------------------------------------------------------------------
+ /** @returns
+ the current mode.
+ */
+ string getMode();
+
+ //-------------------------------------------------------------------------
+ /** @returns
+ a sequence of all supported modes.
+ */
+ sequence<string> getSupportedModes();
+
+ //-------------------------------------------------------------------------
+ /** asks whether a mode is supported or not.
+ */
+ boolean supportsMode( [in] string aMode );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/XModifiable.idl b/offapi/com/sun/star/util/XModifiable.idl
new file mode 100644
index 000000000000..2f0b37531aca
--- /dev/null
+++ b/offapi/com/sun/star/util/XModifiable.idl
@@ -0,0 +1,74 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_XModifiable_idl__
+#define __com_sun_star_util_XModifiable_idl__
+
+#ifndef __com_sun_star_util_XModifyBroadcaster_idl__
+#include <com/sun/star/util/XModifyBroadcaster.idl>
+#endif
+
+#ifndef __com_sun_star_beans_PropertyVetoException_idl__
+#include <com/sun/star/beans/PropertyVetoException.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** makes the modify state of the object accessible.
+
+ <p>Additionally, it makes it possible to register listener objects, which
+ get notification whenever the status or content of the object changes. </p>
+ */
+published interface XModifiable: com::sun::star::util::XModifyBroadcaster
+{
+ //-------------------------------------------------------------------------
+ /** @returns
+ <TRUE/> if the object is modified.
+
+ <p>The modification is always in relation to a certain state
+ (i.e., the initial, loaded, or last stored version).
+ */
+ boolean isModified();
+
+ //-------------------------------------------------------------------------
+ /** sets the status of the <em>modified</em>-flag from outside of the
+ object.
+ */
+ void setModified( [in] boolean bModified )
+ raises( com::sun::star::beans::PropertyVetoException );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/XModifiable2.idl b/offapi/com/sun/star/util/XModifiable2.idl
new file mode 100644
index 000000000000..fe2c7960e9d1
--- /dev/null
+++ b/offapi/com/sun/star/util/XModifiable2.idl
@@ -0,0 +1,88 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+************************************************************************/
+#ifndef __com_sun_star_util_XModifiable2_idl__
+#define __com_sun_star_util_XModifiable2_idl__
+
+#ifndef __com_sun_star_util_XModifiable_idl__
+#include <com/sun/star/util/XModifiable.idl>
+#endif
+
+#ifndef __com_sun_star_beans_PropertyVetoException_idl__
+#include <com/sun/star/beans/PropertyVetoException.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** allows to control modifiable state change.
+
+ <p>
+ This interface allows to prevent changing of the modified state of the
+ object. It is introduced for performance optimizations, to allow to prevent
+ unnecessary updates, for example while importing a document.
+ Please use this interface very carefuly.
+ </p>
+ */
+interface XModifiable2: com::sun::star::util::XModifiable
+{
+ //-------------------------------------------------------------------------
+ /** disable possibility to change modified state of the document
+
+ @retuns the value that says whether the modified state change was
+ enabled before the call
+ <TRUE/> the changing of the modified state was already disabled
+ <FALSE/> the changing of the modified state was enabled
+
+ */
+ boolean disableSetModified();
+
+ //-------------------------------------------------------------------------
+ /** enable possibility to change modified state of the document
+
+ @retuns the value that says whether the modified state change was
+ enabled before the call
+ <TRUE/> the changing of the modified state was disabled
+ <FALSE/> the changing of the modified state was already enabled
+ */
+ boolean enableSetModified();
+
+ //-------------------------------------------------------------------------
+ /** allows to detect whether the modified state change is enabled
+ */
+ boolean isSetModifiedEnabled();
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/util/XModifyBroadcaster.idl b/offapi/com/sun/star/util/XModifyBroadcaster.idl
new file mode 100644
index 000000000000..657db5400126
--- /dev/null
+++ b/offapi/com/sun/star/util/XModifyBroadcaster.idl
@@ -0,0 +1,69 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_XModifyBroadcaster_idl__
+#define __com_sun_star_util_XModifyBroadcaster_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_util_XModifyListener_idl__
+#include <com/sun/star/util/XModifyListener.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** broadcasts each modification made on the date data of the object which
+ supports this interface.
+
+ <p>The modified object must post the modification events immediately
+ after the modification is performed.</p>
+ */
+published interface XModifyBroadcaster: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+ /** adds the specified listener to receive events "modified."
+ */
+ [oneway] void addModifyListener( [in] com::sun::star::util::XModifyListener aListener );
+
+ //-------------------------------------------------------------------------
+ /** removes the specified listener.
+ */
+ [oneway] void removeModifyListener( [in] com::sun::star::util::XModifyListener aListener );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/XModifyListener.idl b/offapi/com/sun/star/util/XModifyListener.idl
new file mode 100644
index 000000000000..e31574aaff2a
--- /dev/null
+++ b/offapi/com/sun/star/util/XModifyListener.idl
@@ -0,0 +1,66 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_XModifyListener_idl__
+#define __com_sun_star_util_XModifyListener_idl__
+
+#ifndef __com_sun_star_lang_XEventListener_idl__
+#include <com/sun/star/lang/XEventListener.idl>
+#endif
+
+#ifndef __com_sun_star_lang_EventObject_idl__
+#include <com/sun/star/lang/EventObject.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** makes it possible to receive events when a model object changes.
+ */
+published interface XModifyListener: com::sun::star::lang::XEventListener
+{
+ //-------------------------------------------------------------------------
+ /** is called when something changes in the object.
+
+ <p>Due to such an event, it may be necessary to update views or
+ controllers. </p>
+
+ <p>The source of the event may be the content of the object to
+ which the listener is registered.</p>
+ */
+ void modified( [in] com::sun::star::lang::EventObject aEvent );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/XNumberFormatPreviewer.idl b/offapi/com/sun/star/util/XNumberFormatPreviewer.idl
new file mode 100644
index 000000000000..cd94ebd1335f
--- /dev/null
+++ b/offapi/com/sun/star/util/XNumberFormatPreviewer.idl
@@ -0,0 +1,137 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_XNumberFormatPreviewer_idl__
+#define __com_sun_star_util_XNumberFormatPreviewer_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_util_Color_idl__
+#include <com/sun/star/util/Color.idl>
+#endif
+
+#ifndef __com_sun_star_lang_Locale_idl__
+#include <com/sun/star/lang/Locale.idl>
+#endif
+
+#ifndef __com_sun_star_util_MalformedNumberFormatException_idl__
+#include <com/sun/star/util/MalformedNumberFormatException.idl>
+#endif
+
+#ifndef __com_sun_star_util_Color_idl__
+#include <com/sun/star/util/Color.idl>
+#endif
+
+
+//=============================================================================
+
+ module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** represents a number formatter which can preview number
+ formats without inserting them.
+
+ @see NumberFormatter
+ */
+published interface XNumberFormatPreviewer: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** formats a value using a format string, without inserting a
+ number format into the list.
+
+ @param aFormat
+ is the format string that is used for formatting.
+
+ @param fValue
+ is the value that is formatted.
+
+ @param nLocale
+ is the locale that is used to interpret the format string.
+
+ @param bAllowEnglish
+ specifies if English language number format strings are accepted
+ in addition to those from the selected locale.
+
+ @returns
+ the formatted string.
+
+ @throws com::sun::star::util::MalformedNumberFormatException
+ if the format string is invalid.
+
+ */
+ string convertNumberToPreviewString( [in] string aFormat,
+ [in] double fValue,
+ [in] com::sun::star::lang::Locale nLocale,
+ [in] boolean bAllowEnglish )
+ raises( com::sun::star::util::MalformedNumberFormatException );
+
+ //-------------------------------------------------------------------------
+
+ /** returns the color which is to be used for a number.
+
+ @param aFormat
+ is the format string that is used for formatting.
+
+ @param fValue
+ is the value that is formatted.
+
+ @param nLocale
+ is the locale that is used to interpret the format string.
+
+ @param bAllowEnglish
+ specifies if English language number format strings are accepted
+ in addition to those from the selected locale.
+
+ @param aDefaultColor
+ is the color that should be returned if no color is set by
+ the number format.
+
+ @returns
+ the color that should used to output the formatted string.
+
+ @throws com::sun::star::util::MalformedNumberFormatException
+ if the format string is invalid.
+
+ */
+ com::sun::star::util::Color queryPreviewColorForNumber( [in] string aFormat,
+ [in] double fValue,
+ [in] com::sun::star::lang::Locale nLocale,
+ [in] boolean bAllowEnglish,
+ [in] com::sun::star::util::Color aDefaultColor )
+ raises( com::sun::star::util::MalformedNumberFormatException );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/util/XNumberFormatTypes.idl b/offapi/com/sun/star/util/XNumberFormatTypes.idl
new file mode 100644
index 000000000000..9c896440e20e
--- /dev/null
+++ b/offapi/com/sun/star/util/XNumberFormatTypes.idl
@@ -0,0 +1,111 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_XNumberFormatTypes_idl__
+#define __com_sun_star_util_XNumberFormatTypes_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_lang_Locale_idl__
+#include <com/sun/star/lang/Locale.idl>
+#endif
+
+
+//=============================================================================
+
+ module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** represents functions to get specific, predefined number formats.
+ */
+published interface XNumberFormatTypes: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** @returns
+ the key of the standard format for a locale.
+ */
+ long getStandardIndex( [in] com::sun::star::lang::Locale nLocale );
+
+ //-------------------------------------------------------------------------
+
+ /** @returns
+ the key of the standard format within a specified type for a given locale.
+
+ @param nType
+ the type of the number format. Must be one of the
+ <type>NumberFormat</type> constants.
+ */
+ long getStandardFormat( [in] short nType,
+ [in] com::sun::star::lang::Locale nLocale );
+
+ //-------------------------------------------------------------------------
+
+ /** @returns
+ the key of a built-in format for a locale:
+
+ @param nIndex
+ the index of the wanted number format within the formats for
+ the given locale. One of the
+ <type scope="com::sun::star::i18n">NumberFormatIndex</type>
+ constants.
+ */
+ long getFormatIndex( [in] short nIndex,
+ [in] com::sun::star::lang::Locale nLocale );
+
+ //-------------------------------------------------------------------------
+
+ /** verifies if one type of number format is compatible with another type.
+ */
+ boolean isTypeCompatible( [in] short nOldType,
+ [in] short nNewType );
+
+ //-------------------------------------------------------------------------
+
+ /** @returns
+ the index of the converted number format if successful,
+ the old index if the number format could not be converted.
+
+ @param nKey
+ index of the old number format
+
+ @param nLocale
+ the locale to which the number format is converted
+ */
+ long getFormatForLocale( [in] long nKey,
+ [in] com::sun::star::lang::Locale nLocale );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/util/XNumberFormats.idl b/offapi/com/sun/star/util/XNumberFormats.idl
new file mode 100644
index 000000000000..25954d8e4f99
--- /dev/null
+++ b/offapi/com/sun/star/util/XNumberFormats.idl
@@ -0,0 +1,136 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_XNumberFormats_idl__
+#define __com_sun_star_util_XNumberFormats_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_beans_XPropertySet_idl__
+#include <com/sun/star/beans/XPropertySet.idl>
+#endif
+
+#ifndef __com_sun_star_lang_Locale_idl__
+#include <com/sun/star/lang/Locale.idl>
+#endif
+
+#ifndef __com_sun_star_util_MalformedNumberFormatException_idl__
+#include <com/sun/star/util/MalformedNumberFormatException.idl>
+#endif
+
+
+//=============================================================================
+
+ module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** provides access to multiple <type>NumberFormat</type>s.
+ */
+published interface XNumberFormats: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** @returns
+ a readonly <type>NumberFormatProperties</type>.
+ */
+ com::sun::star::beans::XPropertySet getByKey( [in] long nKey );
+
+ //-------------------------------------------------------------------------
+
+ /** @returns
+ a sequence of the keys of all number formats with the specified type and language.
+
+ @param nType
+ the type of number formats to return. Must be one of the
+ <type>NumberFormat</type> constants.
+
+ @param nLanguage
+ the language of number formats to return.
+
+ @param bCreate
+ <TRUE/>: create new entries if no formats for the selected language exist<BR>
+ <FALSE/>: return an empty list if no formats for the selected language exist
+ */
+ sequence<long> queryKeys( [in] short nType,
+ [in] com::sun::star::lang::Locale nLocale,
+ [in] boolean bCreate );
+
+ //-------------------------------------------------------------------------
+
+ /** finds a number format by its format string and returns its key.
+ */
+ long queryKey( [in] string aFormat,
+ [in] com::sun::star::lang::Locale nLocale,
+ [in] boolean bScan );
+
+ //-------------------------------------------------------------------------
+
+ /** adds a new number format to the list, using a format string.
+ */
+ long addNew( [in] string aFormat,
+ [in] com::sun::star::lang::Locale nLocale )
+ raises( com::sun::star::util::MalformedNumberFormatException );
+
+ //-------------------------------------------------------------------------
+
+ /** adds a new number format to the list, using a format
+ string in a different locale than the desired locale of the
+ resulting number format.
+ */
+ long addNewConverted( [in] string aFormat,
+ [in] com::sun::star::lang::Locale nLocale,
+ [in] com::sun::star::lang::Locale nNewLocale )
+ raises( com::sun::star::util::MalformedNumberFormatException );
+
+ //-------------------------------------------------------------------------
+
+ /** removes a number format from the list.
+ */
+ void removeByKey( [in] long nKey );
+
+ //-------------------------------------------------------------------------
+
+ /** generates a format string from several parameters without
+ creating an actual number format.
+ */
+ string generateFormat( [in] long nBaseKey,
+ [in] com::sun::star::lang::Locale nLocale,
+ [in] boolean bThousands,
+ [in] boolean bRed,
+ [in] short nDecimals,
+ [in] short nLeading );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/util/XNumberFormatsSupplier.idl b/offapi/com/sun/star/util/XNumberFormatsSupplier.idl
new file mode 100644
index 000000000000..505be56288bc
--- /dev/null
+++ b/offapi/com/sun/star/util/XNumberFormatsSupplier.idl
@@ -0,0 +1,75 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_XNumberFormatsSupplier_idl__
+#define __com_sun_star_util_XNumberFormatsSupplier_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_beans_XPropertySet_idl__
+#include <com/sun/star/beans/XPropertySet.idl>
+#endif
+
+#ifndef __com_sun_star_util_XNumberFormats_idl__
+#include <com/sun/star/util/XNumberFormats.idl>
+#endif
+
+
+//=============================================================================
+
+ module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** supplies the collection of <type>NumberFormat</type>s (for example, in a
+ document) and the settings belonging to these formats.
+ */
+published interface XNumberFormatsSupplier: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** @returns
+ the <type>NumberFormatSettings</type> of this object.
+ */
+ com::sun::star::beans::XPropertySet getNumberFormatSettings();
+
+ //-------------------------------------------------------------------------
+
+ /** @returns
+ the collection of number formats belonging to this object (e.g., to this document).
+ */
+ com::sun::star::util::XNumberFormats getNumberFormats();
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/util/XNumberFormatter.idl b/offapi/com/sun/star/util/XNumberFormatter.idl
new file mode 100644
index 000000000000..f01f1b30bf73
--- /dev/null
+++ b/offapi/com/sun/star/util/XNumberFormatter.idl
@@ -0,0 +1,149 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_XNumberFormatter_idl__
+#define __com_sun_star_util_XNumberFormatter_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_util_Color_idl__
+#include <com/sun/star/util/Color.idl>
+#endif
+
+#ifndef __com_sun_star_util_XNumberFormatsSupplier_idl__
+#include <com/sun/star/util/XNumberFormatsSupplier.idl>
+#endif
+
+#ifndef __com_sun_star_util_NotNumericException_idl__
+#include <com/sun/star/util/NotNumericException.idl>
+#endif
+
+#ifndef __com_sun_star_util_Color_idl__
+#include <com/sun/star/util/Color.idl>
+#endif
+
+
+//=============================================================================
+
+ module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** represents a number formatter.
+ */
+published interface XNumberFormatter: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** attaches an <type>XNumberFormatsSupplier</type> to this
+ <type>NumberFormatter</type>.
+
+ <p>This <type>NumberFormatter</type> will only use the <type>NumberFormats</type>
+ specified in the attached <type>XNumberFormatsSupplier</type>. Without an attached
+ <type>XNumberFormatsSupplier</type>, no formatting is possible.</p>
+ */
+ void attachNumberFormatsSupplier( [in] com::sun::star::util::XNumberFormatsSupplier xSupplier );
+
+ //-------------------------------------------------------------------------
+
+ /** @returns
+ the attached <type>XNumberFormatsSupplier</type>.
+ */
+ com::sun::star::util::XNumberFormatsSupplier getNumberFormatsSupplier();
+
+ //-------------------------------------------------------------------------
+
+ /** detects the number format in a string which contains a formatted number.
+ */
+ long detectNumberFormat( [in] long nKey,
+ [in] string aString )
+ raises( com::sun::star::util::NotNumericException );
+
+ //-------------------------------------------------------------------------
+
+ /** converts a string which contains a formatted number into a number.
+
+ <p>If this is a text format, the string will not be converted.</p>
+ */
+ double convertStringToNumber( [in] long nKey,
+ [in] string aString )
+ raises( com::sun::star::util::NotNumericException );
+
+ //-------------------------------------------------------------------------
+
+ /** converts a number into a string.
+ */
+ string convertNumberToString( [in] long nKey,
+ [in] double fValue );
+
+ //-------------------------------------------------------------------------
+
+ /** @returns
+ the color which is specified for the given value in the number format,
+ which is otherwise the value of <var>aDefaultColor</var>.
+ */
+ com::sun::star::util::Color queryColorForNumber( [in] long nKey,
+ [in] double fValue,
+ [in] com::sun::star::util::Color aDefaultColor );
+
+ //-------------------------------------------------------------------------
+
+ /** converts a string into another string.
+ */
+ string formatString( [in] long nKey,
+ [in] string aString );
+
+ //-------------------------------------------------------------------------
+
+ /** @returns
+ the color which is specified for the given string in the number format,
+ which is otherwise the value of <var>aDefaultColor</var>.
+ */
+ com::sun::star::util::Color queryColorForString( [in] long nKey,
+ [in] string aString,
+ [in] com::sun::star::util::Color aDefaultColor );
+
+ //-------------------------------------------------------------------------
+
+ /** converts a number into a string with the specified format.
+
+ <p>This string can always be converted back to a number using the same
+ format.
+ </p>
+ */
+ string getInputString( [in] long nKey,
+ [in] double fValue );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/util/XOfficeInstallationDirectories.idl b/offapi/com/sun/star/util/XOfficeInstallationDirectories.idl
new file mode 100644
index 000000000000..c70fde8867e5
--- /dev/null
+++ b/offapi/com/sun/star/util/XOfficeInstallationDirectories.idl
@@ -0,0 +1,114 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_util_XOfficeInstallationDirectories_idl__
+#define __com_sun_star_util_XOfficeInstallationDirectories_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+module com { module sun { module star { module util {
+
+//============================================================================
+/** encapsulates access to the current office installation directory and
+ office user data directory, provides functionality to create URLs
+ containing relocatable (not absolute) references to the current office
+ installation directory and user data directory and vice versa.
+
+ <p>This functionality is useful when data containing references to the
+ current office installation directory must be made persistent and re-read
+ later. In many cases, storing the reference directly would destroy the
+ relocatability of an office installation.
+
+ @since OOo 2.0.0
+ */
+interface XOfficeInstallationDirectories : com::sun::star::uno::XInterface
+{
+ //------------------------------------------------------------------------
+ /** returns the absolute URL containing the directory of the current office
+ installation (e.g. "file:///opt/OpenOffice.org".)
+
+ @returns
+ the absolute URL containing the directory of the current office
+ installation.
+ */
+ string getOfficeInstallationDirectoryURL();
+
+ //------------------------------------------------------------------------
+ /** returns the absolute URL containing the directory where the current
+ office installation expects its user data (e.g. "file:///home/kso".)
+
+ @returns
+ the absolute URL containing the directory of the current office
+ user data.
+ */
+ string getOfficeUserDataDirectoryURL();
+
+ //------------------------------------------------------------------------
+ /** calculates a relocatable URL from the given URL.
+
+ <p>If the given URL contains an absolute reference to the current office
+ installation directory or office user data directory, this method will
+ replace the absolute reference by an opaque placeholder string.
+ <code>makeRelocatableURL</code> must be used in order to re-replace the
+ placeholder by an absolute reference.
+
+ @param URL
+ The URL for that a relocatable URL is requested. In case the URL does
+ not contain a reference to the current office installation or to the office
+ user data directory, the input URL will be returned unchanged.
+
+ @returns
+ The relocatable URL.
+ */
+ string makeRelocatableURL( [in] string URL );
+
+ //------------------------------------------------------------------------
+ /** the counterpart of <code>makeRelocatableURL</code>.
+
+ <p>If the given URL contains a placeholder for an absolute reference to
+ the current office installation directory or for the office user data
+ directory, that was created using <code>makeRelocatableURL</code>, the
+ respective placeholder will be replaced by an absolute reference to the
+ current office installation directory or office user data directory.
+
+ @param URL
+ The URL for that an absolaute URL is requested. In case the URL does
+ not contain the opaque relocation placholder used by
+ <code>makeRelocatableURL</code>, the input URL will be returned
+ unchanged.
+
+ @returns
+ The absolute URL.
+ */
+ string makeAbsoluteURL( [in] string URL );
+};
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/XPropertyReplace.idl b/offapi/com/sun/star/util/XPropertyReplace.idl
new file mode 100644
index 000000000000..7be1114220f3
--- /dev/null
+++ b/offapi/com/sun/star/util/XPropertyReplace.idl
@@ -0,0 +1,101 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_XPropertyReplace_idl__
+#define __com_sun_star_util_XPropertyReplace_idl__
+
+#ifndef __com_sun_star_util_XReplaceDescriptor_idl__
+#include <com/sun/star/util/XReplaceDescriptor.idl>
+#endif
+
+#ifndef __com_sun_star_beans_PropertyValue_idl__
+#include <com/sun/star/beans/PropertyValue.idl>
+#endif
+
+#ifndef __com_sun_star_beans_UnknownPropertyException_idl__
+#include <com/sun/star/beans/UnknownPropertyException.idl>
+#endif
+
+#ifndef __com_sun_star_lang_IllegalArgumentException_idl__
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** makes it possible to search and replace properties.
+ */
+published interface XPropertyReplace: com::sun::star::util::XReplaceDescriptor
+{
+ //-------------------------------------------------------------------------
+ /** provides the information if specific property values are
+ searched, or just the existence of the specified properties.
+ */
+ boolean getValueSearch();
+
+ //-------------------------------------------------------------------------
+ /** specifies if specific property values are searched,
+ or just the existence of the specified properties.
+ */
+ void setValueSearch( [in] boolean bValueSearch );
+
+ //-------------------------------------------------------------------------
+ /** @returns
+ the attributes to search for.
+ */
+ sequence<com::sun::star::beans::PropertyValue> getSearchAttributes();
+
+ //-------------------------------------------------------------------------
+ /** sets the properties to search for.
+ */
+ void setSearchAttributes( [in] sequence<com::sun::star::beans::PropertyValue> aSearchAttribs )
+ raises( com::sun::star::beans::UnknownPropertyException,
+ com::sun::star::lang::IllegalArgumentException );
+
+ //-------------------------------------------------------------------------
+ /** @returns
+ the attribute values which are used to replace the found occurrences.
+ */
+ sequence<com::sun::star::beans::PropertyValue> getReplaceAttributes();
+
+ //-------------------------------------------------------------------------
+ /** sets the properties to replace the found occurrences.
+ */
+ void setReplaceAttributes( [in] sequence<com::sun::star::beans::PropertyValue> aSearchAttribs )
+ raises( com::sun::star::beans::UnknownPropertyException,
+ com::sun::star::lang::IllegalArgumentException );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/XProtectable.idl b/offapi/com/sun/star/util/XProtectable.idl
new file mode 100644
index 000000000000..57685a168bf5
--- /dev/null
+++ b/offapi/com/sun/star/util/XProtectable.idl
@@ -0,0 +1,72 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_XProtectable_idl__
+#define __com_sun_star_util_XProtectable_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_lang_IllegalArgumentException_idl__
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** makes it possible to protect objects from modifications.
+ */
+published interface XProtectable: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+ /** activates the protection.
+ */
+ void protect( [in] string aPassword );
+
+ //-------------------------------------------------------------------------
+ /** removes the protection.
+ */
+ void unprotect( [in] string aPassword )
+ raises( com::sun::star::lang::IllegalArgumentException );
+
+ //-------------------------------------------------------------------------
+ /** @returns
+ the current state of protection.
+ */
+ boolean isProtected();
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/XRefreshListener.idl b/offapi/com/sun/star/util/XRefreshListener.idl
new file mode 100644
index 000000000000..8286583015e1
--- /dev/null
+++ b/offapi/com/sun/star/util/XRefreshListener.idl
@@ -0,0 +1,60 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_XRefreshListener_idl__
+#define __com_sun_star_util_XRefreshListener_idl__
+
+#ifndef __com_sun_star_lang_XEventListener_idl__
+#include <com/sun/star/lang/XEventListener.idl>
+#endif
+
+#ifndef __com_sun_star_lang_EventObject_idl__
+#include <com/sun/star/lang/EventObject.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** makes it possible to receive <em>refreshed</em> events.
+ */
+published interface XRefreshListener: com::sun::star::lang::XEventListener
+{
+ //-------------------------------------------------------------------------
+ /** is called when the object data is refreshed.
+ */
+ void refreshed( [in] com::sun::star::lang::EventObject rEvent );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/XRefreshable.idl b/offapi/com/sun/star/util/XRefreshable.idl
new file mode 100644
index 000000000000..1ed7e497a433
--- /dev/null
+++ b/offapi/com/sun/star/util/XRefreshable.idl
@@ -0,0 +1,70 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_XRefreshable_idl__
+#define __com_sun_star_util_XRefreshable_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_util_XRefreshListener_idl__
+#include <com/sun/star/util/XRefreshListener.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** is supported by objects with data that can be refreshed from a data source.
+ */
+published interface XRefreshable: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+ /** refreshes the data of the object from the connected data source.
+ */
+ void refresh();
+
+ //-------------------------------------------------------------------------
+ /** adds the specified listener to receive the event "refreshed."
+ */
+ [oneway] void addRefreshListener( [in] com::sun::star::util::XRefreshListener l );
+
+ //-------------------------------------------------------------------------
+ /** removes the specified listener.
+ */
+ [oneway] void removeRefreshListener( [in] com::sun::star::util::XRefreshListener l );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/XReplaceDescriptor.idl b/offapi/com/sun/star/util/XReplaceDescriptor.idl
new file mode 100644
index 000000000000..e3bb662a2a0a
--- /dev/null
+++ b/offapi/com/sun/star/util/XReplaceDescriptor.idl
@@ -0,0 +1,62 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_XReplaceDescriptor_idl__
+#define __com_sun_star_util_XReplaceDescriptor_idl__
+
+#ifndef __com_sun_star_util_XSearchDescriptor_idl__
+#include <com/sun/star/util/XSearchDescriptor.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** specifies a string replace operation.
+ */
+published interface XReplaceDescriptor: com::sun::star::util::XSearchDescriptor
+{
+ //-------------------------------------------------------------------------
+ /** @returns
+ the string which replaces the found occurrences.
+ */
+ string getReplaceString();
+
+ //-------------------------------------------------------------------------
+ /** sets the string which replaces the found occurrences.
+ */
+ void setReplaceString( [in] string aReplaceString );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/XReplaceable.idl b/offapi/com/sun/star/util/XReplaceable.idl
new file mode 100644
index 000000000000..bb80fac433b0
--- /dev/null
+++ b/offapi/com/sun/star/util/XReplaceable.idl
@@ -0,0 +1,80 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_XReplaceable_idl__
+#define __com_sun_star_util_XReplaceable_idl__
+
+#ifndef __com_sun_star_util_XSearchable_idl__
+#include <com/sun/star/util/XSearchable.idl>
+#endif
+
+#ifndef __com_sun_star_util_XReplaceDescriptor_idl__
+#include <com/sun/star/util/XReplaceDescriptor.idl>
+#endif
+
+#ifndef __com_sun_star_util_XSearchDescriptor_idl__
+#include <com/sun/star/util/XSearchDescriptor.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** makes it possible to replace strings in a text described by a
+ <type>SearchDescriptor</type>.
+
+ @example
+ <listing>
+ 'replace all bold words "search for" by "look for"
+ xReplaceDescr = xDocument.createReplaceDescriptor()
+ xReplaceDescr.SearchString = "search for"
+ xReplaceDescr.ReplaceString = "look for"
+ xFound = xDocument.replaceAll( xReplaceDescr )
+ </listing>
+ */
+published interface XReplaceable: com::sun::star::util::XSearchable
+{
+ //-------------------------------------------------------------------------
+ /** creates a descriptor which contains properties that
+ specify a search in this container.@see SearchDescriptor
+ */
+ com::sun::star::util::XReplaceDescriptor createReplaceDescriptor();
+
+ //-------------------------------------------------------------------------
+ /** searches for all occurrences of whatever is specified.@see SearchDescriptor
+ */
+ long replaceAll( [in] com::sun::star::util::XSearchDescriptor xDesc );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/XSearchDescriptor.idl b/offapi/com/sun/star/util/XSearchDescriptor.idl
new file mode 100644
index 000000000000..dde3589773dd
--- /dev/null
+++ b/offapi/com/sun/star/util/XSearchDescriptor.idl
@@ -0,0 +1,62 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_XSearchDescriptor_idl__
+#define __com_sun_star_util_XSearchDescriptor_idl__
+
+#ifndef __com_sun_star_beans_XPropertySet_idl__
+#include <com/sun/star/beans/XPropertySet.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** specifies a string search operation.
+ */
+published interface XSearchDescriptor: com::sun::star::beans::XPropertySet
+{
+ //-------------------------------------------------------------------------
+ /** @returns
+ the string of characters to search for.
+ */
+ string getSearchString();
+
+ //-------------------------------------------------------------------------
+ /** sets the string of characters to look for.
+ */
+ [oneway] void setSearchString( [in] string aString );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/XSearchable.idl b/offapi/com/sun/star/util/XSearchable.idl
new file mode 100644
index 000000000000..fce6b411ce9c
--- /dev/null
+++ b/offapi/com/sun/star/util/XSearchable.idl
@@ -0,0 +1,112 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_XSearchable_idl__
+#define __com_sun_star_util_XSearchable_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_util_XSearchDescriptor_idl__
+#include <com/sun/star/util/XSearchDescriptor.idl>
+#endif
+
+#ifndef __com_sun_star_container_XIndexAccess_idl__
+#include <com/sun/star/container/XIndexAccess.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** enables the object to look for specified contents of the object
+ (in particular, for a text range which contains a specific string pattern).
+
+ @example
+ in a <type scope="com::sun::star::text">TextDocument</type>:
+ set all "search for" to bold using findFirst()/findNext():
+
+ <listing>
+ xSearchDescr = xDocument.createSearchDescriptor()
+ xSearchDescr.SearchString = "search for"
+ xSearchDescr.SearchCaseSensitive = <TRUE/>
+ xSearchDescr.SearchWords = <TRUE/>
+ xFound = xDocument.findFirst( xSearchDescr )
+ do while not IsNull(xFound)
+ xFound.CharWeight = com.sun.star.awt.FontWeight.BOLD
+ xFound = xDocument.findNext( xFound.End, xSearchDescr )
+ loop
+ </listing>
+
+ */
+published interface XSearchable: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+ /** creates a <type>SearchDescriptor</type> which contains properties that
+ specify a search in this container.@see SearchDescriptor
+ */
+ com::sun::star::util::XSearchDescriptor createSearchDescriptor();
+
+ //-------------------------------------------------------------------------
+ /** searches the contained texts for all occurrences of whatever is specified.@see SearchDescriptor
+ */
+ com::sun::star::container::XIndexAccess findAll( [in] com::sun::star::util::XSearchDescriptor xDesc );
+
+ //-------------------------------------------------------------------------
+ /** searches the contained texts for the next occurrence of whatever is specified.
+
+ @returns
+ the position within the component, e.g. a <type scope="com::sun::star::text">XTextRange</type>
+ which determines the found elements.
+
+ @see SearchDescriptor
+ */
+ com::sun::star::uno::XInterface findFirst( [in] com::sun::star::util::XSearchDescriptor xDesc );
+
+ //-------------------------------------------------------------------------
+ /** searches the contained texts for the next occurrence of whatever is specified.
+
+ @param xStartAt
+ represents a position within the component at which the search continues.
+ This position is returned by <method>XSearchable::findFirst</method> or
+ the previous <method>XSearchable::findNext</method>.
+
+ @see SearchDescriptor
+ */
+ com::sun::star::uno::XInterface findNext( [in] com::sun::star::uno::XInterface xStartAt,
+ [in] com::sun::star::util::XSearchDescriptor xDesc );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/XSimpleErrorHandler.idl b/offapi/com/sun/star/util/XSimpleErrorHandler.idl
new file mode 100644
index 000000000000..1d3953d6ce14
--- /dev/null
+++ b/offapi/com/sun/star/util/XSimpleErrorHandler.idl
@@ -0,0 +1,54 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_XSimpleErrorHandler_idl__
+#define __com_sun_star_util_XSimpleErrorHandler_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+// DOCUMENTATION OMITTED FOR XSimpleErrorHandler
+/** @deprecated
+ */
+published interface XSimpleErrorHandler: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+ // DOCUMENTATION OMITTED FOR XSimpleErrorHandler::handleError
+ boolean handleError( [in] any Exception );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/XSortable.idl b/offapi/com/sun/star/util/XSortable.idl
new file mode 100644
index 000000000000..0ee7e98f5016
--- /dev/null
+++ b/offapi/com/sun/star/util/XSortable.idl
@@ -0,0 +1,113 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_XSortable_idl__
+#define __com_sun_star_util_XSortable_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_beans_PropertyValue_idl__
+#include <com/sun/star/beans/PropertyValue.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** makes it possible to sort the contents of this object.
+
+ <p>The available properties describing the sort criterias are
+ defined in the sort descriptor implemented by the object that
+ implements this interface.</p>
+
+ <p>There are older deprecated sort descriptors:</p>
+ <ul>
+ <li>com::sun::star::util::SortDescriptor</li>
+ <li>com::sun::star::table::TableSortDescriptor</li>
+ <li>com::sun::star::text::TextSortDescriptor</li>
+ </ul>
+
+ <p>And a new set of sort descriptors:</p>
+ <ul>
+ <li>com::sun::star::util::SortDescriptor2</li>
+ <li>com::sun::star::table::TableSortDescriptor2</li>
+ <li>com::sun::star::text::TextSortDescriptor2</li>
+ </ul>
+
+ <p>Both types may be implemented by the same object.
+ When calling the sort method however properties from different
+ descriptors must not be mixed.</p>
+ */
+published interface XSortable: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+ /** @returns
+ a sequence of properties which allows to specify/modify the
+ sort criteria.
+
+ <p>The set of properties is specific to the type of object that
+ implements this interface. Therefore they can usually be used
+ only for objects of that same type.</p>
+
+ @see com::sun::star::util::SortDescriptor
+ @see com::sun::star::table::TableSortDescriptor
+ @see com::sun::star::text::TextSortDescriptor
+ @see com::sun::star::util::SortDescriptor2
+ @see com::sun::star::table::TableSortDescriptor2
+ @see com::sun::star::text::TextSortDescriptor2
+
+ */
+ sequence< com::sun::star::beans::PropertyValue > createSortDescriptor();
+
+ //-------------------------------------------------------------------------
+ /** sorts the contents of the object according to the specified
+ properties.
+
+ <p>The specified properties are usually the same or a subset of
+ those obtained by calling <member>createSortDescriptor</member>
+ on the same type of object.<p>
+
+ @see com::sun::star::util::SortDescriptor
+ @see com::sun::star::table::TableSortDescriptor
+ @see com::sun::star::text::TextSortDescriptor
+ @see com::sun::star::util::SortDescriptor2
+ @see com::sun::star::table::TableSortDescriptor2
+ @see com::sun::star::text::TextSortDescriptor2
+ */
+ void sort( [in] sequence< com::sun::star::beans::PropertyValue > xDescriptor );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/XStringAbbreviation.idl b/offapi/com/sun/star/util/XStringAbbreviation.idl
new file mode 100644
index 000000000000..076b84b033c5
--- /dev/null
+++ b/offapi/com/sun/star/util/XStringAbbreviation.idl
@@ -0,0 +1,83 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_util_XStringAbbreviation_idl__
+#define __com_sun_star_util_XStringAbbreviation_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+module com { module sun { module star { module util {
+ published interface XStringWidth;
+}; }; }; };
+
+module com { module sun { module star { module util {
+
+//============================================================================
+/** Abbreviate arbitrary strings.
+
+ <p>It is expected that there will be different implementations of this
+ interface, that each expect strings conforming to a certain structure
+ (e.g., URIs, platform-specific file paths, or newsgroup names). The
+ abbreviation algorithms will then take into account the structural
+ information.</p>
+
+ @see XStringWidth
+ */
+published interface XStringAbbreviation: com::sun::star::uno::XInterface
+{
+ //------------------------------------------------------------------------
+ /** Abbreviate a string, so that the resulting abbreviated string is not
+ wider than some given width.
+
+ <p>The width of a string is an abstract concept here, measured via
+ an <type>XStringWidth</type> interface. Examples are the number of
+ characters in the string (<type>XStringWidth</type> will measure the
+ string's length), or the width in pixel when displayed with a specific
+ font (which <type>XStringWidth</type> would encapsulate).</p>
+
+ @param xStringWidth
+ The interface that makes concrete the abstract notion of string width.
+
+ @param nWidth
+ The resulting abbreviated string's width will be no larger than this.
+
+ @param aString
+ The string that is abbreviated.
+
+ @returns
+ an abbreviated string.
+ */
+ string abbreviateString([in] XStringWidth xStringWidth,
+ [in] long nWidth,
+ [in] string aString);
+};
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/XStringEscape.idl b/offapi/com/sun/star/util/XStringEscape.idl
new file mode 100644
index 000000000000..f73bf84c59ae
--- /dev/null
+++ b/offapi/com/sun/star/util/XStringEscape.idl
@@ -0,0 +1,83 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_XStringEscape_idl__
+#define __com_sun_star_util_XStringEscape_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_lang_IllegalArgumentException_idl__
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+/** This interface is used to encode an arbitrary String into a
+ escaped form.
+
+ <p>The escaped form is chosen to be suitable for use with other interfaces
+ of the object or service providing this interface.</p>
+
+ <p>Any characters or character sequences that are not compatible with
+ any naming rules or restrictions must be replaced by an escaped form,
+ that complies to these rules.
+
+ <p>The transformation should preserve all traits of the string that are
+ generally respected by the service. For example, the case of a string
+ may be lost after encoding and then decoding, if the service
+ generally is case insensitive.
+
+ <p>Other than that the encoding is one-to-one and can be reversed. The
+ encoding should try to preserve as much as possible of the original
+ string, to keep human-readable input human-friendly where possible.
+ Strings that already conform to the naming conventions should be left
+ unchanged or minimally modified.</p>
+ */
+published interface XStringEscape: com::sun::star::uno::XInterface
+{
+ /** encodes an arbitrary string into an escaped form compatible with some naming rules.
+ */
+ string escapeString([in] string aString)
+ raises( com::sun::star::lang::IllegalArgumentException);
+
+ /** decodes an escaped string into the original form.
+ */
+ string unescapeString([in] string aEscapedString)
+ raises( com::sun::star::lang::IllegalArgumentException);
+};
+
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
+
diff --git a/offapi/com/sun/star/util/XStringMapping.idl b/offapi/com/sun/star/util/XStringMapping.idl
new file mode 100644
index 000000000000..b6afc14642e7
--- /dev/null
+++ b/offapi/com/sun/star/util/XStringMapping.idl
@@ -0,0 +1,55 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_XStringMapping_idl__
+#define __com_sun_star_util_XStringMapping_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** provides a mapping from <atom>string</atom> to <atom>string</atom>
+ */
+published interface XStringMapping: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+ /** provides a mapping for a given sequence of strings to
+ a sequence of belonging strings.
+ */
+ boolean mapStrings( [inout] sequence< string > Parameter );
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/XStringSubstitution.idl b/offapi/com/sun/star/util/XStringSubstitution.idl
new file mode 100644
index 000000000000..e8d5eb682cf0
--- /dev/null
+++ b/offapi/com/sun/star/util/XStringSubstitution.idl
@@ -0,0 +1,134 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_util_XStringSubstitution_idl__
+#define __com_sun_star_util_XStringSubstitution_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_container_NoSuchElementException_idl__
+#include <com/sun/star/container/NoSuchElementException.idl>
+#endif
+
+//=============================================================================
+
+ module com { module sun { module star { module util {
+
+//=============================================================================
+/** A common interface for substituting string variables with
+ other strings.
+
+ <p>
+ The substitution algorithm and the syntax for a string variable are
+ not part of this interface definition. Please look at the documentation
+ of the implementation that must specify these parameters.
+ </p>
+
+ @since OOo 1.1.2
+*/
+published interface XStringSubstitution : com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+ /** Exchanges variables inside a given text with a substitution text
+ defined for the variables.
+
+ <p>
+ The method iterates through it's internal variables list to match the
+ variables in the given string. A match replaces the variable with the
+ string defined for this variable. If no variable can be found in the string
+ it will be returned unchanged. The behavior if a variable is found in
+ the string but it is unknown for the implementation depends on the parameter
+ bSubstRequired.
+ </p>
+
+ @param aText
+ A string containing variables that should be substituted.
+
+ @param bSubstRequired
+ Specifies if a successfull substitution is required. The
+ function throws a <type scope="com::sun::star::container">NoSuchElementException</type>
+ if it finds a variable that is unknown. In this case it is possible
+ that the returned string would not be what the caller expected!
+
+ @return
+ Returns a string based on <var>aText</var> where all variables were
+ exchanged with their value defined at calling time.
+ */
+ string substituteVariables( [in] string aText, [in] boolean bSubstRequired )
+ raises( com::sun::star::container::NoSuchElementException );
+
+ //-------------------------------------------------------------------------
+ /** Tries to replace parts of aText with variables that represents
+ these sub strings.
+
+ <p>
+ The method iterates through it's internal variable list and tries to match
+ parts of the given string Tries to replace parts of <var>aText</var> with
+ variables that represents these sub strings.If more than one variable
+ matches the one with the longest matching sub string will be chosen.
+ </p>
+
+ @param aText
+ A string where known substrings should be replaced by variables.
+
+ @return
+ Returns the resubstituted string with variables for all parts
+ that could be replaced. The unchanged argument will be returned
+ if nothing can be resubtituted.
+ */
+
+ string reSubstituteVariables( [in] string aText );
+
+ //-------------------------------------------------------------------------
+ /** Returns the current value of a variable.
+
+ <p>
+ The method iterates through it's internal variable list and tries to
+ find the given variable. If the variable is unkown a
+ <type scope="com::sun::star::container">NoSuchElementException</type>
+ is thrown.
+ </p>
+
+ @param variable
+ The name of a variable.
+
+ @return
+ Returns a string that represents the variable. If the
+ variable is unknown a <type scope="com::sun::star::container">NoSuchElementException</type>
+ is thrown.
+ */
+ string getSubstituteVariableValue( [in] string variable )
+ raises (::com::sun::star::container::NoSuchElementException );
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/XStringWidth.idl b/offapi/com/sun/star/util/XStringWidth.idl
new file mode 100644
index 000000000000..81d76dd79475
--- /dev/null
+++ b/offapi/com/sun/star/util/XStringWidth.idl
@@ -0,0 +1,63 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_util_XStringWidth_idl__
+#define __com_sun_star_util_XStringWidth_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+module com { module sun { module star { module util {
+
+//============================================================================
+/** An interface that encapsulates the abstract notion of string width.
+
+ @see XStringAbbreviation
+ */
+published interface XStringWidth: com::sun::star::uno::XInterface
+{
+ //------------------------------------------------------------------------
+ /** compute the width of a given string.
+
+ <p>Depending on the implementation of this interface, the width of a
+ string can be rather different things, like the number of characters
+ in the string, or the width in pixel when displayed with a specific
+ font.</p>
+
+ @param aString
+ The string that is to be measured.
+
+ @returns
+ the string's width.
+ */
+ long queryStringWidth([in] string aString);
+};
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/XTextSearch.idl b/offapi/com/sun/star/util/XTextSearch.idl
new file mode 100644
index 000000000000..cc9e45058c47
--- /dev/null
+++ b/offapi/com/sun/star/util/XTextSearch.idl
@@ -0,0 +1,190 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_lang_XTextSearch_idl__
+#define __com_sun_star_lang_XTextSearch_idl__
+
+
+#include <com/sun/star/lang/Locale.idl>
+#include <com/sun/star/uno/XInterface.idl>
+//#include <com/sun/star/lang/CascadeTransliterator.idl>
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+
+published enum SearchAlgorithms {
+ ABSOLUTE, // "normal" a kind of Boyer-Moore
+ REGEXP, // regular expression
+ APPROXIMATE // Leveinstein distance
+};
+
+published constants SearchFlags
+{
+ //Flag for all search methods
+
+ /**
+ @deprecated : the constant ALL_IGNORE_CASE is never supported -
+ it must use the transliteration flags of
+ the SearchOptions.
+ <p>@see TransliterationModulesNew
+ */
+ const long ALL_IGNORE_CASE = 0x00000001;
+
+ /// Flag for normal (Boyer-Moore) search
+ const long NORM_WORD_ONLY = 0x00000010;
+
+ /// Flag for "regular expression" search / interpret as extended regular expression
+ const long REG_EXTENDED = 0x00000100;
+ /** Flag for "regular expression" search / No replace, i.e., avoid sub regular
+ expresions, return true/false to match
+
+<!-- JRH: Check this for sense of the expression. -->
+ */
+ const long REG_NOSUB = 0x00000200;
+
+ /// Flag for "regular expression" search / Special new line treatment
+ const long REG_NEWLINE = 0x00000400;
+
+ /** A NEWLINE character in string will not be matched by a period outside bracket
+ expression or by any form of a non matching list.
+ A circumflex (^) in pattern when used to specify expression anchoring
+<!-- JRH: anhoring to anchoring. -->
+ will match the zero length string immediately after a newline in string,
+ regardless of the setting of REG_NOTBOL
+ A dollar-sign ($) in pattern when used to specify expression anchoring,
+ will match zero-length string immediately before a new line in string,
+ regardless of the setting of REG_NOTEOL
+*/
+ const long REG_NOT_BEGINOFLINE = 0x00000800;
+
+ /** The first character in the string is not the beginning of the line therefore ^ will not
+ match with first character of the string
+ */
+ const long REG_NOT_ENDOFLINE = 0x00001000;
+
+
+ /// Flags for "Weight Levenshtein-Distance" search
+ const long LEV_RELAXED = 0x00010000;
+};
+
+
+published struct SearchOptions {
+ //-------------------------------------------------------------------------
+ /// search type, can be: ABSOLUTE, REGEXP, APPROXIMATE
+ SearchAlgorithms algorithmType;
+
+ /** some flags - can be mixed
+
+ @see SearchFlags
+ */
+ long searchFlag;
+
+ /// the search text
+ string searchString;
+
+ /** the replace text
+ (is for optional replacing - SearchOption is only the data container for it)*/
+ string replaceString;
+
+ /// this is the language for case insensitive search
+ ::com::sun::star::lang::Locale Locale;
+
+ /** this many characters can be different between the found and search word
+ in a "Weight Levenshtein-Distance"*/
+ long changedChars;
+
+ /** this many characters can be missed in the found word
+ in a "Weight Levenshtein-Distance"*/
+ long deletedChars;
+
+ /// this many characters can be additional in the found word in a "Weight Levenshtein-Distance"
+ long insertedChars;
+
+ /** asian flags for the transliteration. Same meaning as the enum of TransliteratorModule
+
+ @see com/sun/star/i18n/XTransliteration.idl
+ */
+ long transliterateFlags;
+};
+
+
+published struct SearchResult {
+ //-------------------------------------------------------------------------
+ /** Number of subexpressions,
+ if it is 0, then no match found; this value is 1 for ABSOLUTE and APPROXIMATE match.
+ The start and endOffset are always dependent on the search direction.
+ For example:
+ if you search "X" in the text "-X-" the offset are:
+ for forward: start = 1, end = 2
+ for backward: start = 2, end = 1
+ Forward, the startOffset is inclusive, the endOffset exclusive.
+ Backward, the startOffset is exclusive, the endOffset inclusive.
+
+ For regular expressions it can be greater than 1.
+ If the value is 1, startoffset[0] and endoffset[0] points to the matching sub string
+ if value is > 1, still startoffset[0] and endoffset[0] points to the matching substring for whole regular expression
+ startoffset[i] and endoffset[i] points to the matching substring of i th matching substring.
+ */
+ long subRegExpressions;
+ sequence<long> startOffset; // inclusive
+ sequence<long> endOffset; // exclusive
+};
+
+
+
+/** enables an object to search in its content.
+ */
+published interface XTextSearch : com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+ /** set the options for the forward or backward search.
+
+ */
+ void setOptions ([in] SearchOptions options);
+ //-------------------------------------------------------------------------
+ /** search forward in the searchStr, starts at startPos and ends by endpos.
+ The result is returned in the SearchResult.
+
+ */
+ SearchResult searchForward ([in] string searchStr, [in] long startPos, [in] long endPos );
+ //-------------------------------------------------------------------------
+ /** search backward in the searchStr, starts at startPos and ends by endpos.
+ The endpos must be lower then the startpos, because the function searches backward!
+ The result is returned in the SearchResult.
+
+ */
+ SearchResult searchBackward ([in] string searchStr, [in] long startPos, [in] long endPos );
+};
+
+//=============================================================================
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/XTimeStamped.idl b/offapi/com/sun/star/util/XTimeStamped.idl
new file mode 100644
index 000000000000..39b2f3f5085b
--- /dev/null
+++ b/offapi/com/sun/star/util/XTimeStamped.idl
@@ -0,0 +1,73 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_util_XTimeStamped_idl__
+#define __com_sun_star_util_XTimeStamped_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+module com { module sun { module star { module util {
+
+//============================================================================
+
+/**
+ provides timestamp information for an object
+ in the form of an arbitrary string.
+
+ <p> The format and meaning of the timestamp depends on the implementation.
+ Services implementing this interface must document the meaning and
+ format they use.
+ </p>
+
+ <p> If the timestamp is unchanged between two calls, the
+ associated object has not changed. Any properties beyond this,
+ particularly the presence of a meaningful order between
+ timestamps, depend on the implementation.
+ </p>
+
+ @since OOo 1.1.2
+ */
+published interface XTimeStamped : ::com::sun::star::uno::XInterface
+{
+ //------------------------------------------------------------------------
+
+ /**
+ returns the timestamp of the object.
+
+
+ @return
+ a <atom>string</atom> that represents a timestamp.
+ */
+ string getTimestamp() ;
+
+ //------------------------------------------------------------------------
+} ;
+
+} ; } ; } ; } ;
+#endif
diff --git a/offapi/com/sun/star/util/XURLTransformer.idl b/offapi/com/sun/star/util/XURLTransformer.idl
new file mode 100644
index 000000000000..38232255fa22
--- /dev/null
+++ b/offapi/com/sun/star/util/XURLTransformer.idl
@@ -0,0 +1,146 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_XURLTransformer_idl__
+#define __com_sun_star_util_XURLTransformer_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_util_URL_idl__
+#include <com/sun/star/util/URL.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+
+/** supports parsing and assembling of URLs
+
+ @see URL
+ @see URLTransformer
+ */
+published interface XURLTransformer: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+ /** parses the string in <member>URL::Complete</member> which should contain
+ a syntactically complete URL.
+
+ <p>
+ The implementation is allowed to correct minor failures in <member>URL::Complete</member>
+ if the meaning of the URL remain unchanged. Parts of the URL are stored in the other
+ fields of <var>aURL</var>.
+ </p>
+
+ @param aURL
+ the URL which include the complete string notation and will contain
+ all parsed parts of it after finishing this call. <member>URL::Complete</member>
+ can be overwritten if the implementation corrected minor failures.
+
+ @returns
+ <TRUE/> if parsing was successfully (means if given URL was syntactically correct)
+ or <FALSE/> otherwhise.
+ */
+ boolean parseStrict( [inout] com::sun::star::util::URL aURL );
+
+ //-------------------------------------------------------------------------
+ /** parses the string in <member>URL::Complete</member>, which may contain
+ a syntactically complete URL or is specified by the provided protocol
+
+ <p>
+ The implementation can use smart functions to correct or interpret
+ <member>URL::Complete</member> if it is not a syntactically complete URL.
+ The parts of the URL are stored in the other fields of <var>aURL</var>.
+ </p>
+
+ @param aURL
+ the URL which include the string notation and will contain
+ all parsed parts of it after finishing this call. This includes
+ <member>URL::Complete</member>.
+
+ @param sSmartProtocol
+ optional information which protocol specification should be used to parse
+ member<member>URL::Complete</member>. If empty the implementation can use a
+ protocol which fit best.
+
+ @returns
+ <TRUE/> if parsing was successful (means if <member>URL::Complete</member> could
+ be syntactically correct) or <FALSE/> otherwise.
+ */
+ boolean parseSmart(
+ [inout] com::sun::star::util::URL aURL,
+ [in] string sSmartProtocol );
+
+ //-------------------------------------------------------------------------
+ /** assembles the parts of the URL specified by <var>aURL</var> and
+ stores it into <member>URL::Complete</member>
+
+ @param aURL
+ the URL which contains alls neccessary information in a structured form. The
+ member <member>URL::Complete</member> contains the URL in string notation after
+ the operation finished successfully. Otherwise the content of <member>URL::complete</member>
+ is not defined.
+
+ @returns
+ <TRUE/> if assembling was successfully or <FALSE/> otherwise.
+ */
+ boolean assemble( [inout] com::sun::star::util::URL aURL );
+
+ //-------------------------------------------------------------------------
+ /** returns a representation of the URL for UI purposes only
+
+ <p>
+ Sometimes it can be usefull to show an URL on an user interface
+ in a more "human readable" form. Such URL can't be used on any API
+ call, but make it easier for the user to understand it.
+ </p>
+
+ @param aURL
+ URL in structured form which should be shown at the UI
+
+ @param bWithPassword
+ specifies whether the password will be included in the encoding
+ or not. Usually passwords should never be shown at the user
+ interface.
+
+ @returns
+ a string representing the <var>aURL</var> if it is syntactically correct. A empty string if <var>aURL</var>
+ is not syntactically correct.
+ */
+ string getPresentation(
+ [in] com::sun::star::util::URL aURL,
+ [in] boolean bWithPassword );
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/XUniqueIDFactory.idl b/offapi/com/sun/star/util/XUniqueIDFactory.idl
new file mode 100644
index 000000000000..e79c36ab9c09
--- /dev/null
+++ b/offapi/com/sun/star/util/XUniqueIDFactory.idl
@@ -0,0 +1,51 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_container_XUniqueIDFactory_idl__
+#define __com_sun_star_container_XUniqueIDFactory_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+
+/** creates IDs which are unique within the container.
+ */
+published interface XUniqueIDFactory: com::sun::star::uno::XInterface
+{
+ /// creates a new ID, unique within this container.
+ string createUniqueID( );
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/XUpdatable.idl b/offapi/com/sun/star/util/XUpdatable.idl
new file mode 100644
index 000000000000..ed221a36ecdd
--- /dev/null
+++ b/offapi/com/sun/star/util/XUpdatable.idl
@@ -0,0 +1,58 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_util_XUpdatable_idl__
+#define __com_sun_star_util_XUpdatable_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_util_XRefreshListener_idl__
+#include <com/sun/star/util/XRefreshListener.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module util {
+
+//=============================================================================
+/** is supported by objects with data that can be updated from a data source.
+ */
+published interface XUpdatable: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+ /** refreshes the data of the object from the connected data source.
+ */
+ void update();
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/util/makefile.mk b/offapi/com/sun/star/util/makefile.mk
new file mode 100644
index 000000000000..75b5dde890c0
--- /dev/null
+++ b/offapi/com/sun/star/util/makefile.mk
@@ -0,0 +1,151 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+PRJ=..$/..$/..$/..
+
+PRJNAME=offapi
+
+TARGET=cssutil
+PACKAGE=com$/sun$/star$/util
+
+# --- Settings -----------------------------------------------------
+.INCLUDE : $(PRJ)$/util$/makefile.pmk
+
+# ------------------------------------------------------------------------
+
+IDLFILES=\
+ MeasureUnit.idl\
+ AliasProgrammaticPair.idl \
+ CellProtection.idl\
+ ChangesEvent.idl\
+ ChangesSet.idl \
+ CloseVetoException.idl\
+ Color.idl\
+ Date.idl\
+ DateTime.idl\
+ DateTimeRange.idl\
+ DiskFullException.idl\
+ Duration.idl\
+ ElementChange.idl \
+ Endianness.idl \
+ FileIOException.idl\
+ Language.idl\
+ NumberFormat.idl\
+ NumberFormatProperties.idl\
+ NumberFormats.idl\
+ NumberFormatSettings.idl\
+ NumberFormatsSupplier.idl\
+ NumberFormatter.idl\
+ ModeChangeEvent.idl\
+ ReplaceDescriptor.idl\
+ SearchDescriptor.idl\
+ Sortable.idl\
+ SortDescriptor.idl\
+ SortDescriptor2.idl\
+ SortField.idl\
+ SortFieldType.idl\
+ TextSearch.idl\
+ Time.idl\
+ TriState.idl\
+ URL.idl\
+ URLTransformer.idl\
+ XArchiver.idl\
+ XCancellable.idl\
+ XCancelManager.idl\
+ XChainable.idl\
+ XChangesBatch.idl \
+ XChangesListener.idl \
+ XChangesNotifier.idl \
+ XChangesSet.idl \
+ XCloneable.idl\
+ XCloseable.idl\
+ XCloseBroadcaster.idl\
+ XCloseListener.idl\
+ XFlushable.idl\
+ XFlushListener.idl\
+ XImportable.idl\
+ XIndent.idl\
+ XLinkUpdate.idl\
+ XLocalizedAliases.idl\
+ XMergeable.idl\
+ XModeChangeBroadcaster.idl\
+ XModeChangeListener.idl\
+ XModeChangeApproveListener.idl\
+ XModeSelector.idl\
+ XModifiable.idl\
+ XModifiable2.idl\
+ XModifyBroadcaster.idl\
+ XBroadcaster.idl\
+ XModifyListener.idl\
+ XNumberFormatPreviewer.idl\
+ XNumberFormats.idl\
+ XNumberFormatsSupplier.idl\
+ XNumberFormatter.idl\
+ XNumberFormatTypes.idl\
+ XPropertyReplace.idl\
+ XProtectable.idl\
+ XRefreshable.idl\
+ XRefreshListener.idl\
+ XReplaceable.idl\
+ XReplaceDescriptor.idl\
+ XSearchable.idl\
+ XSearchDescriptor.idl\
+ XSimpleErrorHandler.idl\
+ XSortable.idl\
+ XStringAbbreviation.idl\
+ XStringWidth.idl\
+ XStringMapping.idl\
+ XStringEscape.idl\
+ XTextSearch.idl\
+ XUpdatable.idl\
+ XURLTransformer.idl\
+ XUniqueIDFactory.idl\
+ VetoException.idl\
+ DataEditorEventType.idl\
+ DataEditorEvent.idl\
+ XDataEditorListener.idl\
+ XDataEditor.idl\
+ MalformedNumberFormatException.idl\
+ NotNumericException.idl\
+ XAtomServer.idl\
+ AtomClassRequest.idl\
+ AtomDescription.idl\
+ XStringSubstitution.idl\
+ PathSettings.idl\
+ PathSubstitution.idl\
+ XTimeStamped.idl\
+ OfficeInstallationDirectories.idl\
+ XOfficeInstallationDirectories.idl\
+ RevisionTag.idl\
+ UriAbbreviation.idl\
+ XJobManager.idl\
+ JobManager.idl\
+
+# ------------------------------------------------------------------
+
+.INCLUDE : target.mk
+.INCLUDE : $(PRJ)$/util$/target.pmk