diff options
author | Jan Holesovsky <kendy@suse.cz> | 2011-03-18 15:58:02 +0100 |
---|---|---|
committer | Jan Holesovsky <kendy@suse.cz> | 2011-03-18 15:58:02 +0100 |
commit | 980b7de55c897cb38f5706164a053f38c1b35d88 (patch) | |
tree | 34b80af4ad8b97fc5c31768be1073d91dc659c46 /offapi/com | |
parent | 2475c0b62d65f9db542d4fd0a0792795a39185a2 (diff) | |
parent | c953ef4b46ced010ed3ebd77c4dd11174da60dd1 (diff) |
Merge remote-tracking branch 'origin/integration/dev300_m101'
Conflicts:
bridges/source/remote/urp/urp_environment.cxx
bridges/source/remote/urp/urp_propertyobject.cxx
bridges/source/remote/urp/urp_reader.cxx
remotebridges/source/factory/bridgefactory.cxx
stoc/source/corereflection/crefl.cxx
stoc/source/javavm/javavm.cxx
stoc/source/simpleregistry/simpleregistry.cxx
Diffstat (limited to 'offapi/com')
134 files changed, 4278 insertions, 1525 deletions
diff --git a/offapi/com/sun/star/awt/AnimatedImagesControl.idl b/offapi/com/sun/star/awt/AnimatedImagesControl.idl new file mode 100755 index 000000000..90f8b3a35 --- /dev/null +++ b/offapi/com/sun/star/awt/AnimatedImagesControl.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_awt_AnimatedImagesControl_idl__ +#define __com_sun_star_awt_AnimatedImagesControl_idl__ + +#include <com/sun/star/awt/UnoControl.idl> + +//====================================================================================================================== + +module com { module sun { module star { module awt { + +interface XAnimation; + +//====================================================================================================================== + +/** is the default control used for an <type>AnimatedImagesControlModel</type>, displayed a series of + images. + + @since OOo 3.4 + */ +service AnimatedImagesControl +{ + service com::sun::star::awt::UnoControl; + + interface XAnimation; +}; + +//====================================================================================================================== + +}; }; }; }; + +//====================================================================================================================== + +#endif diff --git a/offapi/com/sun/star/awt/AnimatedImagesControlModel.idl b/offapi/com/sun/star/awt/AnimatedImagesControlModel.idl new file mode 100755 index 000000000..2bc126077 --- /dev/null +++ b/offapi/com/sun/star/awt/AnimatedImagesControlModel.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_awt_AnimatedImagesControlModel_idl__ +#define __com_sun_star_awt_AnimatedImagesControlModel_idl__ + +#include <com/sun/star/awt/UnoControlModel.idl> + +//====================================================================================================================== + +module com { module sun { module star { module awt { + +interface XAnimatedImages; + +//====================================================================================================================== + +/** describes the model for a control displaying a series of images + + @since OOo 3.4 + */ +service AnimatedImagesControlModel +{ + service com::sun::star::awt::UnoControlModel; + + interface XAnimatedImages; +}; + +//====================================================================================================================== + +}; }; }; }; + +//====================================================================================================================== + +#endif diff --git a/offapi/com/sun/star/awt/SpinningProgressControlModel.idl b/offapi/com/sun/star/awt/SpinningProgressControlModel.idl new file mode 100755 index 000000000..a75417d41 --- /dev/null +++ b/offapi/com/sun/star/awt/SpinningProgressControlModel.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_awt_SpinningProgressControlModel_idl__ +#define __com_sun_star_awt_SpinningProgressControlModel_idl__ + +#include <com/sun/star/awt/AnimatedImagesControlModel.idl> + +//====================================================================================================================== + +module com { module sun { module star { module awt { + +//====================================================================================================================== + +/** is a specialization of the <type>AnimatedImagesControlModel</type> which provides standard image sets + for displaying a non-procentual progress. + + <p>Three image sets are provided, of size 16x16, 32x32, and 64x64 pixels.</p> + */ +service SpinningProgressControlModel +{ + service AnimatedImagesControlModel; +}; + +//====================================================================================================================== + +}; }; }; }; + +//====================================================================================================================== + +#endif diff --git a/offapi/com/sun/star/awt/UnoControlDialog.idl b/offapi/com/sun/star/awt/UnoControlDialog.idl index e7f08714e..c3b0b1795 100644 --- a/offapi/com/sun/star/awt/UnoControlDialog.idl +++ b/offapi/com/sun/star/awt/UnoControlDialog.idl @@ -35,8 +35,8 @@ #include <com/sun/star/awt/XTopWindow.idl> #endif -#ifndef __com_sun_star_awt_XDialog_idl__ -#include <com/sun/star/awt/XDialog.idl> +#ifndef __com_sun_star_awt_XDialog2_idl__ +#include <com/sun/star/awt/XDialog2.idl> #endif @@ -54,7 +54,7 @@ published service UnoControlDialog interface com::sun::star::awt::XTopWindow; - interface com::sun::star::awt::XDialog; + interface com::sun::star::awt::XDialog2; }; diff --git a/offapi/com/sun/star/awt/UnoControlDialogModelProvider.idl b/offapi/com/sun/star/awt/UnoControlDialogModelProvider.idl new file mode 100644 index 000000000..6e4f5b9e9 --- /dev/null +++ b/offapi/com/sun/star/awt/UnoControlDialogModelProvider.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_awt_UnoControlDialogModelProvider_idl__ +#define __com_sun_star_awt_UnoControlDialogModelProvider_idl__ + +#include <com/sun/star/container/XNameContainer.idl> +#include <com/sun/star/beans/XPropertySet.idl> +#include <com/sun/star/lang/IllegalArgumentException.idl> + +//============================================================================= + +module com { module sun { module star { module awt { + +//============================================================================= + +/** specifies a service to load a dialog model and allows to access the control models inside + + @since OOo 3.3.0 + */ +service UnoControlDialogModelProvider : com::sun::star::container::XNameContainer +{ + /** Creates a new dialog model + */ + create([in] string URL)raises ( com::sun::star::lang::IllegalArgumentException ); +}; + +//============================================================================= + +}; }; }; }; + +#endif diff --git a/offapi/com/sun/star/awt/UnoControlSimpleAnimation.idl b/offapi/com/sun/star/awt/UnoControlSimpleAnimation.idl index 6c65cd8a4..7e38d5595 100644..100755 --- a/offapi/com/sun/star/awt/UnoControlSimpleAnimation.idl +++ b/offapi/com/sun/star/awt/UnoControlSimpleAnimation.idl @@ -42,17 +42,14 @@ //============================================================================= -/** specifies a simple animation control. - - <p>The model of an <type>UnoControlSimpleAnimation</type> control must support - the <type>UnoControlSimpleAnimationModel</type> service.</p> - +/** @since OOo 2.2 + @deprecated + You should use <type>AnimatedImagesControl</type>. */ published service UnoControlSimpleAnimation { service com::sun::star::awt::UnoControl; - interface com::sun::star::awt::XSimpleAnimation; }; diff --git a/offapi/com/sun/star/awt/UnoControlSimpleAnimationModel.idl b/offapi/com/sun/star/awt/UnoControlSimpleAnimationModel.idl index 902dffb98..8adfca00a 100644..100755 --- a/offapi/com/sun/star/awt/UnoControlSimpleAnimationModel.idl +++ b/offapi/com/sun/star/awt/UnoControlSimpleAnimationModel.idl @@ -38,36 +38,16 @@ //============================================================================= -/** specifies the standard model of an <type>UnoControlSimpleAnimation</type>. - - <p>The simple animation control displays a sequence of images.</p> - - <p> </p> - - @see UnoControlScrollBarModel +/** @since OOo 2.2 + @deprecated + You should use <type>AnimatedImagesControlModel</type>. */ published service UnoControlSimpleAnimationModel { service com::sun::star::awt::UnoControlModel; - - //------------------------------------------------------------------------- - - /** specifies the time in milliseconds between two animation steps. - - <pre>This is the minimum time, the actual value might be longer due to - system load. The default value will be 100 ms.</pre> - */ [property] long StepTime; - - //------------------------------------------------------------------------- - - /** specifies whether the animation will restart again after displaying the last - image. - - <p>The default is FALSE.</p> - */ [property] boolean AutoRepeat; }; diff --git a/offapi/com/sun/star/awt/UnoControlThrobber.idl b/offapi/com/sun/star/awt/UnoControlThrobber.idl index 9d0384ef7..4a41c72b2 100644 --- a/offapi/com/sun/star/awt/UnoControlThrobber.idl +++ b/offapi/com/sun/star/awt/UnoControlThrobber.idl @@ -42,17 +42,14 @@ //============================================================================= -/** specifies a simple animation control. - - <p>The model of an <type>UnoControlThrobber</type> control must support - the <type>UnoControlThrobberModel</type> service.</p> - +/** @since OOo 2.2 + @deprecatd + You should use <type>AnimatedImagesControl</type>. */ published service UnoControlThrobber { service com::sun::star::awt::UnoControl; - interface com::sun::star::awt::XThrobber; }; diff --git a/offapi/com/sun/star/awt/UnoControlThrobberModel.idl b/offapi/com/sun/star/awt/UnoControlThrobberModel.idl index d82c65666..bcbdb068e 100644 --- a/offapi/com/sun/star/awt/UnoControlThrobberModel.idl +++ b/offapi/com/sun/star/awt/UnoControlThrobberModel.idl @@ -38,14 +38,10 @@ //============================================================================= -/** specifies the standard model of an <type>UnoControlThrobber</type>. - - <p>The simple animation control displays a sequence of images.</p> - - <p> </p> - - @see UnoControlScrollBarModel +/** @since OOo 2.2 + @deprecatd + You should use <type>SpinningAnimationControlModel</type>. */ published service UnoControlThrobberModel diff --git a/offapi/com/sun/star/awt/XAnimatedImages.idl b/offapi/com/sun/star/awt/XAnimatedImages.idl new file mode 100755 index 000000000..a03d08c96 --- /dev/null +++ b/offapi/com/sun/star/awt/XAnimatedImages.idl @@ -0,0 +1,176 @@ +/************************************************************************* + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +#ifndef __com_sun_star_awt_XAnimatedImages_idl__ +#define __com_sun_star_awt_XAnimatedImages_idl__ + +#include <com/sun/star/container/XContainerListener.idl> +#include <com/sun/star/lang/IndexOutOfBoundsException.idl> +#include <com/sun/star/container/XContainer.idl> +#include <com/sun/star/lang/IllegalArgumentException.idl> + +//====================================================================================================================== + +module com { module sun { module star { module awt { + +//====================================================================================================================== + +/** allows administrating a set of images, to be displayed as animated seres. + + <p>Components implementing this interface maintain a variable number of image sets. Components displaying + those images will choose the best-fitting image set depending on the available space, and possibly other + restrictions.</p> + + @since OOo 3.4 + */ +interface XAnimatedImages +{ + /** specifies the time in milliseconds between two animation steps. + + <p>This is the minimum time, the actual value might be longer due to + system load. The default value will be 100 ms.</p> + */ + [attribute] long StepTime; + + /** specifies whether the animation should start over with the first image of the image series when the last image + has been played. + + <p>The default value for this attribute is <TRUE/>.</p> + */ + [attribute] boolean AutoRepeat; + + /** controls the way the images are scaled up or down, when the available space is larger or smaller + than what is needed for them. + + <p>Allowed values are those from the <type>ImageScaleMode</type> constants group.</p> + */ + [attribute] short ScaleMode + { + set raises (::com::sun::star::lang::IllegalArgumentException); + }; + + /** returns the number of images sets maintained by the component. + */ + long + getImageSetCount(); + + /** returns the URLs of the image set with the given index + + @param i_index + the index of the set those image URLs are to be retrieved. Must be greater than or equal to <code>0</code>, + and smaller than the value returned by <member>getImageSetCount</member>. + + @throws ::com::sun::star::lang::IndexOutOfBoundsException + if the <code>i_index</code> is not a valid index. + */ + sequence< string > + getImageSet + ( + [in] long i_index + ) + raises + ( + ::com::sun::star::lang::IndexOutOfBoundsException + ); + + /** sets the URLs of the image set with the given index + + @param i_index + the index at which a new image set should be inserted. Must be greater than or equal to <code>0</code>, + and smaller than or equal to the value returned by <member>getImageSetCount</member>. + @param i_imageURLs + the URLs for the images for the given set. Will be resolved using a <type scope="com::sun::star::graphic">GraphicProvider</type>. + + @throws ::com::sun::star::lang::IndexOutOfBoundsException + if the <code>i_index</code> is not a valid index. + */ + void + insertImageSet + ( + [in] long i_index, + [in] sequence< string > i_imageURLs + ) + raises + ( + ::com::sun::star::lang::IndexOutOfBoundsException + ); + + /** replaces the image set given by index with a new one + + @param i_index + the index of the set those image URLs are to be replaced. Must be greater than or equal to <code>0</code>, + and smaller than the value returned by <member>getImageSetCount</member>. + + @param i_imageURLs + the URLs for the images for the given set. Will be resolved using a <type scope="com::sun::star::graphic">GraphicProvider</type>. + + @throws ::com::sun::star::lang::IndexOutOfBoundsException + if the <code>i_index</code> is not a valid index. + */ + void + replaceImageSet + ( + [in] long i_index, + [in] sequence< string > i_imageURLs + ) + raises + ( + ::com::sun::star::lang::IndexOutOfBoundsException + ); + + + /** removes the image set with the given index + + @param i_index + the index of the set to remove. Must be greater than or equal to <code>0</code>, + and smaller than the value returned by <member>getImageSetCount</member>. + + @throws ::com::sun::star::lang::IndexOutOfBoundsException + if the <code>i_index</code> is not a valid index. + */ + void + removeImageSet + ( + [in] long i_index + ) + raises + ( + ::com::sun::star::lang::IndexOutOfBoundsException + ); + + + /** allows other components to observer the insertion, removal, and replacement of image sets + */ + interface ::com::sun::star::container::XContainer; +}; + +//====================================================================================================================== + +}; }; }; }; + +//====================================================================================================================== + +#endif diff --git a/offapi/com/sun/star/awt/XAnimation.idl b/offapi/com/sun/star/awt/XAnimation.idl new file mode 100755 index 000000000..e1e8f6023 --- /dev/null +++ b/offapi/com/sun/star/awt/XAnimation.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_awt_XAnimation_idl__ +#define __com_sun_star_awt_XAnimation_idl__ + +#include <com/sun/star/uno/XInterface.idl> + +//====================================================================================================================== + +module com { module sun { module star { module awt { + +//====================================================================================================================== + +/** allows controlling an animation. + + @since OOo 3.4 + */ +interface XAnimation +{ + /** starts the animation + */ + void startAnimation(); + + /** stops the animation + */ + void stopAnimation(); + + /** determines whether the animation is currently running + */ + boolean isAnimationRunning(); +}; + +//====================================================================================================================== + +}; }; }; }; + +//====================================================================================================================== + +#endif diff --git a/offapi/com/sun/star/awt/XDialog2.idl b/offapi/com/sun/star/awt/XDialog2.idl index 83d4ca85b..594f072fc 100644 --- a/offapi/com/sun/star/awt/XDialog2.idl +++ b/offapi/com/sun/star/awt/XDialog2.idl @@ -16,7 +16,7 @@ module com { module sun { module star { module awt { @since OOo 3.0 */ -interface XDialog2: com::sun::star::awt::XDialog +published interface XDialog2: com::sun::star::awt::XDialog { /** hides the dialog and then causes <member>XDialog::execute</member> to return with the given result value. @@ -25,7 +25,7 @@ interface XDialog2: com::sun::star::awt::XDialog /** sets the help id so that the standard help button action will show the appropriate help page. */ - void setHelpId ( [in] long Id ); + void setHelpId ( [in] string Id ); }; //============================================================================= diff --git a/offapi/com/sun/star/awt/XSimpleAnimation.idl b/offapi/com/sun/star/awt/XSimpleAnimation.idl index 306d7d353..9e172cf8b 100644..100755 --- a/offapi/com/sun/star/awt/XSimpleAnimation.idl +++ b/offapi/com/sun/star/awt/XSimpleAnimation.idl @@ -41,28 +41,15 @@ //============================================================================= -/** Controls the animation control. +/** + @deprecated + You should use <type>XAnimation</type>, <type>AnimatedImagesControl</type>, and <type>AnimatedImagesControlModel</type>. */ published interface XSimpleAnimation: com::sun::star::uno::XInterface { - //------------------------------------------------------------------------- - - /** starts the animation of the control. - */ void start(); - - //------------------------------------------------------------------------- - - /** stops the animation of the control. - */ void stop(); - - //------------------------------------------------------------------------- - - /** The list of images to be displayed. - */ void setImageList( [in] sequence < com::sun::star::graphic::XGraphic > ImageList ); - }; //============================================================================= diff --git a/offapi/com/sun/star/awt/XThrobber.idl b/offapi/com/sun/star/awt/XThrobber.idl index 5d421a36d..424861edb 100644 --- a/offapi/com/sun/star/awt/XThrobber.idl +++ b/offapi/com/sun/star/awt/XThrobber.idl @@ -41,20 +41,13 @@ //============================================================================= -/** Controls the animation control. +/** + @deprecatd + You should use <type>XAnimation</type>, <type>AnimatedImagesControl</type>, and <type>AnimatedImagesControlModel</type>. */ published interface XThrobber: com::sun::star::uno::XInterface { - //------------------------------------------------------------------------- - - /** starts the animation of the control. - */ void start(); - - //------------------------------------------------------------------------- - - /** stops the animation of the control. - */ void stop(); }; diff --git a/offapi/com/sun/star/awt/grid/DefaultGridDataModel.idl b/offapi/com/sun/star/awt/grid/DefaultGridDataModel.idl index c4f866e58..3f62092d2 100644 --- a/offapi/com/sun/star/awt/grid/DefaultGridDataModel.idl +++ b/offapi/com/sun/star/awt/grid/DefaultGridDataModel.idl @@ -27,9 +27,7 @@ #ifndef __com_sun_star_awt_DefaultGridDataModel_idl__ #define __com_sun_star_awt_DefaultGridDataModel_idl__ -#ifndef __com_sun_star_awt_grid_XGridDataModel_idl__ -#include <com/sun/star/awt/grid/XGridDataModel.idl> -#endif +#include <com/sun/star/awt/grid/XMutableGridDataModel.idl> //============================================================================= @@ -39,12 +37,15 @@ /** If you do not want to implement the <type>XGridDataModel</type> yourself, use this service. + <p>The <code>DefaultGridDataModel</code> implementation is a dumb container of tabular data. You can add + and remove rows, modify cell values, and the like.</p> + + <p>The implementation will implicitly increase its column count if you add a row which has more values than + the current column count.</p> + @since OOo 3.3.0 */ -service DefaultGridDataModel -{ - interface com::sun::star::awt::grid::XGridDataModel; -}; +service DefaultGridDataModel : ::com::sun::star::awt::grid::XMutableGridDataModel; //============================================================================= diff --git a/offapi/com/sun/star/awt/grid/GridColumnEvent.idl b/offapi/com/sun/star/awt/grid/GridColumnEvent.idl index 3ee38f50e..e86e296d6 100644 --- a/offapi/com/sun/star/awt/grid/GridColumnEvent.idl +++ b/offapi/com/sun/star/awt/grid/GridColumnEvent.idl @@ -42,17 +42,17 @@ module com { module sun { module star { module awt { module grid { */ struct GridColumnEvent: com::sun::star::lang::EventObject { - /** Contains the property name of the changed value **/ - string valueName; + /** Contains the name of the attributes whose value changed. **/ + string AttributeName; /** Contains the old value **/ - any oldValue; + any OldValue; /** Contains the new value **/ - any newValue; + any NewValue; /** Contains the index of the changed column**/ - long index; + long ColumnIndex; //------------------------------------------------------------------------- }; diff --git a/offapi/com/sun/star/awt/grid/GridDataEvent.idl b/offapi/com/sun/star/awt/grid/GridDataEvent.idl index 472d0f6f1..3ac05f0ec 100644 --- a/offapi/com/sun/star/awt/grid/GridDataEvent.idl +++ b/offapi/com/sun/star/awt/grid/GridDataEvent.idl @@ -1,7 +1,7 @@ /************************************************************************* * * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * + * * Copyright 2000, 2010 Oracle and/or its affiliates. * * OpenOffice.org - a multi-platform office productivity suite @@ -24,55 +24,54 @@ * for a copy of the LGPLv3 License. * ************************************************************************/ -#ifndef __com_sun_star_awt_grid_GridDataEvent_idl__ -#define __com_sun_star_awt_grid_GridDataEvent_idl__ - -#include <com/sun/star/lang/EventObject.idl> - -//============================================================================= - +#ifndef __com_sun_star_awt_grid_GridDataEvent_idl__ +#define __com_sun_star_awt_grid_GridDataEvent_idl__ + +#include <com/sun/star/lang/EventObject.idl> + +//============================================================================= + module com { module sun { module star { module awt { module grid { - -//============================================================================= - -/** An event used by a <type>XGridDataModel</type> to notify changes in the data - model to the <type>XGridControl</type>. - You usually need to fill this event only if you implement the <type>XGridDataModel</type> - yourself. - - @see XGridDataModel - @see XGridControl + +//============================================================================= + +/** used to notify changes in the data represented by an <type>XMutableGridDataModel</type>. + + <p>Effectively, a <code>GridDataEvent</code> denotes a continuous two-dimensional cell range + within a grid's data model, which is affected by a certain change.</p> + + @see XMutableGridDataModel @see XGridDataListener @since OOo 3.3.0 - */ + */ struct GridDataEvent: com::sun::star::lang::EventObject -{ - //------------------------------------------------------------------------- - - /** Contains the property name of the changed value **/ - string valueName; - - /** Contains the old value **/ - any oldValue; - - /** Contains the new value **/ - any newValue; - - /** Contains the index of the changed row**/ - long index; - - /** Contains the header name of the changed row**/ - string headerName; - - /** Contains the changed row**/ - sequence<any> rowData; - - -}; - -//============================================================================= - -}; }; }; }; }; - -#endif +{ + /** denotes the first column affected by a change. + + <p>If <code>FirstColumn</code> is -1, the listener should assume that all rows of a grid's data model + are affected.</p> + */ + long FirstColumn; + + /** denotes the last column affected by a change + */ + long LastColumn; + + /** denotes the first row affected by a change. + + <p>If <code>FirstRow</code> is -1, the listener should assume that all rows of a grid's data model + are affected.</p> + */ + long FirstRow; + + /** denotes the last row affected by a change + */ + long LastRow; +}; + +//============================================================================= + +}; }; }; }; }; + +#endif diff --git a/offapi/com/sun/star/awt/grid/SortableGridDataModel.idl b/offapi/com/sun/star/awt/grid/SortableGridDataModel.idl new file mode 100755 index 000000000..2b7aca1ca --- /dev/null +++ b/offapi/com/sun/star/awt/grid/SortableGridDataModel.idl @@ -0,0 +1,102 @@ +/************************************************************************* + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +#ifndef __com_sun_star_awt_grid_SortableGridDataModel_idl__ +#define __com_sun_star_awt_grid_SortableGridDataModel_idl__ + +#include <com/sun/star/i18n/XCollator.idl> +#include <com/sun/star/lang/IllegalArgumentException.idl> + +//================================================================================================================== + +module com { module sun { module star { module awt { module grid { + +interface XSortableMutableGridDataModel; +interface XMutableGridDataModel; + +//================================================================================================================== + +/** provides a default implementation of a <type>XSortableGridData</type>. + + <p>This service must be created with a secondary grid data model, which all actual data requests are delegated to. + But before providing this data to the service's own clients, it is sorted, according to the sort order defined + via the <code>XSortableGridData</code> interface.</p> + + <p>The service implementation is able to compare the default scalar types, plus strings.</p> + + <p>For determining the data type of a column which the data should be sorted by, the first non-<VOID/> data encountered + in this column is taken into account. Further read requests to this column will assume that all non-<VOID/> data is of + the same type.</p> + + <p>Consequently, you cannot use this service with data sets containing heterogenous data in a given column.</p> + + <p>All requests made via the <type>XMutableGridDataModel</type> are delegated to the <code>XMutableGridDataModel</code> + instance passed in the service constructor.</p> + + <p>Note that changing the data might result in the sort order being destroyed. If you want to ensure + that the data represented by the model is still sorted after your modifications, you should call + <member>XSortableGridData::sortByColumn</member>, again.</p> + */ +service SortableGridDataModel : XSortableMutableGridDataModel +{ + /** creates a new instance of the <code>SortableGridDataModel</code> + + <p>For string comparison, a default <type scope="::com::sun::star::i18n">Collator</type>, based on the system's + locale, will be used.</p> + + @param DelegatorModel + the data model to which read requests are delegated. + @throws ::com::sun::star::lang::IllegalArgumentException + if the given <code>DelegatorModel</code> is <NULL/> + */ + create( + [in] XMutableGridDataModel DelegatorModel + ) + raises ( ::com::sun::star::lang::IllegalArgumentException ); + + /** creates a new instance of the ScortableDefaultGridDataModel, passing a collator to be used for string comparison. + + @param DelegatorModel + is the data model to which read requests are delegated + @param Collator + is the collator to be used for string comparison + @throws ::com::sun::star::lang::IllegalArgumentException + if the given <code>DelegatorModel</code> is <NULL/> + */ + createWithCollator( + [in] XMutableGridDataModel DelegatorModel, + [in] ::com::sun::star::i18n::XCollator Collator + ) + raises ( ::com::sun::star::lang::IllegalArgumentException ); +}; + +//================================================================================================================== + +}; }; }; }; }; + +//================================================================================================================== + +#endif diff --git a/offapi/com/sun/star/awt/grid/UnoControlGridModel.idl b/offapi/com/sun/star/awt/grid/UnoControlGridModel.idl index ce2c8d5eb..c2478508e 100644 --- a/offapi/com/sun/star/awt/grid/UnoControlGridModel.idl +++ b/offapi/com/sun/star/awt/grid/UnoControlGridModel.idl @@ -28,19 +28,11 @@ #define __com_sun_star_awt_grid_UnoControlGridModel_idl__ #include <com/sun/star/awt/grid/XGridColumnModel.idl> - #include <com/sun/star/awt/grid/XGridDataModel.idl> - -#include <com/sun/star/awt/grid/ScrollBarMode.idl> - #include <com/sun/star/awt/UnoControlModel.idl> - #include <com/sun/star/view/SelectionType.idl> - #include <com/sun/star/awt/FontDescriptor.idl> - #include <com/sun/star/style/VerticalAlignment.idl> - #include <com/sun/star/util/Color.idl> //============================================================================= @@ -49,7 +41,7 @@ module com { module sun { module star { module awt { module grid { //============================================================================= -/** specifies the standard model of a <type>UnoControlGridModel</type>. +/** specifies the standard model of a <type>UnoControlGrid</type> control. @since OOo 3.3.0 */ @@ -59,19 +51,51 @@ service UnoControlGridModel service com::sun::star::awt::UnoControlModel; /** Specifies whether the grid control should display a special header column. - <p>The default value is <FALSE/></p> + + <p>The default value is <FALSE/></p> */ [property] boolean ShowRowHeader; + /** specifies the width of the row header column, if applicable. + + <p>The width is specified in application font units - see <type scope="com::sun::star::util">MeasureUnit</type>.</p> + + <p>The value given here is ignored if <member>ShowRowHeader</member> is <FALSE/>.</p> + */ + [property] long RowHeaderWidth; + /** Specifies whether the grid control should display a title row. - <p>The default value is <TRUE/></p> + + <p>The default value is <TRUE/></p> */ [property] boolean ShowColumnHeader; + /** specifies the height of the column header row, if applicable. + + <p>The height is specified in application font units - see <type scope="com::sun::star::util">MeasureUnit</type>.</p> + + <p>The value given here is ignored if <member>ShowColumnHeader</member> is <FALSE/>.</p> + + <p>If the property is <void/>, the grid control shall automatically determine a height which conveniently allows, + according to the used font, to display one line of text.</p> + */ + [property, maybevoid] long ColumnHeaderHeight; + + /** Specifies the height of rows in the grid control. + + <p>The height is specified in application font units - see <type scope="com::sun::star::util">MeasureUnit</type>.</p> + */ + [property, maybevoid] long RowHeight; + /** Specifies the <type>XGridColumnModel</type> that is providing the column structure. <p>You can implement your own instance of <type>XGridColumnModel</type> or use the <type>DefaultGridColumnModel</type>. + + <p>The column model is in the ownership of the grid model: When you set a new column model, or dispose + the grid model, then the (old) column model is disposed, too.</p> + + <p>The default for this property is an empty instance of the <type>DefaultGridColumnModel</type>.</p> */ [property] XGridColumnModel ColumnModel; @@ -79,8 +103,13 @@ service UnoControlGridModel <p>You can implement your own instance of <type>XGridDataModel</type> or use the <type>DefaultGridDataModel</type>. + + <p>The data model is in the ownership of the grid model: When you set a new data model, or dispose + the grid model, then the (old) data model is disposed, too.</p> + + <p>The default for this property is an empty instance of the <type>DefaultGridDataModel</type>.</p> */ - [property] XGridDataModel DataModel; + [property] XGridDataModel GridDataModel; /** Specifies the vertical scrollbar mode. <p>The default value is <FALSE/></p> @@ -101,27 +130,49 @@ service UnoControlGridModel */ [property] ::com::sun::star::view::SelectionType SelectionModel; - /** Specifies the background color of rows. If color for even rows is set, then specifies - the color of odd rows. Default value is white. + /** controls whether or not to paint horizontal and vertical lines between the grid cells. + + @see LineColor */ - [property] ::com::sun::star::util::Color RowBackgroundColor; + [property] boolean UseGridLines; - /** Specifies the background color of even rows. Default value is white. + /** specifies the color to be used when drawing lines between cells + + <p>If this property has a value of <VOID/>, the grid control renderer will use some default color, + depending on the system's style settings.</p> + + @see UseGridLines */ - [property] ::com::sun::star::util::Color EvenRowBackgroundColor; + [property, maybevoid] ::com::sun::star::util::Color GridLineColor; + + /** specifies the color to be used when drawing the background of row or column headers - /** Specifies the background color of header. Default value is white. + <p>If this property has a value of <VOID/>, the grid control renderer will use some default color, + depending on the system's style settings.</p> */ - [property] ::com::sun::star::util::Color HeaderBackgroundColor; + [property, maybevoid] ::com::sun::star::util::Color HeaderBackgroundColor; - /** Specifies the text color. Default value is black. + /** specifies the color to be used when drawing the text within row or column headers + + <p>If this property has a value of <VOID/>, the grid control renderer will use some default color, + depending on the system's style settings.</p> */ - [property] ::com::sun::star::util::Color TextColor; + [property, maybevoid] ::com::sun::star::util::Color HeaderTextColor; + + /** specifies the colors to be used as background for data rows. - /** Specifies the line color. Default value is white. + <p>If this sequence is non-empty, the data rows will be rendered with alternating background colors: Assuming + the sequence has <code>n</code> elements, each row will use the background color as specified by its number's + remainder modulo <code>n</code>.</p> + + <p>If this sequence is empty, all rows will use the same background color as the control as whole.</p> + + <p>If this property does not exist at a particular implementation, or is <VOID/>, rows will be painted + in alternating background colors, every second row having a background color derived from the control's + selection color.</p> */ - [property] ::com::sun::star::util::Color LineColor; - + [property, maybevoid] sequence< ::com::sun::star::util::Color > RowBackgroundColors; + /** specifies the vertical alignment of the content in the control. <pre> @@ -136,6 +187,20 @@ service UnoControlGridModel */ [property] com::sun::star::awt::FontDescriptor FontDescriptor; + /** specifies the color to be used when drawing cell texts + + <p>If this property has a value of <VOID/>, the grid control renderer will use some default color, + depending on the system's style settings.</p> + */ + [property, maybevoid] ::com::sun::star::util::Color TextColor; + + /** specifies the color to be used when drawing text lines (underlining and strikethrough) + + <p>If this property has a value of <VOID/>, the grid control renderer will use some default color, + depending on the system's style settings.</p> + */ + [property, maybevoid] com::sun::star::util::Color TextLineColor; + /** specifies the <type scope="com::sun::star::text">FontEmphasis</type> value of the text in the control. */ diff --git a/offapi/com/sun/star/awt/grid/XGridColumn.idl b/offapi/com/sun/star/awt/grid/XGridColumn.idl index 328b9b6ed..dd89dc084 100644 --- a/offapi/com/sun/star/awt/grid/XGridColumn.idl +++ b/offapi/com/sun/star/awt/grid/XGridColumn.idl @@ -27,12 +27,11 @@ #ifndef __com_sun_star_awt_grid_XGridColumn_idl__ #define __com_sun_star_awt_grid_XGridColumn_idl__ -#ifndef __com_sun_star_uno_XInterface_idl__ -#include <com/sun/star/uno/XInterface.idl> -#endif +#include <com/sun/star/lang/XComponent.idl> #include <com/sun/star/style/HorizontalAlignment.idl> +#include <com/sun/star/lang/IllegalArgumentException.idl> #include <com/sun/star/awt/grid/XGridColumnListener.idl> - +#include <com/sun/star/util/XCloneable.idl> //============================================================================= @@ -45,42 +44,96 @@ module com { module sun { module star { module awt { module grid { */ interface XGridColumn { - /** Specifies the identifier of the column.**/ + /** implements life time control for the component + */ + interface ::com::sun::star::lang::XComponent; + + /** allows cloning the complete grid column + */ + interface ::com::sun::star::util::XCloneable; + + /** specifies an identifier of the column + + <p>This identifier will not be evaluated by the grid control, or its model. It is merely for clients + to identify particular columns.</p> + */ [attribute] any Identifier; - /** Specifies the default column width. **/ + /** specifies the current width of the column. + */ [attribute] long ColumnWidth; - - /** Specifies the preferred column width. **/ - [attribute] long PreferredWidth; - /** Specifies the min column width. **/ + /** specifies the minimal width the column can have. + */ [attribute] long MinWidth; - /** Specifies the max column width. **/ + /** specifies the maximal width the column can have. + */ [attribute] long MaxWidth; - - /** Specifies whether column has fixed size or not. **/ + + /** controls whether or not the column's width is fixed or not. + + <p>If this is <TRUE/>, the user can interactively change the column's width. Also, the column is subject to + auto-resizing, if its <member>Flexibility</member> attribute is greater <code>0</code>.</p> + */ [attribute] boolean Resizeable; - - /** Specifies the horizontal alignment of the content in the control. - <pre> - LEFT - CENTER - RIGHT - </pre> + /** specifies the flexibility of the column when it is automatically resized due to the grid control as a whole + being resized. + + <p>Specify <code>0</code> here if you do not want the column to be resized automatically.</p> + + <p>If a column has a flexibility greater than 0, it is set in relationship to the flexibility of all + other such columns, and the respective widths of the columns are changed in the same relationship.</p> + + <p>Note that a column's flexibility is ignored if its <member>Resizeable</member> attribute is + <FALSE/>.</p> + + <p>A column's flexibility cannot be negative, attempts to set a negative value will raise an exception.</p> + */ + [attribute] long Flexibility + { + set raises ( ::com::sun::star::lang::IllegalArgumentException ); + }; + + /** Specifies the horizontal alignment of the content in the control. */ [attribute] ::com::sun::star::style::HorizontalAlignment HorizontalAlign; /** A title is displayed in the column header row if <method>UnoControlGridModel::ShowRowHeader</method> is set to <true/>**/ [attribute] string Title; + /** is the help text associated with the column. + + <p>A grid control will usually display a column's help text as tooltip.</p> + */ + [attribute] string HelpText; + + /** denotes the index of the column within the grid column model it belongs to + + <p>If the column is not yet part of a column model, <code>Index</code> is -1.</p> + */ + [attribute, readonly] long Index; + + /** denotes the index of the data column which should be used to fetch this grid column's data + + <p>A grid control has a column model and a data model, both containing a possibly different number of columns. + The <code>DataColumnIndex</code> attribute defines the index of the column within the data model, which should + be used to retrieve actual data.</p> + + <p>Using this, you can do runtime changes to the column model, i.e. insertion and removal of columns, without + necessarily needing to adjust the data model, too.</p> + + <p>If <code>DataColumnIndex</code> is negative, the it will be ignored, then the column's index within its + column model, as determined by the <member>Index</member> attribute, will be used.</p> + */ + [attribute] long DataColumnIndex; + /** Adds a listener for the <type>GridColumnEvent</type> posted after the grid changes. @param Listener the listener to add. */ - [oneway] void addColumnListener( [in] XGridColumnListener listener); + void addGridColumnListener( [in] XGridColumnListener listener); //------------------------------------------------------------------------- @@ -88,20 +141,7 @@ interface XGridColumn @param Listener the listener to remove. */ - [oneway] void removeColumnListener( [in] XGridColumnListener listener); - - /**Updates changed column widths, when column widths are being resized. - @param name - can be PrefWidth or ColWidth, depending on which was changed - @param width - the new column width - */ - void updateColumn( [in] string name, [in] long width); - /**Sets column index - @param index - index, which is the index of the column in the column array of the column model - */ - void setIndex( [in] long index ); + void removeGridColumnListener( [in] XGridColumnListener listener); }; //============================================================================= diff --git a/offapi/com/sun/star/awt/grid/XGridColumnListener.idl b/offapi/com/sun/star/awt/grid/XGridColumnListener.idl index c77943a3f..74a4e893d 100644 --- a/offapi/com/sun/star/awt/grid/XGridColumnListener.idl +++ b/offapi/com/sun/star/awt/grid/XGridColumnListener.idl @@ -27,13 +27,8 @@ #ifndef __com_sun_star_awt_grid_XGridColumnListener_idl__ #define __com_sun_star_awt_grid_XGridColumnListener_idl__ -#ifndef __com_sun_star_uno_XInterface_idl__ -#include <com/sun/star/uno/XInterface.idl> -#endif - -#ifndef __com_sun_star_awt_grid_GridColumnEvent_idl__ #include <com/sun/star/awt/grid/GridColumnEvent.idl> -#endif +#include <com/sun/star/lang/XEventListener.idl> //============================================================================= @@ -44,25 +39,11 @@ module com { module sun { module star { module awt { module grid { /** An instance of this interface is used by the <type>XGridColumnModel</type> to get notifications about column model changes. - <p>Usually you must not implement this interface yourself, but you must notify it correctly if - you implement the <type>XGridColumnModel</type> yourself</p>. - @since OOo 3.3.0 */ -interface XGridColumnListener +interface XGridColumnListener : ::com::sun::star::lang::XEventListener { - // /** - // Invoked after a column was added to the column model. - //*/ - //void columnAdded( [in] GridColumnEvent event ); - // - // /** - // Invoked after a column was removed from the column model. - //*/ - //void columnRemoved( [in] GridColumnEvent event ); - - /** - Invoked after a column was modified. + /** Invoked after a column was modified. */ void columnChanged( [in] GridColumnEvent event ); }; diff --git a/offapi/com/sun/star/awt/grid/XGridColumnModel.idl b/offapi/com/sun/star/awt/grid/XGridColumnModel.idl index b26dc2ef2..58d737169 100644 --- a/offapi/com/sun/star/awt/grid/XGridColumnModel.idl +++ b/offapi/com/sun/star/awt/grid/XGridColumnModel.idl @@ -28,11 +28,14 @@ #define __com_sun_star_awt_grid_XGridColumnModel_idl__ #include <com/sun/star/uno/XInterface.idl> +#include <com/sun/star/lang/XComponent.idl> +#include <com/sun/star/util/XCloneable.idl> #include <com/sun/star/awt/grid/XGridColumn.idl> +#include <com/sun/star/container/XContainer.idl> +#include <com/sun/star/lang/IndexOutOfBoundsException.idl> +#include <com/sun/star/lang/IllegalArgumentException.idl> -#include <com/sun/star/awt/grid/XGridColumnListener.idl> - //============================================================================= module com { module sun { module star { module awt { module grid { @@ -48,37 +51,64 @@ module com { module sun { module star { module awt { module grid { */ interface XGridColumnModel { - ///** Specifies whether column selection is allowed - //*/ - //[attribute] boolean ColumnSelectionAllowed; + /** implements life time control for the component + */ + interface ::com::sun::star::lang::XComponent; + + /** allows to register listeners to be notified when columns are inserted or removed + */ + interface ::com::sun::star::container::XContainer; - /**Specifies the height of column header. + /** allows cloning the complete column model */ - [attribute] long ColumnHeaderHeight; + interface ::com::sun::star::util::XCloneable; /** Returns the number of columns. + @returns the number of columns. */ long getColumnCount(); + /** creates a new column for use with the column model. + + <p>The newly created column is not yet inserted into the column container, you need to call <member>addColumn</member> + after you initialized the column object.</p> + */ + XGridColumn + createColumn(); + /** Adds a column to the model. + + <p>You should use the <member>createColumn</member> member to create a new column. This gives + implementations of the <code>XGridColumnModel</code> interface the possibility to provide own column + implementations which extend the basic <type>GridColumn</type> type.</p> + + <p>As soon as the column has been inserted into the model, the model takes ownership of it. This means when the + column is removed, or when the column model is disposed, the grid column is disposed as well.</p> + @param column the column to add to the model. - @returns - the index of new created column. + the index of new created column. + + @throws ::com::sun::star::lang::IllegalArgumentException + if the given column is not a valid element for the column container, or if it is <NULL/>. */ - long addColumn( [in] XGridColumn column ); + long addColumn( [in] XGridColumn column ) + raises ( ::com::sun::star::lang::IllegalArgumentException ); - /* - long getSelectedCount(); - - sequence<XGridColumn> getSelectedColumns(); - - sequence<long> getSelectedIndex(); - + /** removes a column from the model + + <p>The column object will be disposed upon removal.</p> + + @param ColumnIndex + denotes the index of the column to remove + @throws ::com::sun::star::lang::IndexOutOfBoundsException + if <code>ColumnIndex</code> does not denote a valid column index. */ + void removeColumn( [in] long ColumnIndex ) + raises ( ::com::sun::star::lang::IndexOutOfBoundsException ); /** Returns all columns of the model. @returns @@ -92,24 +122,20 @@ interface XGridColumnModel @returns the requested column. */ - XGridColumn getColumn( [in] long index); + XGridColumn getColumn( [in] long index) + raises ( ::com::sun::star::lang::IndexOutOfBoundsException ); + + /** Fills the model with the given number of default columns + + <p>Existing columns will be removed before adding new columns. Listeners at the column model will + be notified one <member scope="com::sun::star::container">XContainerListener::elementRemoved</member> event + for each removed column, and one <member scope="com::sun::star::container">XContainerListener::elementInserted</member> + event for each insertion.</p> - /** Sets default columns to the column model. @param elements the number of default columns that should be set. */ void setDefaultColumns([in] long elements); - - /**Creates new XGridColumn with the settings of other column. To be used if the columns which are added to - the column model have the same settings. - @param column - the column, which is already created - */ - XGridColumn copyColumn( [in] XGridColumn column ); - - /* - long getTotalColumnWidth(); - */ }; //============================================================================= diff --git a/offapi/com/sun/star/awt/grid/XGridControl.idl b/offapi/com/sun/star/awt/grid/XGridControl.idl index 0ea37504a..d9a1509b2 100644 --- a/offapi/com/sun/star/awt/grid/XGridControl.idl +++ b/offapi/com/sun/star/awt/grid/XGridControl.idl @@ -28,9 +28,6 @@ #define __com_sun_star_awt_grid_XGridControl_idl__ #include <com/sun/star/awt/grid/XGridSelection.idl> -#include <com/sun/star/awt/grid/XGridColumnModel.idl> -#include <com/sun/star/awt/grid/XGridDataModel.idl> -#include <com/sun/star/awt/XMouseListener.idl> //============================================================================= @@ -44,23 +41,43 @@ module com { module sun { module star { module awt { module grid { @since OOo 3.3.0 */ -interface XGridControl: XGridSelection +interface XGridControl : XGridSelection { - /** Converting + /** retrieves the column which a given point belongs to + + @param X + the ordinate of the point, in pixel coordinates. + @param Y + the abscissa of the point, in pixel coordinates. + @return + the index of the column which the point lies in, or -1 if no column is under the given point. */ + long getColumnAtPoint( [in] long X, [in] long Y ); - long getItemIndexAtPoint( [in] long x, [in] long y); + /** retrieves the row which a given point belongs to - /** Sets tooltip for row - @param textForTooltip - text, which will be shown as tooltip. - If only cell content should be displayed, leave sequence empty. - @param columnsForTooltip - column numbers, which define the cell content that should be shown in the tooltip. - If only text should be shown, leave this sequence empty. + @param X + the ordinate of the point, in pixel coordinates. + @param Y + the abscissa of the point, in pixel coordinates. + @return + the index of the row which the point lies in, or -1 if no row is under the given point. */ - void setToolTip( [in] sequence< string > textForTooltip, [in] sequence< long > columnsForTooltip); - + long getRowAtPoint( [in] long X, [in] long Y ); + + /** returns the column index of the currently active cell + + <p>If the grid control's does not contain any cells (which happens if the grid column model does not contain any + columns, or if grid data model does not contain any rows), then <code>-1</code> is returned.</p> + */ + long getCurrentColumn(); + + /** returns the row index of the currently active cell + + <p>If the grid control's does not contain any cells (which happens if the grid column model does not contain any + columns, or if grid data model does not contain any rows), then <code>-1</code> is returned.</p> + */ + long getCurrentRow(); }; //============================================================================= diff --git a/offapi/com/sun/star/awt/grid/XGridDataListener.idl b/offapi/com/sun/star/awt/grid/XGridDataListener.idl index 534c3d788..a03a60c27 100644 --- a/offapi/com/sun/star/awt/grid/XGridDataListener.idl +++ b/offapi/com/sun/star/awt/grid/XGridDataListener.idl @@ -52,20 +52,21 @@ module com { module sun { module star { module awt { module grid { interface XGridDataListener: com::sun::star::lang::XEventListener { - /** - Invoked after a row was added to the data model. + /** is called when one or more rows of data have been inserted into a grid control's data model. */ - void rowAdded( [in] GridDataEvent Event ); + void rowsInserted( [in] GridDataEvent Event ); - /** - Invoked after a row was added to the data model. + /** is called when one or more rows of data have been removed from a grid control's data model. */ - void rowRemoved( [in] GridDataEvent Event ); + void rowsRemoved( [in] GridDataEvent Event ); - /** - Invoked after a row was added to the data model. + /** is called when existing data in a grid control's data model has been modified. */ void dataChanged( [in] GridDataEvent Event ); + + /** is called when the title of one or more rows changed. + */ + void rowHeadingChanged( [in] GridDataEvent Event ); }; //============================================================================= diff --git a/offapi/com/sun/star/awt/grid/XGridDataModel.idl b/offapi/com/sun/star/awt/grid/XGridDataModel.idl index 7489e4960..9b9ec840d 100644 --- a/offapi/com/sun/star/awt/grid/XGridDataModel.idl +++ b/offapi/com/sun/star/awt/grid/XGridDataModel.idl @@ -30,8 +30,9 @@ #include <com/sun/star/lang/XComponent.idl> +#include <com/sun/star/util/XCloneable.idl> #include <com/sun/star/awt/grid/XGridDataListener.idl> - +#include <com/sun/star/lang/IndexOutOfBoundsException.idl> //============================================================================= @@ -45,86 +46,57 @@ module com { module sun { module star { module awt { module grid { @since OOo 3.3.0 */ -interface XGridDataModel: ::com::sun::star::lang::XComponent +interface XGridDataModel { - /** Specifies the height of each row. + /** implements life time control for the component */ - [attribute] long RowHeight; + interface ::com::sun::star::lang::XComponent; - /** Contains the row header. + /** allows cloning the complete column model */ - [attribute] sequence< string > RowHeaders; + interface ::com::sun::star::util::XCloneable; - /** Returns the content of each row. + /** denotes the number of rows for which the model can provide data */ - [attribute,readonly] sequence< sequence< any > > Data; + [attribute, readonly] long RowCount; - /**Specifies the width of row header. + /** denotes the number of columns for which the model can provide data */ - [attribute] long RowHeaderWidth; + [attribute, readonly] long ColumnCount; + + /** retrieves the data for a given cell - /** Returns the number of rows in in the model. - @returns - the number of rows. + @throws ::com::sun::star::lang::IndexOutOfBoundsException + if the column or row index do not denote a valid cell position. */ - long getRowCount(); + any getCellData( [in] long Column, [in] long Row ) + raises ( ::com::sun::star::lang::IndexOutOfBoundsException ); - /** Adds a row to the model. + /** retrieves the tool tip to be displayed when the mouse hovers over a given cell - @param headername - specifies the name of the row. - @param data - the content of the row. - */ - void addRow( [in] string headername, [in] sequence< any > data ); + <p>At the moment, only string tool tips are supported.</p> - /** Removes a row from the model. + <p>If <VOID/> is returned here, the cell's content will be displayed as tip, but only if it does + not fit into the cell.</p> - @param index - the index of the row that should be removed. + @throws ::com::sun::star::lang::IndexOutOfBoundsException + if the column or row index do not denote a valid cell position. */ - void removeRow( [in] long index); + any getCellToolTip( [in] long Column, [in] long Row ) + raises ( ::com::sun::star::lang::IndexOutOfBoundsException ); - /** Removes all rows from the model. - */ - void removeAll(); - - /**Updates the content of a given cell. - @param row - the row index - @param column - the column index - @param value - the new value of the cell. - */ - void updateCell([in] long row, [in] long column, [in] any value ); - - /**Updates the content of a given row. - @param row - the row index - @param columns - column indexes of the cells, which should be updated - @param value - the new values of the cells. - */ - void updateRow([in] long row, [in] sequence< long > columns, [in] sequence< any > values); + /** retrieves the heading of a given row - //------------------------------------------------------------------------- + <p>A grid control will usually paint a row's title in the header column of the respective row.</p> - /** Adds a listener for the <type>GridDataEvent</type> posted after the grid changes. - @param Listener - the listener to add. - */ - [oneway] void addDataListener( [in] XGridDataListener listener); - - //------------------------------------------------------------------------- - - /** Removes a listener previously added with <method>addDataListener()</method>. - @param Listener - the listener to remove. - */ - [oneway] void removeDataListener( [in] XGridDataListener listener); - + <p>At the moment, only strings are supported as row headings.</p> + + @throws ::com::sun::star::lang::IndexOutOfBoundsException + if the given index does not denote a valid row. + */ + any + getRowHeading( [in] long RowIndex ) + raises ( ::com::sun::star::lang::IndexOutOfBoundsException ); }; //============================================================================= diff --git a/offapi/com/sun/star/awt/grid/XGridSelection.idl b/offapi/com/sun/star/awt/grid/XGridSelection.idl index a34534858..febfc6a33 100644 --- a/offapi/com/sun/star/awt/grid/XGridSelection.idl +++ b/offapi/com/sun/star/awt/grid/XGridSelection.idl @@ -41,37 +41,27 @@ module com { module sun { module star { module awt { module grid { */ interface XGridSelection { - /** Returns the lowest index of the selection. - @returns - the lowest index. - */ - long getMinSelectionIndex(); - - /** Returns the highest index of the selection. - @returns - the highest index. - */ - long getMaxSelectionIndex(); - /** Selects all rows. */ - [oneway] void selectAllRows(); + void selectAllRows(); + + /** selects a given row - /** Selects multiple rows. Previous selections will be removed. - @param rangeOfRows - array of rows indexes, which will be selected. + @param RowIndex + denotes the index of the row to select */ - [oneway] void selectRows( [in] sequence< long > rangeOfRows); + void selectRow( [in] long RowIndex ); /** Deselects all selected rows. */ - [oneway] void deselectAllRows(); + void deselectAllRows(); - /** Deselects selected rows. Selected rows, which aren't in the range remain selected. - @param rangeOfRows - array of rows indexes, which will be deselected. + /** removes the selection for a given row + + @param RowIndex + denotes the index of the row to deselect */ - [oneway] void deselectRows( [in] sequence< long > rangeOfRows); + void deselectRow( [in] long RowIndex ); /** Returns the indices of all selected rows. @returns @@ -93,21 +83,11 @@ interface XGridSelection */ boolean isSelectedIndex( [in] long index); - /** Marks a row as selected. - @param index - the index of a row. - */ - [oneway] void selectRow( [in] long index); - - /* - [oneway] void selectColumn( [in] long x); - */ - /** Adds a listener for the <type>GridSelectionEvent</type> posted after the grid changes. @param listener the listener to add. */ - [oneway] void addSelectionListener( [in] XGridSelectionListener listener); + void addSelectionListener( [in] XGridSelectionListener listener); //------------------------------------------------------------------------- @@ -115,7 +95,7 @@ interface XGridSelection @param listener the listener to remove. */ - [oneway] void removeSelectionListener( [in] XGridSelectionListener listener); + void removeSelectionListener( [in] XGridSelectionListener listener); }; diff --git a/offapi/com/sun/star/awt/grid/XMutableGridDataModel.idl b/offapi/com/sun/star/awt/grid/XMutableGridDataModel.idl new file mode 100755 index 000000000..5e10820ff --- /dev/null +++ b/offapi/com/sun/star/awt/grid/XMutableGridDataModel.idl @@ -0,0 +1,163 @@ +/************************************************************************* + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +#ifndef __com_sun_star_awt_grid_XMutableGridDataModel_idl__ +#define __com_sun_star_awt_grid_XMutableGridDataModel_idl__ + +#include <com/sun/star/awt/grid/XGridDataModel.idl> +#include <com/sun/star/lang/IllegalArgumentException.idl> +#include <com/sun/star/lang/IndexOutOfBoundsException.idl> + +//================================================================================================================== + +module com { module sun { module star { module awt { module grid { + +//================================================================================================================== + +/** allows to modify the data represented by a <type>XGridDataModel</type> + */ +interface XMutableGridDataModel : XGridDataModel +{ + /** adds a row to the model. + + @param Heading + denotes the heading of the row. + @param Data + specifies the content of the row. + */ + void addRow( [in] any Heading, [in] sequence< any > Data ); + + /** adds multiple rows of data to the model. + @param Headings + denotes the headings of the to-be-added rows. + @param Data + specifies the data of the rows to be added. + @throws ::com::sun::star::lang::IllegalArgumentException + if <code>Titles</code> and <code>Data</code> are of different length. + */ + void addRows( [in] sequence< any > Headings, [in] sequence< sequence< any > > Data ) + raises ( ::com::sun::star::lang::IllegalArgumentException ); + + /** removes a row of data from the model + + @param RowIndex + the index of the row that should be removed. + @throws ::com::sun::star::lang::IndexOutOfBoundsException + if the given index is invalid + */ + void removeRow( [in] long RowIndex ) + raises ( ::com::sun::star::lang::IndexOutOfBoundsException ); + + /** Removes all rows from the model. + */ + void removeAllRows(); + + /** updates the content of the given cell + @param ColumnIndex + the column index of the to-be-updated cell + @param RowIndex + the row index of the to-be-updated cell + @param Value + the new value of the cell. + @throws ::com::sun::star::lang::IndexOutOfBoundsException + if the row or column index is invalid + */ + void updateCellData( [in] long ColumnIndex, [in] long RowIndex, [in] any Value ) + raises ( ::com::sun::star::lang::IndexOutOfBoundsException ); + + /** updates the content of a given row. + + <p>The change in the data model will be notified to registered listeners via + <member">XGridDataListener::dataChanged</member>. The <member>GridDataEvent::FirstColumn</member> and + <member>GridDataEvent::LastColumn</member> will denote the smallest respectively largest column + index from <argColumnIndexes</arg>.</p> + + @param ColumnIndexes + contains the column indexes of the cells, which should be updated + @param RowIndex + contains the index of the row whose data is to be updated + @param Values + specifies the new values of the cells. + @throws ::com::sun::star::lang::IndexOutOfBoundsException + if one of the row indexes or the column index is invalid + @throws ::com::sun::star::lang::IndexOutOfBoundsException + if the lengths of the <code>ColumnIndexes</code> and <code>Values</code> sequences are not equal. + */ + void updateRowData( [in] sequence< long > ColumnIndexes, [in] long RowIndex, [in] sequence< any > Values ) + raises ( ::com::sun::star::lang::IndexOutOfBoundsException + , ::com::sun::star::lang::IllegalArgumentException); + + /** sets a new title for a given row. + + @throws ::com::sun::star::lang::IndexOutOfBoundsException + if the given index does not denote a valid row. + */ + void + updateRowHeading( [in] long RowIndex, [in] any Heading ) + raises ( ::com::sun::star::lang::IndexOutOfBoundsException ); + + /** updates the tooltip to be displayed for a given cell + + @see XGridDataModel::getCellToolTip + */ + void updateCellToolTip( [in] long ColumnIndex, [in] long RowIndex, [in] any Value ) + raises ( ::com::sun::star::lang::IndexOutOfBoundsException ); + + /** updates the tooltip for all cells of a given row + + <p>Effectively this method is a shortcut for calling <member>updateCellToolTip</member> multiple + times in a row, for all cells of a given row.</p> + + @see XGridDataModel::getCellToolTip + @see updateCellToolTip + */ + void updateRowToolTip( [in] long RowIndex, [in] any Value ) + raises ( ::com::sun::star::lang::IndexOutOfBoundsException ); + + //------------------------------------------------------------------------- + + /** registers listener to be notified of data changes in the model + @param Listener + specifies the listener to register + */ + void addGridDataListener( [in] XGridDataListener Listener ); + + //------------------------------------------------------------------------- + + /** revokes a listener which was previously registered via <member>addGridDataListener</member> + @param Listener + specifies the listener to revoke. + */ + void removeGridDataListener( [in] XGridDataListener Listener ); +}; + +//================================================================================================================== + +}; }; }; }; }; + +//================================================================================================================== + +#endif diff --git a/offapi/com/sun/star/awt/grid/XSortableGridData.idl b/offapi/com/sun/star/awt/grid/XSortableGridData.idl new file mode 100755 index 000000000..dd40d2a46 --- /dev/null +++ b/offapi/com/sun/star/awt/grid/XSortableGridData.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_awt_grid_XSortableGridData_idl__ +#define __com_sun_star_awt_grid_XSortableGridData_idl__ + +#include <com/sun/star/lang/IndexOutOfBoundsException.idl> +#include <com/sun/star/beans/Pair.idl> + +//================================================================================================================== + +module com { module sun { module star { module awt { module grid { + +//================================================================================================================== + +/** allows to sort the data represented by a <type>XGridDataModel</type> + */ +interface XSortableGridData +{ + /** sorts the rows represented by the model by a given column's data. + + @param ColumnIndex + the index of the column whose data should be used as sort key + @param SortAscending + is <TRUE/> if the data should be sorted ascending, <FALSE/> otherwise. + @throws ::com::sun::star::lang::IndexOutOfBoundsException + if <code>ColumnIndex</code> does not denote a valid column. + */ + void sortByColumn( [in] long ColumnIndex, [in] boolean SortAscending ) + raises ( ::com::sun::star::lang::IndexOutOfBoundsException ); + + /** removes any possibly present sorting of the grid data + */ + void removeColumnSort(); + + /** returns the current sort order. + + @return + a structure describing the current sort order. <member scope="::com::sun::star::beans">Pair::First</member> + denotes the column by which the data is sorted, or -1 if the data is currently unsorted. + <member scope="::com::sun::star::beans">Pair::Second</member> is <TRUE/> if the data is sorted ascending, + <FALSE/> otherwise. + */ + ::com::sun::star::beans::Pair< long, boolean > + getCurrentSortOrder(); +}; + +//================================================================================================================== + +}; }; }; }; }; + +//================================================================================================================== + +#endif diff --git a/offapi/com/sun/star/awt/grid/XSortableMutableGridDataModel.idl b/offapi/com/sun/star/awt/grid/XSortableMutableGridDataModel.idl new file mode 100755 index 000000000..a07dabbbb --- /dev/null +++ b/offapi/com/sun/star/awt/grid/XSortableMutableGridDataModel.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_awt_grid_XSortableMutableGridDataModel_idl__ +#define __com_sun_star_awt_grid_XSortableMutableGridDataModel_idl__ + +#include <com/sun/star/awt/grid/XMutableGridDataModel.idl> +#include <com/sun/star/awt/grid/XSortableGridData.idl> + +//================================================================================================================== + +module com { module sun { module star { module awt { module grid { + +//================================================================================================================== + +/** describes a grid control data model whose data can be modified and sorted. + */ +interface XSortableMutableGridDataModel +{ + /** provides access to the basic functionality of a grid data model, plus functions to modify it. + */ + interface XMutableGridDataModel; + + /** provides means to sort the data represented by the model. + + <p>If you set a new column sort order, the implementation will notify the registered <type>XGridDataListener</type>s + via a call to its <member>XGridDataListener::dataChanged</member> method.</p> + */ + interface XSortableGridData; +}; + +//================================================================================================================== + +}; }; }; }; }; + +//================================================================================================================== + +#endif diff --git a/offapi/com/sun/star/awt/grid/makefile.mk b/offapi/com/sun/star/awt/grid/makefile.mk index 02c159f8f..8499dca27 100644 --- a/offapi/com/sun/star/awt/grid/makefile.mk +++ b/offapi/com/sun/star/awt/grid/makefile.mk @@ -39,27 +39,27 @@ PACKAGE=com$/sun$/star$/awt$/grid # ------------------------------------------------------------------------ IDLFILES=\ GridColumnEvent.idl\ - GridControlEvent.idl\ GridDataEvent.idl\ SelectionEventType.idl\ GridSelectionEvent.idl\ - XGridControlListener.idl\ XGridSelectionListener.idl\ XGridSelection.idl\ XGridColumn.idl\ XGridColumnListener.idl\ XGridDataListener.idl\ - XGridCell.idl\ - XGridCellRenderer.idl\ DefaultGridDataModel.idl\ XGridDataModel.idl\ + XMutableGridDataModel.idl\ XGridColumnModel.idl\ - ScrollBarMode.idl\ XGridControl.idl\ UnoControlGrid.idl\ UnoControlGridModel.idl\ GridInvalidDataException.idl\ - GridInvalidModelException.idl + GridInvalidModelException.idl\ + XSortableGridData.idl\ + SortableGridDataModel.idl\ + XSortableMutableGridDataModel.idl\ + # ------------------------------------------------------------------ .INCLUDE : target.mk diff --git a/offapi/com/sun/star/awt/makefile.mk b/offapi/com/sun/star/awt/makefile.mk index a63577035..c2397d81b 100644 --- a/offapi/com/sun/star/awt/makefile.mk +++ b/offapi/com/sun/star/awt/makefile.mk @@ -161,6 +161,7 @@ IDLFILES=\ UnoControlDialog.idl\ UnoControlDialogElement.idl\ UnoControlDialogModel.idl\ + UnoControlDialogModelProvider.idl\ UnoControlEdit.idl\ UnoControlEditModel.idl\ UnoControlFileControl.idl\ @@ -334,7 +335,12 @@ IDLFILES=\ XPopupMenuExtended.idl \ XItemList.idl \ XItemListListener.idl \ - ItemListEvent.idl + ItemListEvent.idl \ + AnimatedImagesControl.idl \ + AnimatedImagesControlModel.idl \ + XAnimatedImages.idl \ + XAnimation.idl \ + SpinningProgressControlModel.idl # ------------------------------------------------------------------ diff --git a/offapi/com/sun/star/awt/grid/GridControlEvent.idl b/offapi/com/sun/star/awt/tab/TabPageActivatedEvent.idl index 18e9958e0..be399c34d 100644 --- a/offapi/com/sun/star/awt/grid/GridControlEvent.idl +++ b/offapi/com/sun/star/awt/tab/TabPageActivatedEvent.idl @@ -24,31 +24,33 @@ * for a copy of the LGPLv3 License. * ************************************************************************/ -#ifndef __com_sun_star_awt_GridControlEvent_idl__ -#define __com_sun_star_awt_GridControlEvent_idl__ +#ifndef __com_sun_star_awt_tab_TabPageActivationEvent_idl__ +#define __com_sun_star_awt_tab_TabPageActivationEvent_idl__ #ifndef __com_sun_star_lang_EventObject_idl__ #include <com/sun/star/lang/EventObject.idl> #endif - //============================================================================= -module com { module sun { module star { module awt { module grid { +module com { module sun { module star { module awt { module tab { //============================================================================= - -struct GridControlEvent: com::sun::star::lang::EventObject +/** An event used by a <type>XTabPageContainer</type> to notify changes in tab page activation. + + @since OOo 3.4 + */ +struct TabPageActivatedEvent: com::sun::star::lang::EventObject { - //------------------------------------------------------------------------- - - string ActionCommand; - + /** Contains the ID of the tab page + */ + short TabPageID; + }; //============================================================================= -}; }; }; }; }; +}; }; }; }; }; #endif diff --git a/offapi/com/sun/star/awt/grid/XGridCell.idl b/offapi/com/sun/star/awt/tab/UnoControlTabPage.idl index 7b6ea52b6..6516a0e27 100644 --- a/offapi/com/sun/star/awt/grid/XGridCell.idl +++ b/offapi/com/sun/star/awt/tab/UnoControlTabPage.idl @@ -24,33 +24,33 @@ * for a copy of the LGPLv3 License. * ************************************************************************/ -#ifndef __com_sun_star_awt_grid_XGridCell_idl__ -#define __com_sun_star_awt_grid_XGridCell_idl__ +#ifndef __com_sun_star_awt_tab_UnoControlTabPage_idl__ +#define __com_sun_star_awt_tab_UnoControlTabPage_idl__ -#ifndef __com_sun_star_uno_XInterface_idl__ -#include <com/sun/star/uno/XInterface.idl> -#endif +#include <com/sun/star/awt/UnoControlContainer.idl> +#include <com/sun/star/awt/tab/XTabPage.idl> - - //============================================================================= -module com { module sun { module star { module awt { module grid { +module com { module sun { module star { module awt { module tab { //============================================================================= + +/** specifies a TabPage control. -interface XGridCell -{ + @since OOo 3.4 +*/ - [attribute] string Value; - - [attribute] boolean Editable; +service UnoControlTabPage +{ + service com::sun::star::awt::UnoControlContainer; - [attribute] any Data; + interface XTabPage; + }; //============================================================================= -}; }; }; }; }; + }; }; }; }; }; #endif diff --git a/offapi/com/sun/star/awt/tab/UnoControlTabPageContainer.idl b/offapi/com/sun/star/awt/tab/UnoControlTabPageContainer.idl new file mode 100644 index 000000000..db643d779 --- /dev/null +++ b/offapi/com/sun/star/awt/tab/UnoControlTabPageContainer.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_awt_tab_UnoControlTabPageContainer_idl__ +#define __com_sun_star_awt_tab_UnoControlTabPageContainer_idl__ + +#include <com/sun/star/awt/UnoControl.idl> +#include <com/sun/star/awt/tab/XTabPageContainer.idl> + +//============================================================================= + +module com { module sun { module star { module awt { module tab { + +//============================================================================= + +/** specifies a TabPageContainer control. + + @since OOo 3.4 + */ +service UnoControlTabPageContainer +{ + service com::sun::star::awt::UnoControl; + + interface com::sun::star::awt::tab::XTabPageContainer; + +}; + +//============================================================================= + + }; }; }; }; }; + +#endif diff --git a/offapi/com/sun/star/awt/tab/UnoControlTabPageContainerModel.idl b/offapi/com/sun/star/awt/tab/UnoControlTabPageContainerModel.idl new file mode 100644 index 000000000..2ef18f97f --- /dev/null +++ b/offapi/com/sun/star/awt/tab/UnoControlTabPageContainerModel.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_awt_tab_UnoControlTabPageContainerModel_idl__ +#define __com_sun_star_awt_tab_UnoControlTabPageContainerModel_idl__ + +#include <com/sun/star/awt/UnoControlModel.idl> +#include <com/sun/star/awt/tab/XTabPageContainerModel.idl> + +//============================================================================= + +module com { module sun { module star { module awt { module tab { + +//============================================================================= + +/** specifies a model for a UnoControlTabPageContainer control. + + @since OOo 3.4 + */ +service UnoControlTabPageContainerModel +{ + service com::sun::star::awt::UnoControlModel; + + interface com::sun::star::awt::tab::XTabPageContainerModel; + +}; + +//============================================================================= + + }; }; }; }; }; + +#endif diff --git a/offapi/com/sun/star/awt/tab/UnoControlTabPageModel.idl b/offapi/com/sun/star/awt/tab/UnoControlTabPageModel.idl new file mode 100644 index 000000000..500af0a3a --- /dev/null +++ b/offapi/com/sun/star/awt/tab/UnoControlTabPageModel.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_awt_tab_UnoControlTabPageModel_idl__ +#define __com_sun_star_awt_tab_UnoControlTabPageModel_idl__ + +#include <com/sun/star/awt/tab/XTabPageModel.idl> + +//============================================================================= + +module com { module sun { module star { module awt { module tab { + +//============================================================================= + +/** specifies the standard model of a XTabPageModel. + @since OOo 3.4 + */ +service UnoControlTabPageModel : XTabPageModel +{ + /** Creates a new XTabPageModel with a given ID. + */ + create([in] short tabPageID); + + /** Creates a new XTabPageModel with a given ID and a url which is used to load teh tab page model. + */ + load([in] short tabPageID,[in] string url); +}; + +//============================================================================= + +}; }; }; }; }; + +#endif diff --git a/offapi/com/sun/star/awt/grid/XGridCellRenderer.idl b/offapi/com/sun/star/awt/tab/XTabPage.idl index 996874e55..1400f1303 100644 --- a/offapi/com/sun/star/awt/grid/XGridCellRenderer.idl +++ b/offapi/com/sun/star/awt/tab/XTabPage.idl @@ -24,29 +24,29 @@ * for a copy of the LGPLv3 License. * ************************************************************************/ -#ifndef __com_sun_star_awt_grid_XGridCellRenderer_idl__ -#define __com_sun_star_awt_grid_XGridCellRenderer_idl__ - -#ifndef __com_sun_star_uno_XInterface_idl__ -#include <com/sun/star/uno/XInterface.idl> -#endif - +#ifndef __com_sun_star_awt_tab_XTabPage_idl__ +#define __com_sun_star_awt_tab_XTabPage_idl__ + +#include <com/sun/star/awt/tab/XTabPageModel.idl> //============================================================================= -module com { module sun { module star { module awt { module grid { +module com { module sun { module star { module awt { module tab { //============================================================================= -/** renderer for cells - */ -interface XGridCellRenderer +/** An interface to a control that displays a tab page. + + @see UnoControlTabPage + + @since OOo 3.4 + */ +interface XTabPage { - //------------------------------------------------------------------------- }; //============================================================================= -}; }; }; }; }; +}; }; }; }; }; #endif diff --git a/offapi/com/sun/star/awt/tab/XTabPageContainer.idl b/offapi/com/sun/star/awt/tab/XTabPageContainer.idl new file mode 100644 index 000000000..1dcb42759 --- /dev/null +++ b/offapi/com/sun/star/awt/tab/XTabPageContainer.idl @@ -0,0 +1,109 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ +#ifndef __com_sun_star_awt_tab_XTabPageContainer_idl__ +#define __com_sun_star_awt_tab_XTabPageContainer_idl__ + +#include <com/sun/star/awt/tab/XTabPageContainerListener.idl> +#include <com/sun/star/awt/tab/XTabPage.idl> +//============================================================================= + +module com { module sun { module star { module awt { module tab { + +//============================================================================= + +/** An interface to a control that displays tab pages. + + @see UnoControlTabPageContainer + + @since OOo 3.4 + */ +interface XTabPageContainer +{ + /** Returns the number of tab pages. + @returns + the number of tab pages. + */ + long getTabPageCount(); + + //------------------------------------------------------------------------- + + /** Checks whether a tab page is activated. + @param + the tab page to be checked. + @returns + <TRUE/> if tab page is activated, else <FALSE/>. + */ + boolean isTabPageActive([in] short tabPageIndex); + + //------------------------------------------------------------------------- + + /** Returns tab page for the given index. + @param + tabPageIndex - index of the tab page in the IndexContainer. + @returns + tab page which has tabPageIndex. + */ + XTabPage getTabPage([in] short tabPageIndex); + + //------------------------------------------------------------------------- + + /** Returns tab page for the given ID. + @param + tabPageID - ID of the tab page. + @returns + tab page which has tabPageID. + */ + XTabPage getTabPageByID([in] short tabPageID); + + //------------------------------------------------------------------------- + + /** Adds a listener for the <type>TabPageActivedEvent</type> posted after + the tab page was activated. + @param listener + the listener to add. + */ + [oneway] void addTabPageListener( [in] XTabPageContainerListener listener); + + //------------------------------------------------------------------------- + + /** Removes a listener previously added with <method>addTabPageListener()</method>. + @param listener + the listener to remove. + */ + [oneway] void removeTabPageListener( [in] XTabPageContainerListener listener); + + //------------------------------------------------------------------------- + /** Specifies the ID of the current active tab page. + */ + [attribute] short ActiveTabPageID; +}; + +//============================================================================= + +}; }; }; }; }; + +#endif diff --git a/offapi/com/sun/star/awt/tab/XTabPageContainerListener.idl b/offapi/com/sun/star/awt/tab/XTabPageContainerListener.idl new file mode 100644 index 000000000..0eb5778cf --- /dev/null +++ b/offapi/com/sun/star/awt/tab/XTabPageContainerListener.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_awt_tab_XTabPageContainerListener_idl__ +#define __com_sun_star_awt_tab_XTabPageContainerListener_idl__ + +#include <com/sun/star/lang/XEventListener.idl> +#include <com/sun/star/awt/tab/TabPageActivatedEvent.idl> + +//============================================================================= + +module com { module sun { module star { module awt { module tab { + +//============================================================================= + +/** An instance of this interface is used by the <type>XTabPageContainer</type> to + get notifications about changes in activation of tab pages. + + @since OOo 3.4 + */ +interface XTabPageContainerListener: com::sun::star::lang::XEventListener +{ + //------------------------------------------------------------------------- + /** Invoked after a tab page was activated. + */ + [oneway] void tabPageActivated( [in] TabPageActivatedEvent tabPageActivatedEvent); + +}; + +//============================================================================= + +}; }; }; }; }; + +#endif diff --git a/offapi/com/sun/star/awt/tab/XTabPageContainerModel.idl b/offapi/com/sun/star/awt/tab/XTabPageContainerModel.idl new file mode 100644 index 000000000..4f554ed5a --- /dev/null +++ b/offapi/com/sun/star/awt/tab/XTabPageContainerModel.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_awt_tab_XTabPageContainerModel_idl__ +#define __com_sun_star_awt_tab_XTabPageContainerModel_idl__ + +#include <com/sun/star/container/XIndexContainer.idl> +#include <com/sun/star/container/XContainer.idl> + +//============================================================================= + +module com { module sun { module star { module awt { module tab { + +//============================================================================= + +/** specifies an interface for a UnoControlTabPageContainerModel. + + @since OOo 3.4 + */ +interface XTabPageContainerModel +{ + interface com::sun::star::container::XIndexContainer; + interface com::sun::star::container::XContainer; +}; + +//============================================================================= + + }; }; }; }; }; + +#endif diff --git a/offapi/com/sun/star/awt/tab/XTabPageModel.idl b/offapi/com/sun/star/awt/tab/XTabPageModel.idl new file mode 100644 index 000000000..87ce21cbe --- /dev/null +++ b/offapi/com/sun/star/awt/tab/XTabPageModel.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_awt_tab_XTabPageModel_idl__ +#define __com_sun_star_awt_tab_XTabPageModel_idl__ + +#include <com/sun/star/uno/XInterface.idl> +#include <com/sun/star/lang/XMultiServiceFactory.idl> +#include <com/sun/star/container/XContainer.idl> +#include <com/sun/star/container/XNameContainer.idl> + +//============================================================================= + +module com { module sun { module star { module awt { module tab { + +//============================================================================= + +/** specifies an XTabPageModel interface. + + @since OOo 3.4 +*/ + +interface XTabPageModel +{ + //interface com::sun::star::lang::XMultiServiceFactory; + + //interface com::sun::star::container::XNameContainer; + + //interface com::sun::star::container::XContainer; + + /**ID for tab page. + */ + [attribute, readonly] short TabPageID; + //------------------------------------------------------------------------- + + /** determines whether a tab page is enabled or disabled. + */ + [attribute] boolean Enabled; + + //------------------------------------------------------------------------- + + /** specifies the text that is displayed in the tab bar of the tab page. + */ + [attribute] string Title; + + //------------------------------------------------------------------------- + + /** specifies a URL that references a graphic that should be displayed in the tab bar. + */ + [attribute] string ImageURL; + + //------------------------------------------------------------------------- + + /** specifies a tooltip text that should be displayed in the tab bar. + */ + [attribute] string Tooltip; +}; + + +//============================================================================= + + }; }; }; }; }; + +#endif diff --git a/offapi/com/sun/star/awt/tab/makefile.mk b/offapi/com/sun/star/awt/tab/makefile.mk new file mode 100644 index 000000000..249760988 --- /dev/null +++ b/offapi/com/sun/star/awt/tab/makefile.mk @@ -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. +# +#************************************************************************* + +PRJ=..$/..$/..$/..$/.. + +PRJNAME=api + +TARGET=cssawttab +PACKAGE=com$/sun$/star$/awt$/tab + +# --- Settings ----------------------------------------------------- +.INCLUDE : $(PRJ)$/util$/makefile.pmk + +# ------------------------------------------------------------------------ +IDLFILES=\ + TabPageActivatedEvent.idl\ + XTabPageContainerListener.idl\ + XTabPageModel.idl\ + XTabPage.idl\ + XTabPageContainerModel.idl\ + XTabPageContainer.idl\ + UnoControlTabPage.idl\ + UnoControlTabPageModel.idl\ + UnoControlTabPageContainer.idl\ + UnoControlTabPageContainerModel.idl +# ------------------------------------------------------------------ + +.INCLUDE : target.mk +.INCLUDE : $(PRJ)$/util$/target.pmk diff --git a/offapi/com/sun/star/awt/tree/XTreeControl.idl b/offapi/com/sun/star/awt/tree/XTreeControl.idl index be9f00d34..443698776 100644 --- a/offapi/com/sun/star/awt/tree/XTreeControl.idl +++ b/offapi/com/sun/star/awt/tree/XTreeControl.idl @@ -154,7 +154,7 @@ interface XTreeControl @throws ::com::sun::star::lang::IllegalArgumentException if <var>Node</var> is not a valid node of the corresponding <type>XTreeDataModel</type>. - @raises ExpandVetoException + @throws ExpandVetoException if collapsing <var>Node</var> failed because at least one of the registered <type>XTreeExpansionListener</type> raised a <type>ExpandVetoException</type>. */ diff --git a/offapi/com/sun/star/chart/ChartAxis.idl b/offapi/com/sun/star/chart/ChartAxis.idl index d49ff078b..97110b5d7 100644 --- a/offapi/com/sun/star/chart/ChartAxis.idl +++ b/offapi/com/sun/star/chart/ChartAxis.idl @@ -53,8 +53,20 @@ #ifndef __com_sun_star_chart_ChartAxisMarkPosition_idl__ #include <com/sun/star/chart/ChartAxisMarkPosition.idl> -#endif - +#endif + +#ifndef __com_sun_star_chart_ChartAxisType_idl__ +#include <com/sun/star/chart/ChartAxisType.idl> +#endif + +#ifndef __com_sun_star_chart_TimeIncrement_idl__ +#include <com/sun/star/chart/TimeIncrement.idl> +#endif + +#ifndef __com_sun_star_chart_XAxis_idl__ +#include <com/sun/star/chart/XAxis.idl> +#endif + #ifndef _com_sun_star_xml_UserDefinedAttributeSupplier_idl_ #include <com/sun/star/xml/UserDefinedAttributeSupplier.idl> #endif @@ -72,8 +84,6 @@ */ published service ChartAxis { - - /** set the properties for the entire axis line as well as for the tick marks. */ @@ -83,14 +93,19 @@ published service ChartAxis */ service com::sun::star::style::CharacterProperties; - /** If a <type>ChartAxis</type> may be stored as XML element, this - service should be supported in order to preserve unparsed XML - attributes. + /** If a <type>ChartAxis</type> may be stored as XML element, this + service should be supported in order to preserve unparsed XML + attributes. @since OOo 1.1.2 */ [optional] service com::sun::star::xml::UserDefinedAttributeSupplier; + /** Access to the sub elements of an axis like title and grids. + @since OOo 3.4 + */ + [optional] interface com::sun::star::chart::XAxis; + interface com::sun::star::beans::XPropertySet; //------------------------------------------------------------------------- @@ -169,6 +184,20 @@ published service ChartAxis //------------------------------------------------------------------------- + /** determines which type of axis this is, e.g. a date-axis or a category-axis @see ChartAxisType + @since OOo 3.4 + */ + [optional, property] long AxisType; + + //------------------------------------------------------------------------- + + /** if the current axis is a date-axis the intervals are choosen as given with TimeIncrement + @since OOo 3.4 + */ + [optional, maybevoid, property] TimeIncrement TimeIncrement; + + //------------------------------------------------------------------------- + /** Determines if the axis orientation is mathematical or reversed. */ [optional, property] boolean ReverseDirection; diff --git a/offapi/com/sun/star/chart2/XUndoSupplier.idl b/offapi/com/sun/star/chart/ChartAxisType.idl index f1d6a4866..f51c5857c 100644 --- a/offapi/com/sun/star/chart2/XUndoSupplier.idl +++ b/offapi/com/sun/star/chart/ChartAxisType.idl @@ -24,10 +24,8 @@ * for a copy of the LGPLv3 License. * ************************************************************************/ -#ifndef com_sun_star_chart2_XUndoSupplier_idl -#define com_sun_star_chart2_XUndoSupplier_idl - -#include <com/sun/star/chart2/XUndoManager.idl> +#ifndef com_sun_star_chart_ChartAxisType_idl +#define com_sun_star_chart_ChartAxisType_idl module com { @@ -35,23 +33,25 @@ module sun { module star { -module chart2 +module chart { - -/** An interface for providing an UndoManager based on frame::XModel - objects. - */ -interface XUndoSupplier : ::com::sun::star::uno::XInterface +/** @since OOo 3.4 +*/ +published constants ChartAxisType { - /** @return an undo manager that allows doing undo and redo of a - frame::XModel based object + /** the type of the axis is choosen automatically dependent on the chart type, the dimension and the underlying data + */ + const long AUTOMATIC = 0; + + /** the axis represent discrete category texts if chart type and the dimension allows + */ + const long CATEGORY = 1; + + /** the axis shows dates if the given data and chart type and the dimension allows */ - XUndoManager getUndoManager(); + const long DATE = 2; }; -} ; // chart2 -} ; // com -} ; // sun -} ; // star +}; }; }; }; #endif diff --git a/offapi/com/sun/star/chart2/LegendExpansion.idl b/offapi/com/sun/star/chart/ChartLegendExpansion.idl index 10191f240..93b58e5cf 100644..100755 --- a/offapi/com/sun/star/chart2/LegendExpansion.idl +++ b/offapi/com/sun/star/chart/ChartLegendExpansion.idl @@ -24,8 +24,8 @@ * for a copy of the LGPLv3 License. * ************************************************************************/ -#ifndef com_sun_star_chart_LegendExpansion_idl -#define com_sun_star_chart_LegendExpansion_idl +#ifndef com_sun_star_chart_ChartLegendExpansion_idl +#define com_sun_star_chart_ChartLegendExpansion_idl module com { @@ -33,41 +33,37 @@ module sun { module star { -module chart2 +module chart { -/** +/** Specifies sizing aspects of the legend */ -enum LegendExpansion +enum ChartLegendExpansion { - /** The legend is laid out such that it is wider that high. The - aspect ratio is greater than 1. + /** The legend entries are arranged in a single row if possible. If not enough space is available further rows are added. <p>This is usually used for legends that are displayed at the top or bottom of the page.</p> */ WIDE, - /** The legend is laid out such that it is higher that wide. The - aspect ratio is less than 1. + /** The legend entries are stacked in a single column if possible. If not enough space is available further columns are added. <p>This is usually used for legends that are displayed on the left or right hand side of the page.</p> */ HIGH, - /** The legend is laid out such that height and width are not - differing too much. It is not guaranteed to have an aspect - ratio of 1. + /** The legend entries are arranged in a way that the aspect ratio of the resulting legend is as near to 1 as possible. */ BALANCED, - /** The aspect ratio of the legend is given explicitly + /** The size of the legend is given explicitly */ CUSTOM }; -} ; // chart2 +} ; // chart } ; // com } ; // sun } ; // star diff --git a/offapi/com/sun/star/chart/Diagram.idl b/offapi/com/sun/star/chart/Diagram.idl index 2074285ed..639068d80 100644 --- a/offapi/com/sun/star/chart/Diagram.idl +++ b/offapi/com/sun/star/chart/Diagram.idl @@ -29,7 +29,11 @@ #ifndef __com_sun_star_chart_XDiagram_idl__ #include <com/sun/star/chart/XDiagram.idl> -#endif +#endif + +#ifndef __com_sun_star_chart_XAxisSupplier_idl__ +#include <com/sun/star/chart/XAxisSupplier.idl> +#endif #ifndef __com_sun_star_chart_XDiagramPositioning_idl__ #include <com/sun/star/chart/XDiagramPositioning.idl> @@ -72,8 +76,12 @@ published service Diagram interface com::sun::star::chart::XDiagram; - /** Provides access to the titles of the secondary X axis and Y axis. + /** Provides easier access to the differnet axes and their sub elements. + @since OOo 3.4 + */ + [optional] interface com::sun::star::chart::XAxisSupplier; + /** Provides access to the titles of the secondary X axis and Y axis. @since OOo 3.0 */ [optional] interface com::sun::star::chart::XSecondAxisTitleSupplier; diff --git a/offapi/com/sun/star/chart/TimeIncrement.idl b/offapi/com/sun/star/chart/TimeIncrement.idl new file mode 100644 index 000000000..cdefaace2 --- /dev/null +++ b/offapi/com/sun/star/chart/TimeIncrement.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_chart_TimeIncrement_idl +#define com_sun_star_chart_TimeIncrement_idl + +#include <com/sun/star/chart/TimeInterval.idl> + +//============================================================================= + +module com { module sun { module star { module chart { + +//============================================================================= + +/** A TimeIncrement describes how tickmarks are positioned on the scale of a date-time axis. +@since OOo 3.4 +*/ +published struct TimeIncrement +{ + /** if the any contains a struct of type <type>::com::sun::star::chart::TimeInterval</type> + this is used as a fixed distance value for the major tickmarks. Otherwise, if the any is empty or contains an + incompatible type, the distance between major tickmarks is calculated automatically by the application. + */ + any MajorTimeInterval; + + /** if the any contains a struct of type <type>::com::sun::star::chart::TimeInterval</type> + this is used as a fixed distance value for the minor tickmarks. Otherwise, if the any is empty or contains an + incompatible type, the distance between minor tickmarks is calculated automatically by the application. + */ + any MinorTimeInterval; + + /** if the any contains a constant of type <type>::com::sun::star::chart::TimeUnit</type> + this is the smallest time unit that is displayed on the date-time axis. + Otherwise, if the any is empty or contains an incompatible type, + the resolution is choosen automatically by the application. + */ + any TimeResolution; +}; + +//============================================================================= + +}; }; }; }; + +#endif diff --git a/offapi/com/sun/star/chart2/ViewLegendEntry.idl b/offapi/com/sun/star/chart/TimeInterval.idl index ce50a03b7..2146e25e1 100644 --- a/offapi/com/sun/star/chart2/ViewLegendEntry.idl +++ b/offapi/com/sun/star/chart/TimeInterval.idl @@ -24,30 +24,30 @@ * for a copy of the LGPLv3 License. * ************************************************************************/ -#ifndef com_sun_star_chart2_ViewLegendEntry_idl -#define com_sun_star_chart2_ViewLegendEntry_idl +#ifndef com_sun_star_chart_TimeInterval_idl +#define com_sun_star_chart_TimeInterval_idl -#include <com/sun/star/drawing/XShape.idl> -#include <com/sun/star/chart2/XFormattedString.idl> +#include <com/sun/star/chart/TimeUnit.idl> //============================================================================= -module com { module sun { module star { module chart2 { +module com { module sun { module star { module chart { //============================================================================= -/** - */ -struct ViewLegendEntry +/** Describes an interval on a date-axis +@since OOo 3.4 +*/ +published struct TimeInterval { - /** The legend symbol that represents a data series or other - information contained in the legend - */ - ::com::sun::star::drawing::XShape aSymbol; - - /** The descriptive text for a legend entry. - */ - sequence< XFormattedString > aLabel; + /** specifies the number of units + */ + long Number; + + /** specifies a unit for the interval + <p>is a value out of the constant group <type>::com::sun::star::chart::TimeUnit</type>.</p> + */ + long TimeUnit; }; //============================================================================= @@ -55,4 +55,3 @@ struct ViewLegendEntry }; }; }; }; #endif - diff --git a/offapi/com/sun/star/awt/grid/XGridControlListener.idl b/offapi/com/sun/star/chart/TimeUnit.idl index 4e7876cbe..112c2c639 100644 --- a/offapi/com/sun/star/awt/grid/XGridControlListener.idl +++ b/offapi/com/sun/star/chart/TimeUnit.idl @@ -24,26 +24,27 @@ * for a copy of the LGPLv3 License. * ************************************************************************/ -#ifndef __com_sun_star_awt_grid_XGridControlListener_idl__ -#define __com_sun_star_awt_grid_XGridControlListener_idl__ - -#ifndef __com_sun_star_uno_XInterface_idl__ -#include <com/sun/star/uno/XInterface.idl> -#endif - +#ifndef __com_sun_star_chart_TimeUnit_idl__ +#define __com_sun_star_chart_TimeUnit_idl__ + //============================================================================= -module com { module sun { module star { module awt { module grid { + module com { module sun { module star { module chart { //============================================================================= - -interface XGridControlListener -{ +/** Specifies a unit for intervals on a date-time axis +@since OOo 3.4 + */ +published constants TimeUnit +{ + const long DAY = 0; + const long MONTH = 1; + const long YEAR = 2; }; //============================================================================= -}; }; }; }; }; +}; }; }; }; -#endif +#endif diff --git a/offapi/com/sun/star/chart/XAxis.idl b/offapi/com/sun/star/chart/XAxis.idl new file mode 100755 index 000000000..9a1503aa7 --- /dev/null +++ b/offapi/com/sun/star/chart/XAxis.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_chart_XAxis_idl +#define com_sun_star_chart_XAxis_idl + +#ifndef __com_sun_star_beans_XPropertySet_idl__ +#include <com/sun/star/beans/XPropertySet.idl> +#endif + +module com { module sun { module star { module chart { + +/** Allows easier access to the different subelements of an axis. +@since OOo 3.4 +*/ + +interface XAxis : ::com::sun::star::uno::XInterface +{ + /** @returns + the title of the axis. The returned object supports the properties described in service <type>ChartTitle</type>. + */ + com::sun::star::beans::XPropertySet getAxisTitle(); + + /** @returns + the properties of the major grid of the axis. The returned object supports service <type>ChartGrid</type>. + */ + com::sun::star::beans::XPropertySet getMajorGrid(); + + /** @returns + the properties of the minor grid of the axis. The returned object supports service <type>ChartGrid</type>. + */ + com::sun::star::beans::XPropertySet getMinorGrid(); +}; + +}; }; }; }; + +#endif diff --git a/offapi/com/sun/star/chart/XAxisSupplier.idl b/offapi/com/sun/star/chart/XAxisSupplier.idl new file mode 100755 index 000000000..43701ca10 --- /dev/null +++ b/offapi/com/sun/star/chart/XAxisSupplier.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_chart_XAxisSupplier_idl +#define com_sun_star_chart_XAxisSupplier_idl + +#ifndef __com_sun_star_chart_XAxis_idl__ +#include <com/sun/star/chart/XAxis.idl> +#endif + +module com { module sun { module star { module chart { + +/** Easier access to the different axes within a chart. +@since OOo 3.4 +*/ + +interface XAxisSupplier : ::com::sun::star::uno::XInterface +{ + /** @returns + the primary axis of the specified dimension. The returned object supports service <type>ChartAxis</type>. + + @param nDimensionIndex + Parameter nDimensionIndex says wether it is a x, y or z-axis (0 for x). + */ + com::sun::star::chart::XAxis getAxis( [in] long nDimensionIndex ); + + /** @returns + the secondary axis of the specified dimension. The returned object supports service <type>ChartAxis</type>. + + @param nDimensionIndex + Parameter nDimensionIndex says wether it is a x, y or z-axis (0 for x). + */ + com::sun::star::chart::XAxis getSecondaryAxis( [in] long nDimensionIndex ); +}; + +}; }; }; }; + +#endif diff --git a/offapi/com/sun/star/chart/XChartDocument.idl b/offapi/com/sun/star/chart/XChartDocument.idl index 5522020d7..32c2fdce1 100644 --- a/offapi/com/sun/star/chart/XChartDocument.idl +++ b/offapi/com/sun/star/chart/XChartDocument.idl @@ -143,10 +143,13 @@ published interface XChartDocument: com::sun::star::frame::XModel <p>Since OOo 3.3 the returned object also supports interface <type>XComplexDescriptionAccess</type> which can be used to access complex hierarchical axis descriptions.</p> + + <p>Since OOo 3.4 the returned object also supports interface <type>XDateCategories</type>.</p> @see XChartData @see XChartDataArray @see XComplexDescriptionAccess + @see XDateCategories */ com::sun::star::chart::XChartData getData(); @@ -159,12 +162,16 @@ published interface XChartDocument: com::sun::star::frame::XModel <p>Since OOo 3.3 if the given object might support interface <type>XComplexDescriptionAccess</type> which allows to set complex hierarchical axis descriptions.</p> + <p>Since OOo 3.4 if the given object might support interface <type>XDateCategories</type> + which allows to set date values as x values for category charts.</p> + <p>The given data is copied before it is applied to the chart. So changing xData after this call will have no effect on the chart.</p> @see XChartData @see XChartDataArray @see XComplexDescriptionAccess + @see XDateCategories @param xData the object that provides the new data. diff --git a/offapi/com/sun/star/chart/XDateCategories.idl b/offapi/com/sun/star/chart/XDateCategories.idl new file mode 100755 index 000000000..d2e86686f --- /dev/null +++ b/offapi/com/sun/star/chart/XDateCategories.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_chart_XDateCategories_idl__ +#define __com_sun_star_chart_XDateCategories_idl__ + +#include <com/sun/star/uno/XInterface.idl> + +//============================================================================= + + module com { module sun { module star { module chart { + +//============================================================================= + +/** Allows to set date values as categories. + +<p>Can be obtained from interface <type>XChartDocument</type> via method getData().</p> + +@since OOo 3.4 +*/ + +published interface XDateCategories +{ + //------------------------------------------------------------------------- + + /** sets dates as categories + + @param rDates + a sequence of sequences of doubles representing dates. + */ + void setDateCategories( [in] sequence< double > rDates ); + + //------------------------------------------------------------------------- + + /** retrieves the date values if the category x-axis id a date axis + + @returns + a sequence of doubles representing dates. + */ + sequence< double > getDateCategories(); +}; + +//============================================================================= + +}; }; }; }; + +#endif diff --git a/offapi/com/sun/star/chart/XSecondAxisTitleSupplier.idl b/offapi/com/sun/star/chart/XSecondAxisTitleSupplier.idl index 96e6639e9..9f1009e33 100644 --- a/offapi/com/sun/star/chart/XSecondAxisTitleSupplier.idl +++ b/offapi/com/sun/star/chart/XSecondAxisTitleSupplier.idl @@ -1,24 +1,24 @@ -#ifndef __com_sun_star_chart_XSecondAxisTitleSupplier_idl__ -#define __com_sun_star_chart_XSecondAxisTitleSupplier_idl__ +#ifndef __com_sun_star_chart_XSecondAxisTitleSupplier_idl__ +#define __com_sun_star_chart_XSecondAxisTitleSupplier_idl__ -#ifndef __com_sun_star_uno_XInterface_idl__ -#include <com/sun/star/uno/XInterface.idl> +#ifndef __com_sun_star_uno_XInterface_idl__ +#include <com/sun/star/uno/XInterface.idl> #endif -#ifndef __com_sun_star_drawing_XShape_idl__ -#include <com/sun/star/drawing/XShape.idl> -#endif - - -module com { module sun { module star { module chart { +#ifndef __com_sun_star_drawing_XShape_idl__ +#include <com/sun/star/drawing/XShape.idl> +#endif + + +module com { module sun { module star { module chart { interface XSecondAxisTitleSupplier: com::sun::star::uno::XInterface -{ - com::sun::star::drawing::XShape getSecondXAxisTitle(); +{ + com::sun::star::drawing::XShape getSecondXAxisTitle(); com::sun::star::drawing::XShape getSecondYAxisTitle(); -}; +}; -}; }; }; }; - -#endif
\ No newline at end of file +}; }; }; }; + +#endif diff --git a/offapi/com/sun/star/chart/makefile.mk b/offapi/com/sun/star/chart/makefile.mk index fdbf07173..94592e0d7 100644 --- a/offapi/com/sun/star/chart/makefile.mk +++ b/offapi/com/sun/star/chart/makefile.mk @@ -52,6 +52,7 @@ IDLFILES=\ ChartAxisPosition.idl\ ChartAxisLabelPosition.idl\ ChartAxisMarkPosition.idl\ + ChartAxisType.idl\ ChartAxisXSupplier.idl\ ChartAxisYSupplier.idl\ ChartAxisZSupplier.idl\ @@ -72,6 +73,7 @@ IDLFILES=\ ChartGrid.idl\ ChartLegend.idl\ ChartLegendPosition.idl\ + ChartLegendExpansion.idl \ ChartLine.idl\ ChartPieSegmentProperties.idl\ ChartRegressionCurveType.idl\ @@ -84,6 +86,7 @@ IDLFILES=\ ChartTwoAxisXSupplier.idl\ ChartTwoAxisYSupplier.idl\ DataLabelPlacement.idl\ + TimeIncrement.idl \ Diagram.idl\ Dim3DDiagram.idl\ DonutDiagram.idl\ @@ -94,8 +97,12 @@ IDLFILES=\ PieDiagram.idl\ StackableDiagram.idl\ StockDiagram.idl\ + TimeUnit.idl\ + TimeInterval.idl\ X3DDefaultSetter.idl\ X3DDisplay.idl\ + XAxis.idl\ + XAxisSupplier.idl\ XAxisXSupplier.idl\ XAxisYSupplier.idl\ XAxisZSupplier.idl\ @@ -104,6 +111,7 @@ IDLFILES=\ XChartDataChangeEventListener.idl\ XChartDocument.idl\ XComplexDescriptionAccess.idl\ + XDateCategories.idl\ XDiagram.idl\ XDiagramPositioning.idl\ XStatisticDisplay.idl\ diff --git a/offapi/com/sun/star/chart2/AxisType.idl b/offapi/com/sun/star/chart2/AxisType.idl index f981eda17..c79d03abf 100644 --- a/offapi/com/sun/star/chart2/AxisType.idl +++ b/offapi/com/sun/star/chart2/AxisType.idl @@ -50,6 +50,9 @@ constants AxisType /** the axis shows the series names (z axis) */ const long SERIES = 3; + /** the axis shows dates + */ + const long DATE = 4; }; } ; // chart2 diff --git a/offapi/com/sun/star/chart2/CustomLegendEntry.idl b/offapi/com/sun/star/chart2/CustomLegendEntry.idl deleted file mode 100644 index 9668eaf90..000000000 --- a/offapi/com/sun/star/chart2/CustomLegendEntry.idl +++ /dev/null @@ -1,50 +0,0 @@ -#ifndef com_sun_star_chart_CustomLegendEntry_idl -#define com_sun_star_chart_CustomLegendEntry_idl - -#include <com/sun/star/beans/XPropertySet.idl> -#include <com/sun/star/chart2/XLegendSymbolProvider.idl> - -module com -{ -module sun -{ -module star -{ -module chart2 -{ - -/** A legend entry that does not depend on data series or other chart - objects. It may contain any text a user specifies. - */ -service CustomLegendEntry -{ - /** Is used to identify an object as one that may be shown in a - legend. - */ - interface XLegendEntry; - - /** Is used to display a legend text - */ - interface XTitled; - - /** If the legend entry should contain a user-defined symbol, you - have to implement this interface. - */ - [optional] interface XLegendSymbolProvider; - - /** must be supported, if properties are implemented - */ - [optional] service ::com::sun::star::beans::XPropertySet; - - /** determines what kind of symbol is displayed next to the entry - in the legend. - */ - [optional, property] LegendSymbolStyle SymbolStyle; -}; - -} ; // chart2 -} ; // com -} ; // sun -} ; // star - -#endif diff --git a/offapi/com/sun/star/chart2/ExplicitIncrementData.idl b/offapi/com/sun/star/chart2/ExplicitIncrementData.idl deleted file mode 100644 index 47fd4a538..000000000 --- a/offapi/com/sun/star/chart2/ExplicitIncrementData.idl +++ /dev/null @@ -1,96 +0,0 @@ -#ifndef com_sun_star_chart2_ExplicitIncrementData_idl -#define com_sun_star_chart2_ExplicitIncrementData_idl - -#include <com/sun/star/chart2/ExplicitSubIncrement.idl> - -//============================================================================= - -module com { module sun { module star { module chart2 { - -//============================================================================= - -/** An Increment describes how tickmarks are positioned on the scale of an axis. - -@see <type>Axis</type> -@see <type>Grid</type> -@see <type>Scale</type> -@see <type>XScaling</type> -*/ -struct ExplicitIncrementData -{ - /** <member>Distance</member> describes the distance between two - neighboring main tickmarks on a <type>Scale</type> of an axis. - All neighboring main tickmarks have the same constant distance. - - <p>If the Scale has a <type>XScaling</type> the <member>Distance</member> - may be measured in two different ways - that is - before or after the - scaling is applied.</p> - - <p>On a logarithmic scale for example the distance between two main - tickmarks is typically measured after the scaling is applied: - Distance = log(tick2)-log(tick1) - ( log(1000)-log(100)==log(100)-log(10)==log(10)-log(1)==1==Distance ). - The resulting tickmarks will always look equidistant on the screen. - The other possibility is to have a Distance = tick2-tick1 measured constant - before a scaling is applied, which may lead to non equidistant tickmarks - on the screen.</p> - - <p><member>PostEquidistant</member> rules whether the <member>Distance</member> - is meant to be a value before or after scaling.</p> - */ - double Distance; - - /** - <member>PostEquidistant</member> rules whether the member <member>Distance</member> - describes a distance before or after the scaling is applied. - - <p>If <member>PostEquidistant</member> equals <TRUE/> <member>Distance</member> - is given in values after <type>XScaling</type> is applied, thus resulting - main tickmarks will always look equidistant on the screen. - If <member>PostEquidistant</member> equals <FALSE/> <member>Distance</member> - is given in values before <type>XScaling</type> is applied.</p> - */ - boolean PostEquidistant; - - /** The <member>BaseValue</member> gives a starting point on the scale - to which all further main tickmarks are relatively positioned. - - <p>The <member>BaseValue</member> is always a value on the scale before - a possible scaling is applied. If the given value is not valid in the - associated scaling the minimum of the scaling is assumed, - if there is no minimum any other obvious value will be assumed.</p> - - <p>E.g.: assume a scale from 0 to 6 with identical scaling. - Further assume this Increment to have Distance==2 and PostEquidistant==false. - Setting BaseValue=0 would lead to main tickmarks 0; 2; 4; 6; - Setting BaseValue=1,3 would lead to main tickmarks 1,3; 3,3; 5,3; - Setting BaseValue=-0,7 would also lead to main tickmarks 1,3; 3,3; 5,3; - And setting BaseValue to 2, -2, 4, -4 etc. in this example - leads to the same result as BaseValue=0.</p> - */ - double BaseValue; - - /** <member>SubIncrements</member> describes the positioning of further - sub tickmarks on the scale of an axis. - - <p>The first SubIncrement in this sequence determines how the - distance between two neighboring main tickmarks is divided for positioning - of further sub tickmarks. Every following SubIncrement determines the - positions of subsequent tickmarks in relation to their parent tickmarks - given by the preceding SubIncrement.</p> - */ - sequence< ::com::sun::star::chart2::ExplicitSubIncrement > SubIncrements; - - /** If ShiftedPosition is false all ticks are set at the positions as described above. - E.g. having tickmarks for whole numbers 1, 2 and 3 the ticks are exactly placed on positions for the values 1, 2 and 3. - In contrast it is possible to have the tickmarks shifted thus they are placed between the indicated values. - So if ShiftedPosition is set to true the tickmarks in the example are placed at 0.5 1.5 2.5 and 3.5. - */ - boolean ShiftedPosition; -}; - -//============================================================================= - -}; }; }; }; - -#endif diff --git a/offapi/com/sun/star/chart2/ExplicitScaleData.idl b/offapi/com/sun/star/chart2/ExplicitScaleData.idl deleted file mode 100644 index 7639a4d33..000000000 --- a/offapi/com/sun/star/chart2/ExplicitScaleData.idl +++ /dev/null @@ -1,45 +0,0 @@ -#ifndef com_sun_star_chart2_ExplicitScaleData_idl -#define com_sun_star_chart2_ExplicitScaleData_idl - -#ifndef com_sun_star_chart2_Break_idl -#include <com/sun/star/chart2/Break.idl> -#endif - -#ifndef com_sun_star_chart2_XScaling_idl -#include <com/sun/star/chart2/XScaling.idl> -#endif - -#ifndef com_sun_star_chart2_AxisOrientation_idl -#include <com/sun/star/chart2/AxisOrientation.idl> -#endif - -//============================================================================= - -module com { module sun { module star { module chart2 { - -//============================================================================= - -/** This structure contains the explicit values for a scale like Minimum and Maximum. - In contrast these values may also be implicit (automatically - calculated) as indicated within the structure <type>ScaleData</type>. - */ -struct ExplicitScaleData -{ - double Minimum; - double Maximum; - double Origin; - - AxisOrientation Orientation; - - XScaling Scaling; - - sequence< Break > Breaks; - - long AxisType; -}; - -//============================================================================= - -}; }; }; }; - -#endif diff --git a/offapi/com/sun/star/chart2/ExplicitSubIncrement.idl b/offapi/com/sun/star/chart2/ExplicitSubIncrement.idl deleted file mode 100644 index c1af626c5..000000000 --- a/offapi/com/sun/star/chart2/ExplicitSubIncrement.idl +++ /dev/null @@ -1,30 +0,0 @@ -#ifndef com_sun_star_chart2_ExplicitSubIncrement_idl -#define com_sun_star_chart2_ExplicitSubIncrement_idl - -//============================================================================= - -module com { module sun { module star { module chart2 { - -//============================================================================= - -struct ExplicitSubIncrement -{ - /** Numbers of intervals between two superior ticks. For an axis - this usually means, that <code>IntervalCount - 1</code> - sub-tick-marks are displayed between two superior ticks. - - */ - long IntervalCount; - - /** If <TRUE/>, the distance between two sub-tick-marks on the - screen is always the same. If <FALSE/>, the distances may - differ depending on the <type>XScaling</type>. - */ - boolean PostEquidistant; -}; - -//============================================================================= - -}; }; }; }; - -#endif diff --git a/offapi/com/sun/star/chart2/IncrementData.idl b/offapi/com/sun/star/chart2/IncrementData.idl index f37145ad7..0342a1c15 100644 --- a/offapi/com/sun/star/chart2/IncrementData.idl +++ b/offapi/com/sun/star/chart2/IncrementData.idl @@ -23,8 +23,6 @@ struct IncrementData incompatible type, the Distance is meant to be calculated automatically by the view component representing the model containing this increment. - - @see <type>ExplicitIncrementData</type> */ any Distance; @@ -45,8 +43,6 @@ struct IncrementData incompatible type, the BaseValue is meant to be calculated automatically by the view component representing the model containing this increment. - - @see <type>ExplicitIncrementData</type> */ any BaseValue; diff --git a/offapi/com/sun/star/chart2/Legend.idl b/offapi/com/sun/star/chart2/Legend.idl index 43044f4a1..40a4c1ead 100644 --- a/offapi/com/sun/star/chart2/Legend.idl +++ b/offapi/com/sun/star/chart2/Legend.idl @@ -29,7 +29,7 @@ #include <com/sun/star/chart2/XLegend.idl> #include <com/sun/star/chart2/LegendPosition.idl> -#include <com/sun/star/chart2/LegendExpansion.idl> +#include <com/sun/star/chart/ChartLegendExpansion.idl> #include <com/sun/star/beans/PropertySet.idl> #include <com/sun/star/drawing/LineProperties.idl> @@ -63,12 +63,12 @@ service Legend /** Determines how the aspect ratio of the legend should roughly be. - <p>Set the Expansion to <member>LegendExpansion::HIGH</member> + <p>Set the Expansion to <member>::com::sun::star::chart::ChartLegendExpansion::HIGH</member> for a legend that is positioned on the right or left hand side. Use <member>LegendExpansion::WIDE</member> for a legend that is positioned on top or the bottom.</p> */ - [property] LegendExpansion Expansion; + [property] ::com::sun::star::chart::ChartLegendExpansion Expansion; /** Determines, whether the legend should be rendered by the view. */ diff --git a/offapi/com/sun/star/chart2/LegendSymbolStyle.idl b/offapi/com/sun/star/chart2/LegendSymbolStyle.idl deleted file mode 100644 index 4ffdf9200..000000000 --- a/offapi/com/sun/star/chart2/LegendSymbolStyle.idl +++ /dev/null @@ -1,107 +0,0 @@ -/************************************************************************* - * - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * - * Copyright 2000, 2010 Oracle and/or its affiliates. - * - * OpenOffice.org - a multi-platform office productivity suite - * - * This file is part of OpenOffice.org. - * - * OpenOffice.org is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License version 3 - * only, as published by the Free Software Foundation. - * - * OpenOffice.org is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License version 3 for more details - * (a copy is included in the LICENSE file that accompanied this code). - * - * You should have received a copy of the GNU Lesser General Public License - * version 3 along with OpenOffice.org. If not, see - * <http://www.openoffice.org/license.html> - * for a copy of the LGPLv3 License. - * - ************************************************************************/ -#ifndef com_sun_star_chart_LegendSymbolStyle_idl -#define com_sun_star_chart_LegendSymbolStyle_idl - -#include <com/sun/star/uno/XInterface.idl> - -#include <com/sun/star/chart2/XTitle.idl> - -module com -{ -module sun -{ -module star -{ -module chart2 -{ - -/** - */ -enum LegendSymbolStyle -{ - /** A square box with border. - */ - BOX, - - /** A rectangle that is wider than high with border. - */ - BAR, - - /** A square box with border, that may change its aspect ratio if - the layout of the legend requires this. - */ - RECTANGLE, - - /** A filled rectangle with no border that uses all the space - available for the legend entry's symbol, leaving no padding - space. This is especially useful for legends representing a - color-scale. - */ - STRETCHED_RECTANGLE, - - /** A line extending from the left edge to the right edge - */ - HORIZONTAL_LINE, - - /** A line extending from the top edge to the bottom edge - */ - VERTICAL_LINE, - - /** A line spanning the diagonal of the box you would get with - <member>BOX</member>. - */ - DIAGONAL_LINE, - - /** A line like with <member>LINE</member>, but with a small - bordered square box in the middle. - */ - LINE_WITH_BOX, - - /** A line like with <member>LINE</member>, but with the symbol - that is returned by <member>XLegendEntry::getSymbol</member> - (see also <member>USER_DEFINED</member>). - */ - LINE_WITH_SYMBOL, - - /** A bordered circle which has the same bounding-box as the - <member>BOX</member>. - */ - CIRCLE, - - /** Use the symbol that is returned by - <member>XLegendEntry::getSymbol</member>. - */ - USER_DEFINED -}; - -} ; // chart2 -} ; // com -} ; // sun -} ; // star - -#endif diff --git a/offapi/com/sun/star/chart2/ScaleData.idl b/offapi/com/sun/star/chart2/ScaleData.idl index addd66e10..9bb51005e 100644 --- a/offapi/com/sun/star/chart2/ScaleData.idl +++ b/offapi/com/sun/star/chart2/ScaleData.idl @@ -1,29 +1,12 @@ #ifndef com_sun_star_chart2_ScaleData_idl #define com_sun_star_chart2_ScaleData_idl -#ifndef com_sun_star_chart2_Break_idl -#include <com/sun/star/chart2/Break.idl> -#endif - -#ifndef com_sun_star_chart2_XScaling_idl #include <com/sun/star/chart2/XScaling.idl> -#endif - -#ifndef com_sun_star_chart2_AxisOrientation_idl #include <com/sun/star/chart2/AxisOrientation.idl> -#endif - -#ifndef com_sun_star_chart2_data_XLabeledDataSequence_idl #include <com/sun/star/chart2/data/XLabeledDataSequence.idl> -#endif - -#ifndef com_sun_star_chart2_AxisType_idl #include <com/sun/star/chart2/AxisType.idl> -#endif - -#ifndef com_sun_star_chart_IncrementData_idl #include <com/sun/star/chart2/IncrementData.idl> -#endif +#include <com/sun/star/chart/TimeIncrement.idl> //============================================================================= @@ -76,8 +59,6 @@ struct ScaleData XScaling Scaling; - sequence< Break > Breaks; - data::XLabeledDataSequence Categories; /** describes the type of the axis. @@ -87,7 +68,22 @@ struct ScaleData */ long AxisType; + /** if true an AxisType CATEGORY is interpreted as DATE if the underlying data given in Categories are dates + */ + boolean AutoDateAxis; + + /** describes wether data points on category or date axis are placed between tickmarks or not + if true the maximum on the scale will be expanded for one interval + */ + boolean ShiftedCategoryPosition; + + /** increment data to be used for not date-time axis + */ IncrementData IncrementData; + + /** increment data to be used in case of date-time axis + */ + ::com::sun::star::chart::TimeIncrement TimeIncrement; }; //============================================================================= diff --git a/offapi/com/sun/star/chart2/StandardDiagramCreationParameters.idl b/offapi/com/sun/star/chart2/StandardDiagramCreationParameters.idl index 3b5ff4d27..11f509170 100644 --- a/offapi/com/sun/star/chart2/StandardDiagramCreationParameters.idl +++ b/offapi/com/sun/star/chart2/StandardDiagramCreationParameters.idl @@ -49,6 +49,11 @@ service StandardDiagramCreationParameters a data-source is used as categories. */ [optional, property] boolean HasCategories; + + /** If categories are given they should be used as x values also if a chart type requires x values. + Default is true. + */ + [optional, property] boolean UseCategoriesAsX; }; } ; // chart2 diff --git a/offapi/com/sun/star/chart2/SubIncrement.idl b/offapi/com/sun/star/chart2/SubIncrement.idl index f076db0ee..b886f2c53 100644 --- a/offapi/com/sun/star/chart2/SubIncrement.idl +++ b/offapi/com/sun/star/chart2/SubIncrement.idl @@ -11,15 +11,11 @@ struct SubIncrement { /** should contain nothing for <em>auto</em>, or an integer value for an explicit interval count. - - @see <type>ExplicitSubIncrement</type> */ any IntervalCount; /** should contain nothing for <em>auto</em>, or a boolean value for an explicit setting. - - @see <type>ExplicitSubIncrement</type> */ any PostEquidistant; }; diff --git a/offapi/com/sun/star/chart2/XAnyDescriptionAccess.idl b/offapi/com/sun/star/chart2/XAnyDescriptionAccess.idl new file mode 100755 index 000000000..7c4e9d431 --- /dev/null +++ b/offapi/com/sun/star/chart2/XAnyDescriptionAccess.idl @@ -0,0 +1,103 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ +#ifndef __com_sun_star_chart2_XAnyDescriptionAccess_idl__ +#define __com_sun_star_chart2_XAnyDescriptionAccess_idl__ + +#ifndef __com_sun_star_chart_XComplexDescriptionAccess_idl__ +#include <com/sun/star/chart/XComplexDescriptionAccess.idl> +#endif + +//============================================================================= + + module com { module sun { module star { module chart2 { + +//============================================================================= + +/** Offers any access to column and row descriptions. +This allows to set date values as categories. + +<p>Can be obtained from interface <type>XChartDocument</type> via method getData().</p> + +@since OOo 3.4 +*/ + +interface XAnyDescriptionAccess : ::com::sun::star::chart::XComplexDescriptionAccess +{ + //------------------------------------------------------------------------- + + /** retrieves the descriptions for all rows. + + @returns + a sequence of sequences of anys representing the descriptions + of all rows. The outer index represents different rows. + The inner index represents the different levels (usually there is only one). + The any might be strings for category text axis or doubles for date axis. + */ + sequence< sequence< any > > getAnyRowDescriptions(); + + //------------------------------------------------------------------------- + + /** sets the descriptions for all rows. + + @param rRowDescriptions + a sequence of sequences of anys representing the descriptions of all + rows. The outer index represents different rows. + The inner index represents the different levels (usually there is only one). + The any might be strings for category text axis or doubles for date axis. + */ + void setAnyRowDescriptions( [in] sequence< sequence< any > > rRowDescriptions ); + + //------------------------------------------------------------------------- + + /** retrieves the descriptions for all columns. + + @returns + a sequence of sequences of anys representing the descriptions + of all columns. The outer index represents different columns. + The inner index represents the different levels (usually there is only one). + The any might be strings for category text axis or doubles for date axis. + */ + sequence< sequence< any > > getAnyColumnDescriptions(); + + //------------------------------------------------------------------------- + + /** sets the descriptions for all columns. + + @param rColumnDescriptions + a sequence of sequences of anys which represent the descriptions of + all columns. The outer index represents different columns. + The inner index represents the different levels (usually there is only one). + The any might be strings for category text axis or doubles for date axis. + */ + void setAnyColumnDescriptions( [in] sequence< sequence< any > > rColumnDescriptions ); +}; + +//============================================================================= + +}; }; }; }; + +#endif diff --git a/offapi/com/sun/star/chart2/XAxis.idl b/offapi/com/sun/star/chart2/XAxis.idl index 9a116c1a3..5651f7a32 100644 --- a/offapi/com/sun/star/chart2/XAxis.idl +++ b/offapi/com/sun/star/chart2/XAxis.idl @@ -1,3 +1,29 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ #ifndef com_sun_star_chart_XAxis_idl #define com_sun_star_chart_XAxis_idl diff --git a/offapi/com/sun/star/chart2/XCoordinateSystem.idl b/offapi/com/sun/star/chart2/XCoordinateSystem.idl index 9ae721738..90f498e03 100644 --- a/offapi/com/sun/star/chart2/XCoordinateSystem.idl +++ b/offapi/com/sun/star/chart2/XCoordinateSystem.idl @@ -1,3 +1,29 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ #ifndef com_sun_star_chart2_XCoordinateSystem_idl #define com_sun_star_chart2_XCoordinateSystem_idl diff --git a/offapi/com/sun/star/chart2/XDiagram.idl b/offapi/com/sun/star/chart2/XDiagram.idl index 6c935c5e7..fe8183208 100644 --- a/offapi/com/sun/star/chart2/XDiagram.idl +++ b/offapi/com/sun/star/chart2/XDiagram.idl @@ -32,9 +32,10 @@ #endif #include <com/sun/star/beans/XPropertySet.idl> - +#include <com/sun/star/beans/PropertyValue.idl> #include <com/sun/star/chart2/XLegend.idl> #include <com/sun/star/chart2/XColorScheme.idl> +#include <com/sun/star/chart2/data/XDataSource.idl> #include <com/sun/star/chart2/data/XLabeledDataSequence.idl> module com @@ -48,11 +49,6 @@ module chart2 interface XDiagram : ::com::sun::star::uno::XInterface { - /** gets the component that creates a new diagram or modifies - an existing diagram according to its rules. - */ -// string getChartTypeTemplateServiceName(); - /** returns the property set that determines the visual appearance of the wall. @@ -87,6 +83,25 @@ interface XDiagram : ::com::sun::star::uno::XInterface colors for data series (or data points) in the diagram. */ void setDefaultColorScheme( [in] XColorScheme xColorScheme ); + + /** sets new data to the diagram. + + @param xDataSource + This data source will be interpreted in a chart-type + specific way and the <type>DataSeries</type> found in + <code>xDiagram</code> will be adapted to the new data. + Missing data series will be created and unused ones will + be deleted. + + @param aArguments + Arguments tells how to slice the given data. + + <p>For standard parameters that may be used, see the + service <type>StandardDiagramCreationParameters</type>. + </p> + */ + void setDiagramData( [in] data::XDataSource xDataSource, + [in] sequence< com::sun::star::beans::PropertyValue > aArguments ); }; } ; // chart2 diff --git a/offapi/com/sun/star/chart2/XLegend.idl b/offapi/com/sun/star/chart2/XLegend.idl index 309aa148d..1cc8666ef 100644 --- a/offapi/com/sun/star/chart2/XLegend.idl +++ b/offapi/com/sun/star/chart2/XLegend.idl @@ -3,15 +3,6 @@ #include <com/sun/star/uno/XInterface.idl> -#ifndef __com_sun_star_lang_IllegalArgumentException_idl__ -#include <com/sun/star/lang/IllegalArgumentException.idl> -#endif -#ifndef __com_sun_star_container_NoSuchElementException_idl__ -#include <com/sun/star/container/NoSuchElementException.idl> -#endif - -#include <com/sun/star/chart2/XLegendEntry.idl> - module com { module sun @@ -25,30 +16,6 @@ module chart2 */ interface XLegend : ::com::sun::star::uno::XInterface { - /** The entry added is appended to the list, such that it appears - at the end of the legend. - - @param xEntry - - If it supports <type>CustomLegendEntry</type>, - the <type>XTitle</type> is used for displaying a text, and - the symbol is displayed according to the - <member>CustomLegendEntry::SymbolStyle</member> property. - */ - void registerEntry( [in] XLegendEntry xEntry ) - raises( com::sun::star::lang::IllegalArgumentException ); - - /** Removes an entry that was registered before - - <p>(see <member>registerEntry</member>)</p> - */ - void revokeEntry( [in] XLegendEntry xEntry ) - raises( com::sun::star::container::NoSuchElementException ); - - /** Returns a list of all legend entries in the order in which - they were registered. - */ - sequence< XLegendEntry > getEntries(); }; } ; // chart2 diff --git a/offapi/com/sun/star/chart2/XLegendEntry.idl b/offapi/com/sun/star/chart2/XLegendEntry.idl deleted file mode 100644 index 579c453db..000000000 --- a/offapi/com/sun/star/chart2/XLegendEntry.idl +++ /dev/null @@ -1,30 +0,0 @@ -#ifndef com_sun_star_chart_XLegendEntry_idl -#define com_sun_star_chart_XLegendEntry_idl - -#include <com/sun/star/uno/XInterface.idl> - -#include "com/sun/star/chart2/XTitle.idl" -#include "com/sun/star/chart2/LegendSymbolStyle.idl" - -module com -{ -module sun -{ -module star -{ -module chart2 -{ - -/** Object type for Legend. - */ -interface XLegendEntry : ::com::sun::star::uno::XInterface -{ - // no methods, currently only used for type safety -}; - -} ; // chart2 -} ; // com -} ; // sun -} ; // star - -#endif diff --git a/offapi/com/sun/star/chart2/XLegendSymbolProvider.idl b/offapi/com/sun/star/chart2/XLegendSymbolProvider.idl deleted file mode 100644 index 56b2b082d..000000000 --- a/offapi/com/sun/star/chart2/XLegendSymbolProvider.idl +++ /dev/null @@ -1,35 +0,0 @@ -#ifndef com_sun_star_chart_XLegendSymbolProvider_idl -#define com_sun_star_chart_XLegendSymbolProvider_idl - -#include <com/sun/star/uno/XInterface.idl> -#include <com/sun/star/drawing/XShape.idl> - -module com -{ -module sun -{ -module star -{ -module chart2 -{ - -/** - */ -interface XLegendSymbolProvider : ::com::sun::star::uno::XInterface -{ - /** The returned shape is used for display in the legend. It may - also be used for display at a data points. - - <p>The shape returned here, will be resized using - <member scope="com::sun::star::drawing">XShape::setSize</member> - to fit the available space in the legend.</p> - */ - com::sun::star::drawing::XShape getSymbol(); -}; - -} ; // chart2 -} ; // com -} ; // sun -} ; // star - -#endif diff --git a/offapi/com/sun/star/chart2/XPlotter.idl b/offapi/com/sun/star/chart2/XPlotter.idl deleted file mode 100644 index 4545befa4..000000000 --- a/offapi/com/sun/star/chart2/XPlotter.idl +++ /dev/null @@ -1,128 +0,0 @@ -#ifndef com_sun_star_chart2_XPlotter_idl -#define com_sun_star_chart2_XPlotter_idl - -#ifndef __com_sun_star_uno_XInterface_idl__ -#include <com/sun/star/uno/XInterface.idl> -#endif - -#ifndef __com_sun_star_drawing_XShapes_idl__ -#include <com/sun/star/drawing/XShapes.idl> -#endif - -#ifndef _com_sun_star_drawing_XShapeGrouper_idl_ -#include <com/sun/star/drawing/XShapeGrouper.idl> -#endif - -#ifndef _com_sun_star_lang_xmultiservicefactory_idl_ -#include <com/sun/star/lang/XMultiServiceFactory.idl> -#endif - -#ifndef com_sun_star_chart2_CoordinateSystemTypeID_idl -#include <com/sun/star/chart2/CoordinateSystemTypeID.idl> -#endif - -#ifndef com_sun_star_chart2_ScaleData_idl -#include <com/sun/star/chart2/ScaleData.idl> -#endif - -#ifndef com_sun_star_chart2_XTransformation_idl -#include <com/sun/star/chart2/XTransformation.idl> -#endif - -//============================================================================= - -module com { module sun { module star { module chart2 { - -//============================================================================= - -/** The main task of a Plotter is to create graphic objects which have a certain - logic place within a coordinate system. For example the bars of a bar chart - are such graphic objects. The created graphic objects need to be of type - com::sun::star::drawing::Shape. - - <p> - Within the chart application we differentiate between two "types" of shapes - which can be created by a Plotter. - The first type are shapes which are completely defined by coordinates - in the logic coordinate system and will be positioned within this logic - coordinate system. Those shapes are called "logic shapes" - or "logically placed shapes". For example a rectangle of a bar chart - is a "logic shape". - </p> - - <p> - The second type of shapes are those who can not or should not - be placed in the logic coordinate system. For example consider a three - dimensional bar chart with text labels for each data point. You probably - would not like to place the text shapes as three dimensional objects within - the logic coordinate system, rather you would like to position the texts as - two dimensional objects on the two dimensional final page. Those shapes are - called "illogic shapes" in contrast to "logic shapes". - "Illogic shapes" are always two dimensional and placed on the documents page. - </p> - - <p> - For each type of shapes the Plotter gets one Target where it can add - or remove shapes. - </p> - - <p> A Plotter is not allowed to set the property "Transformation" on a - shape as this will be done elsewhere. - </p> -*/ - -//@ todo ? should this be a XComponent? -interface XPlotter : ::com::sun::star::uno::XInterface -{ - //------------------------------------------------------------------------- - /** Each Plotter implicit uses a certain type of logic coordinate - system for interpreting data as coordinates. - For example a bar-chart uses a Cartesian coordinate system for - interpreting x- and y-values from a spreadsheet as Cartesian - coordinates. In contrast the pie chart assumes a polar coordinate - system. - The type of this implicit used source coordinate system has to be - returned here. - The returned type of an implementation never changes. - */ - CoordinateSystemTypeID getCoordinateSystemTypeID(); - - //------------------------------------------------------------------------- - /** For each type of shapes ("logic" or "illogic") there exists one - container. The Plotter will create shapes and then add (or remove) - them from these containers. - - <p> - The lifetime of the container has to be handled by the calling object. The - calling object must assure that the container will exist longer than the - XPlotter Object. - </p> - ... - */ - void init( [in] com::sun::star::drawing::XShapes xLogicTarget - , [in] com::sun::star::drawing::XShapes xFinalTarget - , [in] com::sun::star::lang::XMultiServiceFactory xFactory ); - - //------------------------------------------------------------------------- - /** For each dimension of the "logic source coordinate system" the - XPlotter object needs a Scale to decide which shapes - need to be created and maybe logically clipped. The XPlotter object - becomes the new owner of the given scales and directions and needs to keep - them alive. Nobody else will change them. - Pay attention that a "Scale" can have several breaks. - */ - void setScales( [in] sequence< ScaleData > rScales); - - //------------------------------------------------------------------------- - /** - */ - void setTransformation( [in] XTransformation xTransformationToLogicTarget - , [in] XTransformation xTransformationToFinalPage ); -}; - -//============================================================================= - -}; }; }; }; - -#endif - diff --git a/offapi/com/sun/star/chart2/XUndoHelper.idl b/offapi/com/sun/star/chart2/XUndoHelper.idl deleted file mode 100644 index b5d82c25f..000000000 --- a/offapi/com/sun/star/chart2/XUndoHelper.idl +++ /dev/null @@ -1,89 +0,0 @@ -/************************************************************************* - * - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * - * Copyright 2000, 2010 Oracle and/or its affiliates. - * - * OpenOffice.org - a multi-platform office productivity suite - * - * This file is part of OpenOffice.org. - * - * OpenOffice.org is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License version 3 - * only, as published by the Free Software Foundation. - * - * OpenOffice.org is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License version 3 for more details - * (a copy is included in the LICENSE file that accompanied this code). - * - * You should have received a copy of the GNU Lesser General Public License - * version 3 along with OpenOffice.org. If not, see - * <http://www.openoffice.org/license.html> - * for a copy of the LGPLv3 License. - * - ************************************************************************/ -#ifndef com_sun_star_chart2_XUndoHelper_idl -#define com_sun_star_chart2_XUndoHelper_idl - -#include <com/sun/star/uno/XInterface.idl> -#include <com/sun/star/frame/XModel.idl> - -module com -{ -module sun -{ -module star -{ -module chart2 -{ - -/** An interface for storing frame::XModel objects for container undo. - */ -interface XUndoHelper : ::com::sun::star::uno::XInterface -{ - /** call this before you change the xCurrentModel - - @return a clone of the current model that can later be used to - restore the state of a changed model - */ - ::com::sun::star::frame::XModel getModelCloneForUndo( - [in] ::com::sun::star::frame::XModel xModelBeforeChange ); - - /** call this before you change the xCurrentModel. You can pass - parameters to refine the information that is cloned. - - @return a clone of the current model that can later be used to - restore the state of a changed model using the same - arguments in applyModelContentWithArguments. - */ -// ::com::sun::star::frame::XModel getModelCloneForUndoWithArguments( -// [in] ::com::sun::star::frame::XModel xModelBeforeChange, -// [in] sequence< ::com::sun::star::beans::PropertyValue > aArguments ); - - /** apply the content of xModelToCopyFrom to the XModel in xModelToChange - */ - void applyModelContent( [inout] ::com::sun::star::frame::XModel xModelToChange, - [in] ::com::sun::star::frame::XModel xModelToCopyFrom ); - - /** apply the content of xModelToCopyFrom to the XModel in - xModelToChange. You can pass parameters to refine the - information that is applied. - - <p>Note that xModelToCopyFrom should have been created with - getModelCloneForUndoWithArguments using the same arguments as - are passed here.</p> - */ -// void applyModelContentWithArguments( -// [inout] ::com::sun::star::frame::XModel xModelToChange, -// [in] ::com::sun::star::frame::XModel xModelToCopyFrom, -// [in] sequence< ::com::sun::star::beans::PropertyValue > aArguments ); -}; - -} ; // chart2 -} ; // com -} ; // sun -} ; // star - -#endif diff --git a/offapi/com/sun/star/chart2/XUndoManager.idl b/offapi/com/sun/star/chart2/XUndoManager.idl deleted file mode 100644 index 25577d11a..000000000 --- a/offapi/com/sun/star/chart2/XUndoManager.idl +++ /dev/null @@ -1,111 +0,0 @@ -/************************************************************************* - * - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * - * Copyright 2000, 2010 Oracle and/or its affiliates. - * - * OpenOffice.org - a multi-platform office productivity suite - * - * This file is part of OpenOffice.org. - * - * OpenOffice.org is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License version 3 - * only, as published by the Free Software Foundation. - * - * OpenOffice.org is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License version 3 for more details - * (a copy is included in the LICENSE file that accompanied this code). - * - * You should have received a copy of the GNU Lesser General Public License - * version 3 along with OpenOffice.org. If not, see - * <http://www.openoffice.org/license.html> - * for a copy of the LGPLv3 License. - * - ************************************************************************/ -#ifndef com_sun_star_chart2_XUndoManager_idl -#define com_sun_star_chart2_XUndoManager_idl - -#include <com/sun/star/uno/XInterface.idl> -#include <com/sun/star/frame/XModel.idl> -#include <com/sun/star/beans/PropertyValue.idl> - -module com -{ -module sun -{ -module star -{ -module chart2 -{ - -/** An interface for undo functionality based on passing frame::XModel - objects. - */ -interface XUndoManager : ::com::sun::star::uno::XInterface -{ - /** call this before you change the xCurrentModel - */ - void preAction( [in] ::com::sun::star::frame::XModel xModelBeforeChange ); - - /** call this before you change the xCurrentModel. You can pass - parameters to refine the undo action. - */ - void preActionWithArguments( [in] ::com::sun::star::frame::XModel xModelBeforeChange, - [in] sequence< ::com::sun::star::beans::PropertyValue > aArguments ); - - /** call this after you successfully did changes to your current model - */ - void postAction( [in] string aUndoText ); - /** call this if you aborted the current action. - */ - void cancelAction(); - - /** same as cancelAction() but restores the given model to the - state set in preAction. This is useful for cancellation in - live-preview dialogs. - */ - void cancelActionWithUndo( [inout] ::com::sun::star::frame::XModel xModelToRestore ); - - /** give the current model to be put into the redo-stack - */ - void undo( [inout] ::com::sun::star::frame::XModel xCurrentModel ); - - /** give the current model to be put into the undo-stack - */ - void redo( [inout] ::com::sun::star::frame::XModel xCurrentModel ); - - /** @return <TRUE/> if the undo stack is not empty, i.e. a call to undo() will succeed - */ - boolean undoPossible(); - - /** @return <TRUE/> if the redo stack is not empty, i.e. a call to redo() will succeed - */ - boolean redoPossible(); - - /** Retrieves the undo string for the most recent undo step - */ - string getCurrentUndoString(); - - /** Retrieves the redo string for the most recent undo step - */ - string getCurrentRedoString(); - - /** Retrieves the undo strings of all stored undo actions in - chronological order starting with the most recent. - */ - sequence< string > getAllUndoStrings(); - - /** Retrieves the redo strings of all stored undo actions in - chronological order starting with the most recent. - */ - sequence< string > getAllRedoStrings(); -}; - -} ; // chart2 -} ; // com -} ; // sun -} ; // star - -#endif diff --git a/offapi/com/sun/star/chart2/makefile.mk b/offapi/com/sun/star/chart2/makefile.mk index dcce7e71d..873bb985d 100644 --- a/offapi/com/sun/star/chart2/makefile.mk +++ b/offapi/com/sun/star/chart2/makefile.mk @@ -41,20 +41,14 @@ PRJNAME=offapi IDLFILES= \ AxisType.idl \ AxisOrientation.idl \ - Break.idl \ CoordinateSystemTypeID.idl \ CurveStyle.idl \ DataPointGeometry3D.idl \ DataPointLabel.idl \ - ExplicitIncrementData.idl \ - ExplicitScaleData.idl \ - ExplicitSubIncrement.idl \ FillBitmap.idl \ IncrementData.idl \ InterpretedData.idl \ - LegendExpansion.idl \ LegendPosition.idl \ - LegendSymbolStyle.idl \ LightSource.idl \ PieChartOffsetMode.idl \ RelativePosition.idl \ @@ -66,7 +60,7 @@ IDLFILES= \ SymbolStyle.idl \ TickmarkStyle.idl \ TransparencyStyle.idl \ - ViewLegendEntry.idl \ + XAnyDescriptionAccess.idl\ XAxis.idl \ XCoordinateSystem.idl \ XCoordinateSystemContainer.idl \ @@ -89,9 +83,6 @@ IDLFILES= \ XInternalDataProvider.idl \ XLabeled.idl \ XLegend.idl \ - XLegendEntry.idl \ - XLegendSymbolProvider.idl \ - XPlotter.idl \ XRegressionCurve.idl \ XRegressionCurveCalculator.idl \ XRegressionCurveContainer.idl \ @@ -101,9 +92,6 @@ IDLFILES= \ XTitle.idl \ XTitled.idl \ XTransformation.idl \ - XUndoManager.idl \ - XUndoSupplier.idl \ - XUndoHelper.idl # --- Targets ------------------------------------------------------ diff --git a/offapi/com/sun/star/deployment/XExtensionManager.idl b/offapi/com/sun/star/deployment/XExtensionManager.idl index 2103f488b..7bbff439b 100644 --- a/offapi/com/sun/star/deployment/XExtensionManager.idl +++ b/offapi/com/sun/star/deployment/XExtensionManager.idl @@ -281,6 +281,8 @@ interface XExtensionManager Added extensions will be added to the database and removed extensions will be removed from the database. + The active extensions are determined. That is, shared or bundled extensions + are not necessaryly registered (<member>XPackage::registerPackage</member>). @return If true - then at least one extension was removed or added. Otherwise @@ -295,6 +297,25 @@ interface XExtensionManager com::sun::star::lang::IllegalArgumentException); + /** synchronizes the special bundled_prereg repository, which is based on + the bundled extensions and has its registration data folder at + $BUNDLED_EXTENSIONS_PREREG (for example openoffice.org3/share/prereg). + + All bundled extensions are registered (<member>XPackage::registerPackage</member>). + The active extensions are NOT determined, because this function only works + with bundled extensions. + + This function is intended to be called during the installation of OOo. + OOo will copy parts of the registration data folder to the user installation at the + first startup. + */ + + void synchronizeBundledPrereg( + [in] com::sun::star::task::XAbortChannel xAbortChannel, + [in] com::sun::star::ucb::XCommandEnvironment xCmdEnv ) + raises (DeploymentException); + + /** returns all extensions which are currently not in use because the user did not accept the license. diff --git a/offapi/com/sun/star/deployment/XPackage.idl b/offapi/com/sun/star/deployment/XPackage.idl index 6f0ec81ba..0395a6594 100644..100755 --- a/offapi/com/sun/star/deployment/XPackage.idl +++ b/offapi/com/sun/star/deployment/XPackage.idl @@ -262,6 +262,14 @@ interface XPackage string getDescription() raises (ExtensionRemovedException); + /** returns a string containing the license text. + + @return + license + */ + string getLicenseText() + raises (ExtensionRemovedException); + /** returns a sequence of update information URLs. The sequence may be empty in case no update information is available. diff --git a/offapi/com/sun/star/deployment/XPackageRegistry.idl b/offapi/com/sun/star/deployment/XPackageRegistry.idl index 2740dbbd1..2db411d71 100644 --- a/offapi/com/sun/star/deployment/XPackageRegistry.idl +++ b/offapi/com/sun/star/deployment/XPackageRegistry.idl @@ -115,6 +115,13 @@ interface XPackageRegistry supported <type>XPackageTypeInfo</type>s. */ sequence<XPackageTypeInfo> getSupportedPackageTypes(); + + void packageRemoved( + [in] string url, + [in] string mediaType) + raises (DeploymentException, + com::sun::star::lang::IllegalArgumentException); + }; }; }; }; }; diff --git a/offapi/com/sun/star/document/EmptyUndoStackException.idl b/offapi/com/sun/star/document/EmptyUndoStackException.idl new file mode 100755 index 000000000..35ff85ad2 --- /dev/null +++ b/offapi/com/sun/star/document/EmptyUndoStackException.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_document_EmptyUndoStackException_idl__ +#define __com_sun_star_document_EmptyUndoStackException_idl__ + +#include <com/sun/star/util/InvalidStateException.idl> + +//================================================================================================================== + +module com { module sun { module star { module document { + +//================================================================================================================== + +/** is raised when an operation is attemption at an XUndoManager which requires a non-empty stack + of undo actions, and this requirement is not fullfilled. + */ +exception EmptyUndoStackException : ::com::sun::star::util::InvalidStateException +{ +}; + +//================================================================================================================== + +}; }; }; }; + +//================================================================================================================== + +#endif diff --git a/offapi/com/sun/star/document/MediaDescriptor.idl b/offapi/com/sun/star/document/MediaDescriptor.idl index 8995193ba..48b00b874 100644 --- a/offapi/com/sun/star/document/MediaDescriptor.idl +++ b/offapi/com/sun/star/document/MediaDescriptor.idl @@ -39,6 +39,10 @@ #include <com/sun/star/awt/Rectangle.idl> #endif +#ifndef __com_sun_star_beans_NamedValue_idl__ +#include <com/sun/star/beans/NamedValue.idl> +#endif + #ifndef __com_sun_star_util_URL_idl__ #include <com/sun/star/util/URL.idl> #endif @@ -144,7 +148,7 @@ published service MediaDescriptor <p> For extensibility, it is recommended to use values of type - sequence<com.sun.star.beans.PropertyValue> with this property. + sequence<com.sun.star.beans.NamedValue> with this property. </p> */ [optional,property] any ComponentData; @@ -164,6 +168,23 @@ published service MediaDescriptor [optional,property] string DocumentTitle; //------------------------------------------------------------------------- + /** encryption information for encryption/decryption of documents + + <p> + It contains the necessary information for encryption/decryption of + a component (if necessary). + If neither password nor encryption data is specified, loading of + a password protected document will fail, storing will be done without + encryption. If both are provided, the encryption data is used + ( if the filter supports it ). + </p> + <p> + The encryption data is generated based on the password. + </p> + */ + [optional,property] sequence< ::com::sun::star::beans::NamedValue > EncryptionData; + + //------------------------------------------------------------------------- /** same as <member>MediaDescriptor::URL</member> <p> @@ -366,8 +387,10 @@ published service MediaDescriptor <p> It contains a password for loading or storing a component (if necessary). - If no password is specified, loading of a password protected document - will fail, storing will be done without encryption. + If neither password nor encryption data is specified, loading of + a password protected document will fail, storing will be done without + encryption. If both are provided, the encryption data is used + ( if the filter supports it ). </p> */ [optional,property] string Password; diff --git a/offapi/com/sun/star/document/OfficeDocument.idl b/offapi/com/sun/star/document/OfficeDocument.idl index 1ab2816c9..90c36d126 100644 --- a/offapi/com/sun/star/document/OfficeDocument.idl +++ b/offapi/com/sun/star/document/OfficeDocument.idl @@ -27,53 +27,19 @@ #ifndef __com_sun_star_document_OfficeDocument_idl__ #define __com_sun_star_document_OfficeDocument_idl__ -#ifndef __com_sun_star_frame_XModel_idl__ #include <com/sun/star/frame/XModel.idl> -#endif - -#ifndef __com_sun_star_util_XModifiable_idl__ #include <com/sun/star/util/XModifiable.idl> -#endif - -#ifndef __com_sun_star_frame_XStorable_idl__ #include <com/sun/star/frame/XStorable.idl> -#endif - -#ifndef __com_sun_star_view_XPrintable_idl__ #include <com/sun/star/view/XPrintable.idl> -#endif - -#ifndef __com_sun_star_view_XPrintJobBroadcaster_idl__ #include <com/sun/star/view/XPrintJobBroadcaster.idl> -#endif - -#ifndef __com_sun_star_document_XEventBroadcaster_idl__ #include <com/sun/star/document/XEventBroadcaster.idl> -#endif - -#ifndef __com_sun_star_document_XEventsSupplier_idl__ #include <com/sun/star/document/XEventsSupplier.idl> -#endif - -#ifndef __com_sun_star_document_XDocumentInfoSupplier_idl__ #include <com/sun/star/document/XDocumentInfoSupplier.idl> -#endif - -#ifndef __com_sun_star_document_XViewDataSupplier_idl__ #include <com/sun/star/document/XViewDataSupplier.idl> -#endif - -#ifndef __com_sun_star_document_XDocumentEventBroadcaster_idl__ #include <com/sun/star/document/XDocumentEventBroadcaster.idl> -#endif - -#ifndef __com_sun_star_document_XEmbeddedScripts_idl__ #include <com/sun/star/document/XEmbeddedScripts.idl> -#endif - -#ifndef __com_sun_star_document_XDocumentPropertiesSupplier_idl__ #include <com/sun/star/document/XDocumentPropertiesSupplier.idl> -#endif +#include <com/sun/star/document/XUndoManagerSupplier.idl> //============================================================================= @@ -192,6 +158,10 @@ published service OfficeDocument */ [optional] interface XDocumentPropertiesSupplier; + /** provides access to the document's undo manager. + */ + [optional] interface XUndoManagerSupplier; + //------------------------------------------------------------------------- /** controls the focus behavior of the form controls in the document diff --git a/offapi/com/sun/star/document/UndoContextNotClosedException.idl b/offapi/com/sun/star/document/UndoContextNotClosedException.idl new file mode 100755 index 000000000..811feb394 --- /dev/null +++ b/offapi/com/sun/star/document/UndoContextNotClosedException.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_document_UndoContextNotClosedException_idl__ +#define __com_sun_star_document_UndoContextNotClosedException_idl__ + +#include <com/sun/star/util/InvalidStateException.idl> + +//================================================================================================================== + +module com { module sun { module star { module document { + +//================================================================================================================== + +/** is thrown when an operation is attempted at an <type>XUndoManager</type> which requires all undo + contexts to be closed, but this requirement is not fullfilled. + */ +exception UndoContextNotClosedException : ::com::sun::star::util::InvalidStateException +{ +}; + +//================================================================================================================== + +}; }; }; }; + +//================================================================================================================== + +#endif diff --git a/offapi/com/sun/star/document/UndoFailedException.idl b/offapi/com/sun/star/document/UndoFailedException.idl new file mode 100755 index 000000000..9fbaec7ee --- /dev/null +++ b/offapi/com/sun/star/document/UndoFailedException.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_document_UndoFailedException_idl__ +#define __com_sun_star_document_UndoFailedException_idl__ + +#include <com/sun/star/uno/Exception.idl> + +//================================================================================================================== + +module com { module sun { module star { module document { + +//================================================================================================================== + +/** thrown when reverting to re-applying an undoable action fails. + + @see XUndoAction::undo + @see XUndoManager::undo + */ +exception UndoFailedException : ::com::sun::star::uno::Exception +{ + /** describes the reason why the operation failed. Usually, this member will carry an exception. + */ + any Reason; +}; + +//================================================================================================================== + +}; }; }; }; + +//================================================================================================================== + +#endif diff --git a/offapi/com/sun/star/document/UndoManagerEvent.idl b/offapi/com/sun/star/document/UndoManagerEvent.idl new file mode 100755 index 000000000..55928a17b --- /dev/null +++ b/offapi/com/sun/star/document/UndoManagerEvent.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_document_UndoManagerEvent_idl__ +#define __com_sun_star_document_UndoManagerEvent_idl__ + +#include <com/sun/star/lang/EventObject.idl> + +//================================================================================================================== + +module com { module sun { module star { module document { + +//================================================================================================================== + +/** is an event sent by an <type>XUndoManager</type> implementation when the Undo/Redo stacks of the manager are + modified. + @see XUndoManager + @see XUndoManagerListener + @see XUndoAction + */ +struct UndoManagerEvent : ::com::sun::star::lang::EventObject +{ + /** the title of the undo action which is described by the event + @see XUndoAction::Title + */ + string UndoActionTitle; + + /** denotes the number of Undo contexts which are open, and not yet closed, at the time the event is fired. + @see XUndoManager::enterUndoContext + */ + long UndoContextDepth; +}; + +//================================================================================================================== + +}; }; }; }; + +//================================================================================================================== + +#endif diff --git a/offapi/com/sun/star/document/XDocumentEventBroadcaster.idl b/offapi/com/sun/star/document/XDocumentEventBroadcaster.idl index 57ea29a7a..61f4e49b8 100644 --- a/offapi/com/sun/star/document/XDocumentEventBroadcaster.idl +++ b/offapi/com/sun/star/document/XDocumentEventBroadcaster.idl @@ -1,6 +1,6 @@ /************************************************************************* * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * + * * Copyright 2000, 2010 Oracle and/or its affiliates. * * OpenOffice.org - a multi-platform office productivity suite @@ -35,11 +35,11 @@ #include <com/sun/star/document/DocumentEvent.idl> #endif -#ifndef __com_sun_star_lang_IllegalArgumentException_idl__ +#ifndef __com_sun_star_lang_IllegalArgumentException_idl__ #include <com/sun/star/lang/IllegalArgumentException.idl> #endif -#ifndef __com_sun_star_lang_NoSupportException_idl__ +#ifndef __com_sun_star_lang_NoSupportException_idl__ #include <com/sun/star/lang/NoSupportException.idl> #endif @@ -118,8 +118,9 @@ interface XDocumentEventBroadcaster //============================================================================= -}; }; }; }; +}; }; }; }; //============================================================================= #endif + diff --git a/offapi/com/sun/star/document/XUndoAction.idl b/offapi/com/sun/star/document/XUndoAction.idl new file mode 100755 index 000000000..88b4f3f04 --- /dev/null +++ b/offapi/com/sun/star/document/XUndoAction.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_document_XUndoAction_idl__ +#define __com_sun_star_document_XUndoAction_idl__ + +#include <com/sun/star/uno/XInterface.idl> +#include <com/sun/star/document/UndoFailedException.idl> + +//================================================================================================================== + +module com { module sun { module star { module document { + +//================================================================================================================== + +/** represents a single (undoable) action on a document + */ +interface XUndoAction +{ + /** reverts the action represented by the instance + + @throws UndoFailedException + if reverting the action failed. In this case, the caller should assume that this is a permanent failure, + and take appropriate action, such as discarding the <code>XUndoAction</code> instance, and any possibly + depending instances. + */ + void undo() + raises ( ::com::sun::star::document::UndoFailedException + ); + + /** repeats the action represented by the instance, after it had previously been reverted. + + @throws UndoFailedException + if repeating the action failed. In this case, the caller should assume that this is a permanent failure, + and take appropriate action, such as discarding the <code>XUndoAction</code> instance, and any possibly + depending instances. + */ + void redo() + raises ( ::com::sun::star::document::UndoFailedException + ); + + /** is the human-readable, localized description of the action. + */ + [attribute, readonly] string Title; +}; + +//================================================================================================================== + +}; }; }; }; + +//================================================================================================================== + +#endif diff --git a/offapi/com/sun/star/document/XUndoManager.idl b/offapi/com/sun/star/document/XUndoManager.idl new file mode 100755 index 000000000..edae819ff --- /dev/null +++ b/offapi/com/sun/star/document/XUndoManager.idl @@ -0,0 +1,337 @@ +/************************************************************************* + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +#ifndef __com_sun_star_document_XUndoManager_idl__ +#define __com_sun_star_document_XUndoManager_idl__ + +#include <com/sun/star/document/EmptyUndoStackException.idl> +#include <com/sun/star/document/UndoContextNotClosedException.idl> +#include <com/sun/star/document/UndoFailedException.idl> +#include <com/sun/star/util/InvalidStateException.idl> +#include <com/sun/star/util/XLockable.idl> +#include <com/sun/star/container/XChild.idl> +#include <com/sun/star/lang/IllegalArgumentException.idl> +#include <com/sun/star/lang/WrappedTargetException.idl> + +//================================================================================================================== + +module com { module sun { module star { module document { + +interface XUndoAction; +interface XUndoManagerListener; + +//================================================================================================================== + +/** provides access to the undo/redo stacks of a document + + <h3>Undo</h3> + <p>Changes to a document usually result in recording of information how to undo those changes, if desired. A so-called + undo action records the information how to undo a single change. Undo actions are maintained in a stack, so that + the changes they represent can be undo in the reverse order they have originally been applied.</p> + + <h3>Redo</h3> + <p>Additionally, the Undo manager manages a Redo stack: Actions which are undone are moved from the Undo to the Redo + stack, so it is possible to re-apply the changes to the document.</p> + + <h3>Undo contexts</h3> + <p>For collecting multiple changes in a single undo action, so-called Undo contexts are provided. When an Undo + context is entered, all subsequently added Undo actions are not pushed onto the undo stack directly, but considered + a sub action of the Undo context. Once the Undo context is left, a single undo action is pushed onto the undo stack, + which comprises all those single Undo actions.<br/> + Undo contexts can be arbitrarily nested.</p> + + <h3>Hidden Undo actions</h3> + <p>Hidden Undo actions are those which in no observable way contribute to the undo stack. That is, + any method retrieving information about the stack will behave as if the undo action does not exist. Nonetheless, + calling <member>undo</member> respectively <member>redo</member> will include those actions.<br/> + Hidden Undo actions can be created by calling <member>enterHiddenUndoContext</member>, following by + <member>leaveUndoContext</member>.</p> + + <a name="locking"></a> + <h3>Locking</h3> + <p>An Undo manager can be locked and unlocked, using the <member>XLockable::lock</member> and + <member>XLockable::unlock</member> methods. When it is locked, then every attempt to add an undo action, or to + enter or leave an Undo context, will be silently ignored.</p> + */ +interface XUndoManager +{ + /** allows <a href="#locking">locking</a> the undo manager. + */ + interface ::com::sun::star::util::XLockable; + + /** allows accessing the component, usually a document, which the undo manager works for. + + <p><member scope="com::sun::star::container">XChild::setParent</member> is not supported, and will throw + an <type scope="com::sun::star::lang">NoSupportException</type>.</p> + */ + interface ::com::sun::star::container::XChild; + + /** enters a new undo context. + + <p>A new undo action will be added to the undo stack, with the title given as <code>i_title</code>. As long + as the context is not left, every undo action added to the stack will be treated as sub action. This means + it will not be directly accessible at the Undo manager, not appear in any user interface, and cannot be + separately undone or re-done.</p> + + <p>Each call to <code>enterUndoContext</code> must be paired by a call to <member>leaveUndoContext</member>, + otherwise, the document's undo stack is left in an inconsistent state.</p> + + <p>Undo contexts can be nested, i.e. it is legitimate to call <code>enterUndoContext</code> and + <member>enterHiddenUndoContext</member> multiple times without calling <member>leaveUndoContext</member> inbetween.</p> + + @see leaveUndoContext + */ + void enterUndoContext( + [in] string i_title + ); + + /** enters a new undo context, creating a hidden undo action. + + <p>A hidden undo action does not, in any visible way, contribute to the undo stack. This means + that + <ul><li>Calling <member>undo</member> when the top-element is a hidden undo action will transparently + undo this action, and also undo the new top element of the stack.</li> + <li>Calling <member>redo</member> when the top-element is a hidden action will transparently + redo this action, and also redo the new top element of the stack.</li> + <li>In any user interface presenting the current Undo or Redo actions to the user, a hidden + action will not be listed.</p> + </ul> + + <p>A new undo action will be added to the undo stack. As long as the context is not left, every undo action + added to the stack will be treated as sub action. This means it will not be directly accessible at the undo + manager, not appear in any user interface, and cannot be separately undone or re-done.</p> + + <p>Each call to <code>enterHiddenUndoContext</code> must be paired by a call to <member>leaveUndoContext</member>, + otherwise, the document's undo stack is left in an inconsistent state.</p> + + <p>Undo contexts can be nested, i.e. it is legitimate to call <member>enterUndoContext</member> and + <code>enterHiddenUndoContext</code> multiple times without calling <member>leaveUndoContext</member> inbetween.</p> + + @throws EmptyUndoStackException + if the undo stack is currently empty, in which case it is impossible to push a hidden undo action onto + it. + + @see enterUndoContext + @see leaveUndoContext + */ + void enterHiddenUndoContext() + raises( EmptyUndoStackException ); + + /** leaves the undo context previously opened via <member>enterUndoContext</member> respectively + <member>enterHiddenUndoContext</member>. + + <p>If no undo action has been added since the context has been opened, the context is not only left, + but silently removed, and does not contribute to the undo stack at all. In this case, possible + listeners will be notified via <member>XUndoManagerListener::cancelledContext</member>.</p> + + <p>Otherwise, the undo context will be closed, and added to the Undo stack; the redo stack will be cleared, + and listeners will be notified via <member>XUndoManagerListener::leftContext</member> resp. + <member>XUndoManagerListener::leftHiddenContext</member></p> + + @throws ::com::sun::star::util::InvalidStateException + if no undo context is currently open. + + @see enterUndoContext + @see enterHiddenUndoContext + */ + void leaveUndoContext() + raises( ::com::sun::star::util::InvalidStateException ); + + /** adds the given undo action to the undo stack. + + <p>The redo stack is cleared when a new action is pushed onto the undo stack.</p> + + <p>The Undo manager takes ownership of any actions pushed onto the undo stack. This means that if the + action is finally removed from the Undo manager's control (e.g. by calling <member>clear</member> resp. + <member>clearRedo</member>), it will be disposed, as long as it supports the <member scope="com::sun::star::lang">XComponent</member> + interface.</p> + + <p>If the Undo manager is <a href="#locking">locked</a> at the moment the method is called, the call will be ignored, and the undo action + will immediately be disposed, if applicable.</p> + + @throws ::com::sun::star::lang::IllegalArgumentException + if the given undo action is <NULL/>. + */ + void addUndoAction( + [in] XUndoAction i_action + ) + raises( ::com::sun::star::lang::IllegalArgumentException ); + + /** reverts the most recent action on the document. + + <p>Effectively, invoking this method will + <ul><li>invoke <member>XUndoAction::undo</member> on the top-most action of the undo stack</li> + <li>move this undo action from the undo stack to the redo stack</li> + </ul></p> + + @throws EmptyUndoStackException + if the undo stack is currently empty + + @throws UndoContextNotClosedException + if there currently is an open undo context + + @throws UndoFailedException + if the invocation of <member>XUndoAction::undo</member> raised this exception. In this case, the undo stack + of the undo manager will have been cleared. + + @see redo + @see enterUndoContext + */ + void undo() + raises( ::com::sun::star::document::EmptyUndoStackException, + ::com::sun::star::document::UndoContextNotClosedException, + ::com::sun::star::document::UndoFailedException ); + + /** replays the action on the document which has most recently been undone + + <p>Effectively, invoking this method will + <ul><li>invoke <member>XUndoAction::redo</member> on the top-most action of the redo stack</li> + <li>move this action from the redo stack to the undo stack</li> + </ul></p> + + @throws EmptyUndoStackException + when the Redo stack is currently empty + + @throws UndoContextNotClosedException + if there currently is an open undo context + + @throws UndoFailedException + if the invocation of <member>XUndoAction::redo</member> raised this exception. In this case, the redo stack + of the undo manager will have been cleared. + + @see undo + */ + void redo() + raises( ::com::sun::star::document::EmptyUndoStackException, + ::com::sun::star::document::UndoContextNotClosedException, + ::com::sun::star::document::UndoFailedException ); + + /** determines whether <member>undo</member> can reasonably be expected to succeed. + + @return + <FALSE/> if and only if the undo stack is currently empty, or there is an open and not-yet-closed + undo context. + */ + boolean isUndoPossible(); + + /** determines whether <member>redo</member> can reasonably be expected to succeed. + + @return + <FALSE/> if and only if the redo stack is currently empty, or there is an open and not-yet-closed + undo context. + */ + boolean isRedoPossible(); + + /** returns the title of the top-most action on the undo stack + + @throws EmptyUndoStackException + when the undo stack is currently empty + + @see XUndoAction::Title + */ + string getCurrentUndoActionTitle() + raises( ::com::sun::star::document::EmptyUndoStackException ); + + /** returns the title of the top-most action on the Redo stack + + @throws EmptyUndoStackException + when the Redo stack is currently empty + @see XUndoAction::Title + */ + string getCurrentRedoActionTitle() + raises( ::com::sun::star::document::EmptyUndoStackException ); + + /** returns the titles of all actions currently on the undo stack, from top to bottom + @see XUndoAction::Title + */ + sequence< string > + getAllUndoActionTitles(); + + /** returns the titles of all actions currently on the Redo stack, from top to bottom + + @see XUndoAction::Title + */ + sequence< string > + getAllRedoActionTitles(); + + /** clears the undo and the redo stack. + + <p>All actions will be removed from both the Undo and the Redo stack. Actions which implement the + <type scope="com::sun::star::lang">XComponent</type> interface will be disposed.</p> + + @throws UndoContextNotClosedException + if the method is invoked while an undo context is still open + */ + void clear() + raises( ::com::sun::star::document::UndoContextNotClosedException ); + + /** clears the redo stack. + + <p>All actions will be removed from the Redo stack. Actions which implement the <type scope="com::sun::star::lang">XComponent</type> + interface will be disposed.</p> + + @throws UndoContextNotClosedException + if the method is invoked while an undo context is still open + */ + void clearRedo() + raises( ::com::sun::star::document::UndoContextNotClosedException ); + + /** resets the Undo manager + + <p>In particular, this method will + <ul><li>remove all locks from the undo manager</li> + <li>close all open undo contexts</li> + <li>clear the undo stack</li> + <li>clear the redo stack</li> + </ul></p> + + <p>Note that possible listeners will not get notifications for the single parts of the reset, i.e. there + will be no single <member>XUndoManagerListener::allActionsCleared</member>, + <member>XUndoManagerListener::leftContext</member>, etc., notifications. Instead, listeners will be + notified of the reset by calling their <member>XUndoManagerListener::resetAll</member> method.</p> + */ + void reset(); + + /** adds a listener to be notified of changes in the Undo/Redo stacks. + */ + void addUndoManagerListener( + [in] XUndoManagerListener i_listener + ); + + /** removes a previously added listener + */ + void removeUndoManagerListener( + [in] XUndoManagerListener i_listener + ); +}; + +//================================================================================================================== + +}; }; }; }; + +//================================================================================================================== + +#endif diff --git a/offapi/com/sun/star/document/XUndoManagerListener.idl b/offapi/com/sun/star/document/XUndoManagerListener.idl new file mode 100755 index 000000000..360e320ae --- /dev/null +++ b/offapi/com/sun/star/document/XUndoManagerListener.idl @@ -0,0 +1,144 @@ +/************************************************************************* + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +#ifndef __com_sun_star_document_XUndoManagerListener_idl__ +#define __com_sun_star_document_XUndoManagerListener_idl__ + +#include <com/sun/star/document/UndoManagerEvent.idl> +#include <com/sun/star/lang/XEventListener.idl> + +//================================================================================================================== + +module com { module sun { module star { module document { + +//================================================================================================================== + +/** implemented by components which want to be notified of changes in the Undo/Redo stacks of an Undo manager. + + @see XUndoManager + */ +interface XUndoManagerListener : ::com::sun::star::lang::XEventListener +{ + /** is called when an undo action is added to the undo stack. + + <p>Note that the action must not necessarily be the new top element of the stack: In case there's an + open Undo context, <member>UndoManagerEvent::UndoContextDepth</member> will be greater <code>0</code>, + and the newly added action will be subordinate of the context action.</p> + + @see XUndoManager::addUndoAction + */ + void undoActionAdded( [in] UndoManagerEvent i_event ); + + /** is called when the top-most action of the undo stack has been undone. + + @see XUndoManager::undo + */ + void actionUndone( [in] UndoManagerEvent i_event ); + + /** is called when the top-most action of the Redo stack has been re-applied. + + @see XUndoManager::redo + */ + void actionRedone( [in] UndoManagerEvent i_event ); + + /** is called when both the Undo and the Redo stack have been cleared from all Undo actions. + + @see XUndoManager::clear + */ + void allActionsCleared( [in] ::com::sun::star::lang::EventObject i_event ); + + /** is called when the the Redo stack has been cleared. + + @see XUndoManager::clearRedo + */ + void redoActionsCleared( [in] ::com::sun::star::lang::EventObject i_event ); + + /** called when the complete undo manager has been reset + */ + void resetAll( [in] ::com::sun::star::lang::EventObject i_event ); + + /** is called when a new Undo context has been entered. + + <p><member>UndoManagerEvent::UndoActionTitle</member> carries the title of the Undo context, and + <member>UndoManagerEvent::UndoContextDepth</member> the number of open Undo contexts, including the + one just entered.</p> + + @see XUndoManager::enterUndoContext + */ + void enteredContext( [in] UndoManagerEvent i_event ); + + /** is called when a new hidden Undo context has been entered. + + <p><member>UndoManagerEvent::UndoActionTitle</member> carries the title of the Undo context, and + <member>UndoManagerEvent::UndoContextDepth</member> the number of open Undo contexts, including the + one just entered.</p> + + @see XUndoManager::enterUndoContext + */ + void enteredHiddenContext( [in] UndoManagerEvent i_event ); + + /** is called when an Undo context has been left. + + <p><member>UndoManagerEvent::UndoActionTitle</member> carries the title of the Undo context, and + <member>UndoManagerEvent::UndoContextDepth</member> the number of open Undo contexts, exluding the + one just left.</p> + + @see XUndoManager::leaveUndoContext + @see leftHiddenUndocontext + @see cancelledContext + */ + void leftContext( [in] UndoManagerEvent i_event ); + + /** is calledn when a hidden Undo context has been left. + + <p><member>UndoManagerEvent::UndoActionTitle</member> is empty, as hidden Undo contexts don't have + a title.</p> + + @see XUndoManager::leaveHiddenUndoContext + @see leftContext + @see cancelledContext + */ + void leftHiddenContext( [in] UndoManagerEvent i_event ); + + /** is called when an Undo context has been left, but no actions have been added within this context. + + <p>In such a case, the context which has just been left will not contribute to the undo stack, but instead + be silently removed. Consequently, the <member>UndoManagerEvent::UndoActionTitle</member> is empty.</p> + + @see XUndoManager::leaveUndoContext + @see leftContext + @see leftHiddenContext + */ + void cancelledContext( [in] UndoManagerEvent i_event ); +}; + +//================================================================================================================== + +}; }; }; }; + +//================================================================================================================== + +#endif diff --git a/offapi/com/sun/star/document/XUndoManagerSupplier.idl b/offapi/com/sun/star/document/XUndoManagerSupplier.idl new file mode 100755 index 000000000..88a082259 --- /dev/null +++ b/offapi/com/sun/star/document/XUndoManagerSupplier.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_document_XUndoManagerSupplier_idl__ +#define __com_sun_star_document_XUndoManagerSupplier_idl__ + +#include <com/sun/star/uno/XInterface.idl> + +//================================================================================================================== + +module com { module sun { module star { module document { + +interface XUndoManager; + +//================================================================================================================== + +/** provides access to an XUndoManager. + */ +interface XUndoManagerSupplier +{ + /** returns the Undo manager associated with the component. + */ + XUndoManager getUndoManager(); +}; + +//================================================================================================================== + +}; }; }; }; + +//================================================================================================================== + +#endif diff --git a/offapi/com/sun/star/document/makefile.mk b/offapi/com/sun/star/document/makefile.mk index 7932c6ef3..d97c508c9 100644 --- a/offapi/com/sun/star/document/makefile.mk +++ b/offapi/com/sun/star/document/makefile.mk @@ -117,6 +117,14 @@ IDLFILES=\ XCodeNameQuery.idl \ XCompatWriterDocProperties.idl \ XVbaMethodParameter.idl \ + XUndoAction.idl \ + XUndoManager.idl \ + XUndoManagerListener.idl \ + XUndoManagerSupplier.idl \ + UndoManagerEvent.idl \ + EmptyUndoStackException.idl \ + UndoContextNotClosedException.idl \ + UndoFailedException.idl \ # ------------------------------------------------------------------ diff --git a/offapi/com/sun/star/embed/XEncryptionProtectedSource2.idl b/offapi/com/sun/star/embed/XEncryptionProtectedSource2.idl new file mode 100644 index 000000000..3c5fcf7f0 --- /dev/null +++ b/offapi/com/sun/star/embed/XEncryptionProtectedSource2.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_embed_XEncryptionProtectedSource2_idl__ +#define __com_sun_star_embed_XEncryptionProtectedSource2_idl__ + +#ifndef __com_sun_star_embed_XEncryptionProtectedSource_idl__ +#include <com/sun/star/embed/XEncryptionProtectedSource.idl> +#endif + +#ifndef __com_sun_star_beans_NamedValue_idl__ +#include <com/sun/star/beans/NamedValue.idl> +#endif + +//============================================================================ + +module com { module sun { module star { module embed { + +//============================================================================ +/** This interface allows to set a password for an object. + */ +published interface XEncryptionProtectedSource2: XEncryptionProtectedSource +{ + // ----------------------------------------------------------------------- + /** sets an encryption data for the object. + + @param aEncryptionData + the new encryption data + + @throws ::com::sun::star::io::IOException + in case the data could not be set + */ + void setEncryptionData( [in] sequence< ::com::sun::star::beans::NamedValue > aEncryptionData ) + raises( ::com::sun::star::io::IOException ); +}; + +//============================================================================ + +}; }; }; }; + +#endif + diff --git a/offapi/com/sun/star/embed/XHierarchicalStorageAccess2.idl b/offapi/com/sun/star/embed/XHierarchicalStorageAccess2.idl new file mode 100644 index 000000000..1fa9f3906 --- /dev/null +++ b/offapi/com/sun/star/embed/XHierarchicalStorageAccess2.idl @@ -0,0 +1,109 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ +#ifndef __com_sun_star_embed_XHierarchicalStorageAccess2_idl__ +#define __com_sun_star_embed_XHierarchicalStorageAccess2_idl__ + +#ifndef __com_sun_star_embed_XHierarchicalStorageAccess_idl__ +#include <com/sun/star/embed/XHierarchicalStorageAccess.idl> +#endif + +#ifndef __com_sun_star_beans_NamedValue_idl__ +#include <com/sun/star/beans/NamedValue.idl> +#endif + +//============================================================================ + + module com { module sun { module star { module embed { + +//============================================================================ +/** This interface extends XHierarchicalStorageAccess interface. + */ +interface XHierarchicalStorageAccess2 : XHierarchicalStorageAccess +{ + // ----------------------------------------------------------------------- + /** allows to get access to a child encrypted stream with encryption data + using hierarchical path. + + <p> + If storage does not allow any encryption this method will always throw + <type scope="com::sun::star::packages">NoEncryptionException</type>. + </p> + + <p> + In case the stream is open in readonly mode the + <method scope="com::sun::star::io">XStream::getOutputStream</method> + method will return an empty reference. + </p> + + @param sStreamPath + the path to the substream that should be open + + @param nOpenMode + a mode the stream should be open in, + can be a combination of <type>ElementModes</type> values + + @param aEncryptionData + this parameter allowes to specify an encryption data for the + stream, the data must be correct, otherwise an + exception will be thrown + + @throws ::com::sun::star::embed::InvalidStorageException + this storage is in invalid state for any reason + + @throws ::com::sun::star::lang::IllegalArgumentException + one of provided arguments is illegal + + @throws ::com::sun::star::packages::NoEncryptionException + the stream is not encrypted + + @throws ::com::sun::star::packages::WrongPasswordException + the provided password is wrong + + @throws ::com::sun::star::io::IOException + in case of io errors during stream opening + + @throws ::com::sun::star::embed::StorageWrappedTargetException + wraps other exceptions + */ + XExtendedStorageStream openEncryptedStreamByHierarchicalName( + [in] string sStreamName, + [in] long nOpenMode, + [in] sequence< ::com::sun::star::beans::NamedValue > aEncryptionData ) + raises( ::com::sun::star::embed::InvalidStorageException, + ::com::sun::star::lang::IllegalArgumentException, + ::com::sun::star::packages::NoEncryptionException, + ::com::sun::star::packages::WrongPasswordException, + ::com::sun::star::io::IOException, + ::com::sun::star::embed::StorageWrappedTargetException ); +}; + +//============================================================================ + +}; }; }; }; + +#endif + diff --git a/offapi/com/sun/star/embed/XStorage2.idl b/offapi/com/sun/star/embed/XStorage2.idl new file mode 100644 index 000000000..3a9ccce34 --- /dev/null +++ b/offapi/com/sun/star/embed/XStorage2.idl @@ -0,0 +1,165 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ +#ifndef __com_sun_star_embed_XStorage2_idl__ +#define __com_sun_star_embed_XStorage2_idl__ + +#ifndef __com_sun_star_embed_XStorage_idl__ +#include <com/sun/star/embed/XStorage.idl> +#endif + +#ifndef __com_sun_star_beans_NamedValue_idl__ +#include <com/sun/star/beans/NamedValue.idl> +#endif + + +//============================================================================ + + module com { module sun { module star { module embed { + +//============================================================================ +/** This interface extends the base XStorage interface. + */ +interface XStorage2 : XStorage +{ + // ----------------------------------------------------------------------- + /** allows to get access to a child encrypted stream with EncryptionData. + + <p> + If storage does not allow any encryption this method will always throw + <type scope="com::sun::star::packages">NoEncryptionException</type>. + </p> + + <p> + In case the stream is open in readonly mode the + <method scope="com::sun::star::io">XStream::getOutputStream</method> + method will return an empty reference. + </p> + + @param sStreamName + the name of the substream that should be open + + @param nOpenMode + a mode the stream should be open in, + can be a combination of <type>ElementModes</type> values + + @param aEncryptionData + this parameter allowes to specify an encryption data to decrypt the + stream, the encryption data must be correct, otherwise an + exception will be thrown + + @throws ::com::sun::star::embed::InvalidStorageException + this storage is in invalid state for any reason + + @throws ::com::sun::star::lang::IllegalArgumentException + one of provided arguments is illegal + + @throws ::com::sun::star::packages::NoEncryptionException + the stream is not encrypted + + @throws ::com::sun::star::packages::WrongPasswordException + the provided encryption data is wrong + + @throws ::com::sun::star::io::IOException + in case of io errors during stream opening + + @throws ::com::sun::star::embed::StorageWrappedTargetException + wraps other exceptions + */ + ::com::sun::star::io::XStream openEncryptedStream( + [in] string sStreamName, + [in] long nOpenMode, + [in] sequence< ::com::sun::star::beans::NamedValue > aEncryptionData ) + raises( ::com::sun::star::embed::InvalidStorageException, + ::com::sun::star::lang::IllegalArgumentException, + ::com::sun::star::packages::NoEncryptionException, + ::com::sun::star::packages::WrongPasswordException, + ::com::sun::star::io::IOException, + ::com::sun::star::embed::StorageWrappedTargetException ); + + // ----------------------------------------------------------------------- + /** allows to get readonly copy of a child encrypted stream with encryption + data. + + <p> + If storage does not allow any encryption this method will always throw + <type scope="com::sun::star::packages">NoEncryptionException</type>. + </p> + + <p> + The stream is open in readonly mode so the + <method scope="com::sun::star::io">XStream::getOutputStream</method> + method will return an empty reference. + </p> + + <p> + This method allows to specify encryption data for the child stream + explicitly. + </p> + + @param sStreamName + the name of the substream that should be copied + + @param aEncryptionData + this parameter allowes to specify an encryption data for the + stream, the encryption data must be correct, otherwise an + exception will be thrown + + @throws ::com::sun::star::embed::InvalidStorageException + this storage is in invalid state for any reason + + @throws ::com::sun::star::lang::IllegalArgumentException + one of provided arguments is illegal + + @throws ::com::sun::star::packages::NoEncryptionException + the stream is not encrypted + + @throws ::com::sun::star::packages::WrongPasswordException + the provided encryption data is wrong + + @throws ::com::sun::star::io::IOException + in case of io errors during stream opening + + @throws ::com::sun::star::embed::StorageWrappedTargetException + wraps other exceptions + */ + ::com::sun::star::io::XStream cloneEncryptedStream( + [in] string sStreamName, + [in] sequence< ::com::sun::star::beans::NamedValue > aEncryptionData ) + raises( ::com::sun::star::embed::InvalidStorageException, + ::com::sun::star::lang::IllegalArgumentException, + ::com::sun::star::packages::NoEncryptionException, + ::com::sun::star::packages::WrongPasswordException, + ::com::sun::star::io::IOException, + ::com::sun::star::embed::StorageWrappedTargetException ); +}; + +//============================================================================ + +}; }; }; }; + +#endif + diff --git a/offapi/com/sun/star/embed/makefile.mk b/offapi/com/sun/star/embed/makefile.mk index 349017452..8ee156af4 100644 --- a/offapi/com/sun/star/embed/makefile.mk +++ b/offapi/com/sun/star/embed/makefile.mk @@ -77,6 +77,7 @@ IDLFILES=\ XLinkCreator.idl\ XLinkFactory.idl\ XEncryptionProtectedSource.idl\ + XEncryptionProtectedSource2.idl\ XInplaceClient.idl\ XInsertObjectDialog.idl\ XWindowSupplier.idl\ @@ -89,9 +90,11 @@ IDLFILES=\ XTransferableSupplier.idl\ XComponentSupplier.idl\ XStorage.idl\ + XStorage2.idl\ XStorageRawAccess.idl\ XExtendedStorageStream.idl\ XHierarchicalStorageAccess.idl\ + XHierarchicalStorageAccess2.idl\ XHatchWindowController.idl\ XHatchWindowFactory.idl\ XHatchWindow.idl\ diff --git a/offapi/com/sun/star/formula/FormulaProperties.idl b/offapi/com/sun/star/formula/FormulaProperties.idl index 31134d153..ff48b6c1f 100644 --- a/offapi/com/sun/star/formula/FormulaProperties.idl +++ b/offapi/com/sun/star/formula/FormulaProperties.idl @@ -338,6 +338,14 @@ published service FormulaProperties /** contains the metric value of the right margin of the formula. */ [property] short RightMargin; + + //------------------------------------------------------------------------- + + /** contains the baselines offset in respect to the top of the formula rectangle + + @since OOo 3.4 + */ + [property, optional] short BaseLine; }; //============================================================================= diff --git a/offapi/com/sun/star/i18n/TransliterationModules.idl b/offapi/com/sun/star/i18n/TransliterationModules.idl index dd9a49a0f..20576ad2c 100644 --- a/offapi/com/sun/star/i18n/TransliterationModules.idl +++ b/offapi/com/sun/star/i18n/TransliterationModules.idl @@ -33,8 +33,12 @@ module com { module sun { module star { module i18n { //============================================================================= -/** Old transliteration module enumeration to use with - <member>XTransliteration::loadModule()</member> +/** Old transliteration module enumeration. + + <p> Use with <member>XTransliteration::loadModule()</member> and + <member scope="com::sun::star::util">SearchOptions::transliterateFlags</member> </p> + + <p> Note that values >=0x100 are logically or'ed with other values! </p> */ published enum TransliterationModules diff --git a/offapi/com/sun/star/inspection/LineDescriptor.idl b/offapi/com/sun/star/inspection/LineDescriptor.idl index 88c6398c1..af738e273 100644 --- a/offapi/com/sun/star/inspection/LineDescriptor.idl +++ b/offapi/com/sun/star/inspection/LineDescriptor.idl @@ -94,7 +94,7 @@ struct LineDescriptor <p>If a primary button exists for a property's UI representation (<member>HasPrimaryButton</member>), it gets the ID specified herein.</p> */ - long PrimaryButtonId; + string PrimaryButtonId; /** describes the URL of an image to display on the primary button, if any. @@ -139,7 +139,7 @@ struct LineDescriptor @see PrimaryButtonId */ - long SecondaryButtonId; + string SecondaryButtonId; /** describes the URL of an image to display on the secondary button, if any. diff --git a/offapi/com/sun/star/linguistic2/XLanguageGuessing.idl b/offapi/com/sun/star/linguistic2/XLanguageGuessing.idl index 58a77f743..237bc4d72 100644 --- a/offapi/com/sun/star/linguistic2/XLanguageGuessing.idl +++ b/offapi/com/sun/star/linguistic2/XLanguageGuessing.idl @@ -81,6 +81,7 @@ module com { module sun { module star { module linguistic2 { <li>ka : Georgian</li> <li>ko : Korean</li> <li>la : Latin</li> + <li>lb : Luxembourgish (added with OOo 3.3)</li> <li>lt : Lithuanian</li> <li>lv : Latvian</li> <li>mr : Marathi</li> @@ -96,10 +97,11 @@ module com { module sun { module star { module linguistic2 { <li>ru : Russian</li> <li>sa : Sanskrit</li> <li>sco : Scots</li> - <li>sh-YU : Serbian (written with Latin characters)</li> + <li>sh : Serbian (written with latin characters)</li> <li>sk-SK : Slovak (written with Latin characters)</li> <li>sl : Slovenian</li> <li>sq : Albanian</li> + <li>sr : Serbian (written with cyrillic characters) (added with OOo 3.4)</li> <li>sv : Swedish</li> <li>sw : Swahili</li> <li>ta : Tamil</li> diff --git a/offapi/com/sun/star/chart2/Break.idl b/offapi/com/sun/star/script/NativeObjectWrapper.idl index c45698edc..7048e312a 100644..100755 --- a/offapi/com/sun/star/chart2/Break.idl +++ b/offapi/com/sun/star/script/NativeObjectWrapper.idl @@ -24,19 +24,15 @@ * for a copy of the LGPLv3 License. * ************************************************************************/ -#ifndef com_sun_star_chart2_Break_idl -#define com_sun_star_chart2_Break_idl -//============================================================================= - -module com { module sun { module star { module chart2 { +#ifndef __com_sun_star_script_NativeObjectWrapper_idl__ +#define __com_sun_star_script_NativeObjectWrapper_idl__ //============================================================================= - -struct Break +module com { module sun { module star { module script { +struct NativeObjectWrapper { - double Min; - double Max; + any ObjectId; }; //============================================================================= diff --git a/offapi/com/sun/star/script/makefile.mk b/offapi/com/sun/star/script/makefile.mk index 8c46453df..53c95e997 100644 --- a/offapi/com/sun/star/script/makefile.mk +++ b/offapi/com/sun/star/script/makefile.mk @@ -51,7 +51,8 @@ IDLFILES=\ XLibraryQueryExecutable.idl \ ModuleSizeExceededRequest.idl\ ModuleInfo.idl\ - ModuleType.idl + ModuleType.idl\ + NativeObjectWrapper.idl # ------------------------------------------------------------------ diff --git a/offapi/com/sun/star/script/vba/VBAMacroResolver.idl b/offapi/com/sun/star/script/vba/VBAMacroResolver.idl new file mode 100755 index 000000000..de0de0d82 --- /dev/null +++ b/offapi/com/sun/star/script/vba/VBAMacroResolver.idl @@ -0,0 +1,49 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +#ifndef __com_sun_star_script_vba_VBAMacroResolver_idl__ +#define __com_sun_star_script_vba_VBAMacroResolver_idl__ + +#include <com/sun/star/script/vba/XVBAMacroResolver.idl> + +//============================================================================= + +module com { module sun { module star { module script { module vba { + +//============================================================================= + +service VBAMacroResolver : XVBAMacroResolver +{ +}; + +//============================================================================= + +}; }; }; }; }; + +//============================================================================= + +#endif diff --git a/offapi/com/sun/star/script/vba/XVBAMacroResolver.idl b/offapi/com/sun/star/script/vba/XVBAMacroResolver.idl new file mode 100755 index 000000000..5e4a251d1 --- /dev/null +++ b/offapi/com/sun/star/script/vba/XVBAMacroResolver.idl @@ -0,0 +1,94 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +#ifndef __com_sun_star_script_vba_XVBAMacroResolver_idl__ +#define __com_sun_star_script_vba_XVBAMacroResolver_idl__ + +#include <com/sun/star/lang/IllegalArgumentException.idl> + +//============================================================================= + +module com { module sun { module star { module script { module vba { + +//============================================================================= + +/** Converts VBA macro names to script URLs and vice versa. + */ +interface XVBAMacroResolver +{ + //------------------------------------------------------------------------- + + /** Returns the script URL representing the passed VBA macro name. + + @param aVBAMacroName + The VBA macro name to be resolved to a script URL. The macro name + may consist of up to three parts, divided by periods. The first two + parts are optional. The first part represents the VBA project name. + The second part represents the module name. The third part + represents the procedure name. Example: All the VBA macro names + "VBAProject.Module1.TestMacro", "Module1.TestMacro", + "VBAProject.TestMacro", and "TestMacro" may refer to the same VBA + procedure located in "Module" of the project "VBAProject". If the + module name is missing, then all modules are searched for a macro + with the specified name. + + @return + The script URL referring to the passed VBA macro. + + @throws <type scope="::com::sun::star::lang">IllegalArgumentException</type> + if a macro with the passed name does not exist. + **/ + string resolveVBAMacroToScriptURL( [in] string aVBAMacroName ) + raises (::com::sun::star::lang::IllegalArgumentException); + + //------------------------------------------------------------------------- + + /** Returns the VBA macro name for a macro with the passed script URL. + + @param aScriptURL + The script URL to be resolved to a VBA macro name. Must be a + document-local script. + + @return + The VBA macro name referring to a macro with the passed script URL. + + @throws <type scope="::com::sun::star::lang">IllegalArgumentException</type> + if a macro with the passed name does not exist. + **/ + string resolveScriptURLtoVBAMacro( [in] string aScriptURL ) + raises (::com::sun::star::lang::IllegalArgumentException); + + //------------------------------------------------------------------------- +}; + +//============================================================================= + +}; }; }; }; }; + +//============================================================================= + +#endif diff --git a/offapi/com/sun/star/script/vba/makefile.mk b/offapi/com/sun/star/script/vba/makefile.mk index 4657b587d..336be1b5e 100644 --- a/offapi/com/sun/star/script/vba/makefile.mk +++ b/offapi/com/sun/star/script/vba/makefile.mk @@ -40,10 +40,12 @@ PACKAGE=com$/sun$/star$/script$/vba IDLFILES=\ VBAEventId.idl \ VBAEventProcessor.idl \ + VBAMacroResolver.idl \ VBASpreadsheetEventProcessor.idl \ VBATextEventProcessor.idl \ XVBACompatibility.idl \ XVBAEventProcessor.idl \ + XVBAMacroResolver.idl \ XVBAModuleInfo.idl # ------------------------------------------------------------------ diff --git a/offapi/com/sun/star/sdb/XSubDocument.idl b/offapi/com/sun/star/sdb/XSubDocument.idl index c722259f2..92a09e586 100644 --- a/offapi/com/sun/star/sdb/XSubDocument.idl +++ b/offapi/com/sun/star/sdb/XSubDocument.idl @@ -52,7 +52,7 @@ interface XSubDocument or an <type scope="com::sun::star::frame">XController</type> if the sub document does not have an own model. - @raises ::com::sun::star::lang::WrappedTargetException + @throws ::com::sun::star::lang::WrappedTargetException if an error occurs during opening the document */ ::com::sun::star::lang::XComponent @@ -66,7 +66,7 @@ interface XSubDocument or an <type scope="com::sun::star::frame">XController</type> if the sub document does not have an own model. - @raises ::com::sun::star::lang::WrappedTargetException + @throws ::com::sun::star::lang::WrappedTargetException if an error occurs during opening the document */ ::com::sun::star::lang::XComponent @@ -75,7 +75,7 @@ interface XSubDocument /** stores the sub document, if it had previously been opened in either mode - @raises ::com::sun::star::lang::WrappedTargetException + @throws ::com::sun::star::lang::WrappedTargetException if an error occurs during storing the document */ void store() @@ -86,7 +86,7 @@ interface XSubDocument @return <TRUE/> if and only if the document could be closed, <FALSE/> otherwise, e.g. if the closing has been vetoed by the user. - @raises ::com::sun::star::lang::WrappedTargetException + @throws ::com::sun::star::lang::WrappedTargetException if an error occurs during closing the document */ boolean close() diff --git a/offapi/com/sun/star/sheet/FormulaMapGroupSpecialOffset.idl b/offapi/com/sun/star/sheet/FormulaMapGroupSpecialOffset.idl index e9a8fae2e..b1de8c4a1 100644 --- a/offapi/com/sun/star/sheet/FormulaMapGroupSpecialOffset.idl +++ b/offapi/com/sun/star/sheet/FormulaMapGroupSpecialOffset.idl @@ -56,7 +56,7 @@ constants FormulaMapGroupSpecialOffset constants.</li> <li>A <atom>string</atom> for literal text.</li> <li>A <atom dim="[][]">any</atom> for a literal array. The contained - values shall be of type <atom>double</atom> or atom>string</atom>. + values shall be of type <atom>double</atom> or <atom>string</atom>. Floating-point values and strings may occur together in an array.</li> <li>A struct of type <type>SingleReference</type> for a reference to a single cell in the own document.</li> @@ -142,7 +142,7 @@ constants FormulaMapGroupSpecialOffset able to parse. <p>The <member>FormulaToken::Data</member> member shall contain a - <atom>string</string> with the bad data. This string will be displayed + <atom>string</atom> with the bad data. This string will be displayed literally in the formula.</p> */ const long BAD = 7; diff --git a/offapi/com/sun/star/sheet/SheetFilterDescriptor.idl b/offapi/com/sun/star/sheet/SheetFilterDescriptor.idl index 8c748c096..ff1d7fba0 100644 --- a/offapi/com/sun/star/sheet/SheetFilterDescriptor.idl +++ b/offapi/com/sun/star/sheet/SheetFilterDescriptor.idl @@ -28,21 +28,11 @@ #ifndef __com_sun_star_sheet_SheetFilterDescriptor_idl__ #define __com_sun_star_sheet_SheetFilterDescriptor_idl__ -#ifndef __com_sun_star_sheet_XSheetFilterDescriptor_idl__ #include <com/sun/star/sheet/XSheetFilterDescriptor.idl> -#endif - -#ifndef __com_sun_star_beans_XPropertySet_idl__ +#include <com/sun/star/sheet/XSheetFilterDescriptor2.idl> #include <com/sun/star/beans/XPropertySet.idl> -#endif - -#ifndef __com_sun_star_table_TableOrientation_idl__ #include <com/sun/star/table/TableOrientation.idl> -#endif - -#ifndef __com_sun_star_table_CellAddress_idl__ #include <com/sun/star/table/CellAddress.idl> -#endif //============================================================================= @@ -62,7 +52,20 @@ published service SheetFilterDescriptor /** provides access to the collection of filter fields. */ - interface com::sun::star::sheet::XSheetFilterDescriptor; + interface XSheetFilterDescriptor; + + //------------------------------------------------------------------------- + + /** provides access to the collection of filter fields. + + <p>This interface provides a sequence of <type>TableFilterField2</type> + structures supporting a wider range of comparison operators, compared + to the <type>TableFilterField</type> structure provided by interface + <type>XSheetFilterDescriptor</type>. + + @since OOo 3.2 + */ + [optional] interface XSheetFilterDescriptor2; //------------------------------------------------------------------------- diff --git a/offapi/com/sun/star/awt/grid/ScrollBarMode.idl b/offapi/com/sun/star/sheet/SpreadsheetViewObjectsMode.idl index d0bf44ff8..2be64a41a 100644..100755 --- a/offapi/com/sun/star/awt/grid/ScrollBarMode.idl +++ b/offapi/com/sun/star/sheet/SpreadsheetViewObjectsMode.idl @@ -24,47 +24,38 @@ * for a copy of the LGPLv3 License. * ************************************************************************/ -#ifndef __com_sun_star_awt_grid_ScrollBarMode_idl__ -#define __com_sun_star_awt_grid_ScrollBarMode_idl__ - - + +#ifndef __com_sun_star_sheet_SpreadsheetViewObjectsMode_idl__ +#define __com_sun_star_sheet_SpreadsheetViewObjectsMode_idl__ + //============================================================================= -module com { module sun { module star { module awt { module grid { +module com { module sun { module star { module sheet { //============================================================================= -/** specifies the adjustment type. +/** Constants that control how embedded objects are shown in the view. */ -enum ScrollBarMode +published constants SpreadsheetViewObjectsMode { - //------------------------------------------------------------------------- - - /** adjustment is originated by a line jump. + //------------------------------------------------------------------------- - <p>A line jump can, for example, be caused by a click on - one of the pointer buttons.</p> - */ - AUTO, - - //------------------------------------------------------------------------- - - /** adjustment is originated by a page jump. - - <p>A page jump can, for example, be caused by a click in the - background area of the scrollbar (neither one of the pointer - buttons, nor the thumb).</p> + /** Specifies to display a specific set of objects in the spreadsheet view. */ - ON, + const short SHOW = 0; - OFF + //------------------------------------------------------------------------- + /** Specifies to hide a specific set of objects from the spreadsheet view. + */ + const short HIDE = 1; - -}; + //------------------------------------------------------------------------- +}; //============================================================================= -}; }; }; }; }; +}; }; }; }; -#endif +#endif + diff --git a/offapi/com/sun/star/sheet/SpreadsheetViewSettings.idl b/offapi/com/sun/star/sheet/SpreadsheetViewSettings.idl index 9d5c53cf1..6c692ce0f 100644 --- a/offapi/com/sun/star/sheet/SpreadsheetViewSettings.idl +++ b/offapi/com/sun/star/sheet/SpreadsheetViewSettings.idl @@ -149,18 +149,24 @@ published service SpreadsheetViewSettings //------------------------------------------------------------------------- /** enables display of embedded objects in the view. + + @see SpreadsheetViewObjectsMode */ [property] short ShowObjects; //------------------------------------------------------------------------- /** enables the display of charts in the view. + + @see SpreadsheetViewObjectsMode */ [property] short ShowCharts; //------------------------------------------------------------------------- /** enables the display of drawing objects in the view. + + @see SpreadsheetViewObjectsMode */ [property] short ShowDrawing; @@ -175,14 +181,14 @@ published service SpreadsheetViewSettings @see com::sun::star::view::DocumentZoomType */ - [property] short ZoomType; + [property] short ZoomType; //------------------------------------------------------------------------- /** Defines the zoom value to use. Valid only if the ZoomType is set to <member scope="com::sun::star::view::DocumentZoomType">BY_VALUE</member>. */ - [property] short ZoomValue; + [property] short ZoomValue; }; //============================================================================= diff --git a/offapi/com/sun/star/sheet/TableFilterField.idl b/offapi/com/sun/star/sheet/TableFilterField.idl index b0e334e2a..4888d9abe 100644 --- a/offapi/com/sun/star/sheet/TableFilterField.idl +++ b/offapi/com/sun/star/sheet/TableFilterField.idl @@ -28,13 +28,8 @@ #ifndef __com_sun_star_sheet_TableFilterField_idl__ #define __com_sun_star_sheet_TableFilterField_idl__ -#ifndef __com_sun_star_sheet_FilterConnection_idl__ #include <com/sun/star/sheet/FilterConnection.idl> -#endif - -#ifndef __com_sun_star_sheet_FilterOperator_idl__ #include <com/sun/star/sheet/FilterOperator.idl> -#endif //============================================================================= @@ -44,7 +39,7 @@ module com { module sun { module star { module sheet { /** describes a single condition in a filter descriptor. - @see com::sun::star::sheet::SheetFilterDescriptor + @see SheetFilterDescriptor */ published struct TableFilterField { @@ -52,7 +47,7 @@ published struct TableFilterField /** specifies how the condition is connected to the previous condition. */ - com::sun::star::sheet::FilterConnection Connection; + FilterConnection Connection; //------------------------------------------------------------------------- @@ -64,7 +59,7 @@ published struct TableFilterField /** specifies the type of the condition. */ - com::sun::star::sheet::FilterOperator Operator; + FilterOperator Operator; //------------------------------------------------------------------------- diff --git a/offapi/com/sun/star/sheet/TableFilterField2.idl b/offapi/com/sun/star/sheet/TableFilterField2.idl index 5285b29f3..5bb4a4860 100644 --- a/offapi/com/sun/star/sheet/TableFilterField2.idl +++ b/offapi/com/sun/star/sheet/TableFilterField2.idl @@ -28,14 +28,8 @@ #ifndef __com_sun_star_sheet_TableFilterField2_idl__ #define __com_sun_star_sheet_TableFilterField2_idl__ - -#ifndef __com_sun_star_sheet_FilterConnection_idl__ #include <com/sun/star/sheet/FilterConnection.idl> -#endif - -#ifndef __com_sun_star_sheet_FilterOperator2_idl__ #include <com/sun/star/sheet/FilterOperator2.idl> -#endif //============================================================================= @@ -49,7 +43,7 @@ module com { module sun { module star { module sheet { member, whereas the <type>TableFilterField</type> struct uses the <type>FilterOperator</type> enum.</p> - @see com::sun::star::sheet::SheetFilterDescriptor + @see SheetFilterDescriptor @since OOo 3.2 */ published struct TableFilterField2 @@ -58,7 +52,7 @@ published struct TableFilterField2 /** specifies how the condition is connected to the previous condition. */ - com::sun::star::sheet::FilterConnection Connection; + FilterConnection Connection; //------------------------------------------------------------------------- @@ -69,7 +63,7 @@ published struct TableFilterField2 //------------------------------------------------------------------------- /** specifies the type of the condition as defined in - <type>FilterOperator2</type>. + <type>FilterOperator2</type>. */ long Operator; diff --git a/offapi/com/sun/star/sheet/XDatabaseRange.idl b/offapi/com/sun/star/sheet/XDatabaseRange.idl index f61bed1c3..f9a245d1d 100644 --- a/offapi/com/sun/star/sheet/XDatabaseRange.idl +++ b/offapi/com/sun/star/sheet/XDatabaseRange.idl @@ -77,7 +77,7 @@ published interface XDatabaseRange: com::sun::star::uno::XInterface /** returns the sort descriptor stored with the database range. - @see com::sun::star::sheet::SheetSortDescriptor2 + @see SheetSortDescriptor2 */ sequence< com::sun::star::beans::PropertyValue > getSortDescriptor(); @@ -88,8 +88,10 @@ published interface XDatabaseRange: com::sun::star::uno::XInterface <p>If the filter descriptor is modified, the new filtering is carried out when <member>XDatabaseRange::refresh()</member> is called.</p> + + @see SheetFilterDescriptor */ - com::sun::star::sheet::XSheetFilterDescriptor getFilterDescriptor(); + XSheetFilterDescriptor getFilterDescriptor(); //------------------------------------------------------------------------- @@ -98,15 +100,17 @@ published interface XDatabaseRange: com::sun::star::uno::XInterface <p>If the subtotal descriptor is modified, the new subtotals are inserted when <member>XDatabaseRange::refresh()</member> is called.</p> + + @see SubTotalDescriptor */ - com::sun::star::sheet::XSubTotalDescriptor getSubTotalDescriptor(); + XSubTotalDescriptor getSubTotalDescriptor(); //------------------------------------------------------------------------- /** returns the database import descriptor stored with this database range. - @see com::sun::star::sheet::DatabaseImportDescriptor + @see DatabaseImportDescriptor */ sequence< com::sun::star::beans::PropertyValue > getImportDescriptor(); diff --git a/offapi/com/sun/star/sheet/XSheetFilterDescriptor.idl b/offapi/com/sun/star/sheet/XSheetFilterDescriptor.idl index 3f4c49d42..5c198d65a 100644 --- a/offapi/com/sun/star/sheet/XSheetFilterDescriptor.idl +++ b/offapi/com/sun/star/sheet/XSheetFilterDescriptor.idl @@ -28,13 +28,8 @@ #ifndef __com_sun_star_sheet_XSheetFilterDescriptor_idl__ #define __com_sun_star_sheet_XSheetFilterDescriptor_idl__ -#ifndef __com_sun_star_uno_XInterface_idl__ -#include <com/sun/star/uno/XInterface.idl> -#endif - -#ifndef __com_sun_star_sheet_TableFilterField_idl__ #include <com/sun/star/sheet/TableFilterField.idl> -#endif +#include <com/sun/star/uno/XInterface.idl> //============================================================================= @@ -44,7 +39,7 @@ module com { module sun { module star { module sheet { /** provides access to a collection of filter conditions (filter fields). - @see com::sun::star::sheet::SheetFilterDescriptor + @see SheetFilterDescriptor */ published interface XSheetFilterDescriptor: com::sun::star::uno::XInterface { @@ -52,14 +47,13 @@ published interface XSheetFilterDescriptor: com::sun::star::uno::XInterface /** returns the collection of filter fields. */ - sequence< com::sun::star::sheet::TableFilterField > getFilterFields(); + sequence< TableFilterField > getFilterFields(); //------------------------------------------------------------------------- /** sets a new collection of filter fields. */ - void setFilterFields( - [in] sequence< com::sun::star::sheet::TableFilterField > aFilterFields ); + void setFilterFields( [in] sequence< TableFilterField > aFilterFields ); }; diff --git a/offapi/com/sun/star/sheet/XSheetFilterDescriptor2.idl b/offapi/com/sun/star/sheet/XSheetFilterDescriptor2.idl index 113f8b61d..bbc05def3 100644 --- a/offapi/com/sun/star/sheet/XSheetFilterDescriptor2.idl +++ b/offapi/com/sun/star/sheet/XSheetFilterDescriptor2.idl @@ -28,13 +28,8 @@ #ifndef __com_sun_star_sheet_XSheetFilterDescriptor2_idl__ #define __com_sun_star_sheet_XSheetFilterDescriptor2_idl__ -#ifndef __com_sun_star_sheet_TableFilterField2_idl__ #include <com/sun/star/sheet/TableFilterField2.idl> -#endif - -#ifndef __com_sun_star_uno_XInterface_idl__ #include <com/sun/star/uno/XInterface.idl> -#endif //============================================================================= @@ -48,7 +43,7 @@ module com { module sun { module star { module sheet { whereas the <type>XSheetFilterDescriptor</type> interface uses the <type>TableFilterField</type> struct.</p> - @see com::sun::star::sheet::SheetFilterDescriptor + @see SheetFilterDescriptor @since OOo 3.2 */ published interface XSheetFilterDescriptor2: com::sun::star::uno::XInterface @@ -57,14 +52,13 @@ published interface XSheetFilterDescriptor2: com::sun::star::uno::XInterface /** returns the collection of filter fields. */ - sequence< com::sun::star::sheet::TableFilterField2 > getFilterFields2(); + sequence< TableFilterField2 > getFilterFields2(); //------------------------------------------------------------------------- /** sets a new collection of filter fields. */ - void setFilterFields2( - [in] sequence< com::sun::star::sheet::TableFilterField2 > aFilterFields ); + void setFilterFields2( [in] sequence< TableFilterField2 > aFilterFields ); }; diff --git a/offapi/com/sun/star/sheet/makefile.mk b/offapi/com/sun/star/sheet/makefile.mk index 33d06c32d..37a0cadac 100644 --- a/offapi/com/sun/star/sheet/makefile.mk +++ b/offapi/com/sun/star/sheet/makefile.mk @@ -199,6 +199,7 @@ IDLFILES=\ SpreadsheetDocumentSettings.idl\ SpreadsheetDrawPage.idl\ SpreadsheetView.idl\ + SpreadsheetViewObjectsMode.idl\ SpreadsheetViewPane.idl\ SpreadsheetViewPanesEnumeration.idl\ SpreadsheetViewSettings.idl\ diff --git a/offapi/com/sun/star/task/PDFExportException.idl b/offapi/com/sun/star/task/PDFExportException.idl new file mode 100644 index 000000000..de8b4561a --- /dev/null +++ b/offapi/com/sun/star/task/PDFExportException.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_task_PDFExportException_idl__ +#define __com_sun_star_task_PDFExportException_idl__ + +#ifndef __com_sun_star_uno_Exception_idl__ +#include <com/sun/star/uno/Exception.idl> +#endif + + module com { module sun { module star { module task { + + +/** is an exception that provides information on an error during PDF export. + */ +published exception PDFExportException: com::sun::star::uno::Exception +{ + /** contains a number of errors that occured during PDFExport + */ + sequence< long > ErrorCodes; +}; + +//============================================================================= + +}; }; }; }; + +/*=========================================================================== +===========================================================================*/ +#endif diff --git a/offapi/com/sun/star/task/makefile.mk b/offapi/com/sun/star/task/makefile.mk index 16b0be56e..cd9db6b5a 100644 --- a/offapi/com/sun/star/task/makefile.mk +++ b/offapi/com/sun/star/task/makefile.mk @@ -59,6 +59,7 @@ IDLFILES=\ PasswordContainerInteractionHandler.idl\ PasswordRequest.idl\ PasswordRequestMode.idl\ + PDFExportException.idl\ OfficeRestartManager.idl\ UnsupportedOverwriteRequest.idl\ UrlRecord.idl\ diff --git a/offapi/com/sun/star/text/DocumentSettings.idl b/offapi/com/sun/star/text/DocumentSettings.idl index ab2107727..46d23a79f 100644 --- a/offapi/com/sun/star/text/DocumentSettings.idl +++ b/offapi/com/sun/star/text/DocumentSettings.idl @@ -195,6 +195,16 @@ published service DocumentSettings */ [optional, property] boolean ConsiderTextWrapOnObjPos; + // ------------------------------------------------------------ + /** specifies if Math objects should automatically vertically aligned to + match the baseline of the surrounding text. + + <p>If activated formula object that are anchored 'As Character' will be + vertically aligned to have their baseline match with the one from the text.</p> + + @since OOo 3.4 + */ + [optional, property] boolean MathBaselineAlignment; }; //============================================================================= diff --git a/offapi/com/sun/star/text/PrintPreviewSettings.idl b/offapi/com/sun/star/text/PrintPreviewSettings.idl index 37f78cd95..41ea68211 100644..100755 --- a/offapi/com/sun/star/text/PrintPreviewSettings.idl +++ b/offapi/com/sun/star/text/PrintPreviewSettings.idl @@ -39,6 +39,8 @@ //============================================================================= /** These properties describe the printing of the content of a text document. + * + * @deprecated since OOo 3.3 */ published service PrintPreviewSettings { diff --git a/offapi/com/sun/star/text/TextMarkupType.idl b/offapi/com/sun/star/text/TextMarkupType.idl index b6c3bb7bf..0787dfefb 100644 --- a/offapi/com/sun/star/text/TextMarkupType.idl +++ b/offapi/com/sun/star/text/TextMarkupType.idl @@ -44,23 +44,28 @@ module com { module sun { module star { module text { constants TextMarkupType { - /// Markup originates from spell checking. + /** Markup originates from spell checking. + */ const long SPELLCHECK = 1; - /// Markup originates from proofreading - /// @since OOo 3.0.1 + /** Markup originates from proofreading + @since OOo 3.0.1 + */ const long PROOFREADING = 2; - /// Markup originates from smart tag checking. + /** Markup originates from smart tag checking. + */ const long SMARTTAG = 3; - /// Markup originates from proofreading - /// An invisible markup used to identify sentence boundaries. - /// @since OOo 3.0.1 + /** Markup originates from proofreading + An inivisible markup type used in proofreading API calls. + @since OOo 3.0.1 + */ const long SENTENCE = 4; - /// Markups originates from change tracking. - /// @since OOo 3.3 + /** Markups originates from change tracking. + @since OOo 3.3 + */ const long TRACK_CHANGE_INSERTION = 5; const long TRACK_CHANGE_DELETION = 6; const long TRACK_CHANGE_FORMATCHANGE = 7; diff --git a/offapi/com/sun/star/ui/UIElementType.idl b/offapi/com/sun/star/ui/UIElementType.idl index d56795dd9..140d540a3 100644 --- a/offapi/com/sun/star/ui/UIElementType.idl +++ b/offapi/com/sun/star/ui/UIElementType.idl @@ -2,10 +2,13 @@ * * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * - * Copyright 2000, 2010 Oracle and/or its affiliates. + * Copyright 2008 by Sun Microsystems, Inc. * * OpenOffice.org - a multi-platform office productivity suite * + * $RCSfile: UIElementType.idl,v $ + * $Revision: 1.4 $ + * * This file is part of OpenOffice.org. * * OpenOffice.org is free software: you can redistribute it and/or modify @@ -78,6 +81,11 @@ constants UIElementType const short TOOLPANEL = 7; //------------------------------------------------------------------------- + /** specifies a window that can be docked. + */ + const short DOCKINGWINDOW = 7; + + //------------------------------------------------------------------------- /** specifies the number of constants. */ const short COUNT = 8; diff --git a/offapi/com/sun/star/util/DiskFullException.idl b/offapi/com/sun/star/util/DiskFullException.idl index 9a61d37c7..39abb8363 100644 --- a/offapi/com/sun/star/util/DiskFullException.idl +++ b/offapi/com/sun/star/util/DiskFullException.idl @@ -38,7 +38,7 @@ module com { module sun { module star { module util { //============================================================================= -/** is thrown when a disk full error occurs. +/** @deprecated */ published exception DiskFullException: com::sun::star::util::FileIOException { diff --git a/offapi/com/sun/star/util/FileIOException.idl b/offapi/com/sun/star/util/FileIOException.idl index 9c1f30ba6..11f07fde7 100644 --- a/offapi/com/sun/star/util/FileIOException.idl +++ b/offapi/com/sun/star/util/FileIOException.idl @@ -37,7 +37,7 @@ module com { module sun { module star { module util { //============================================================================= -/** thrown when file I/O error occurs. +/** @deprecated */ published exception FileIOException: com::sun::star::uno::Exception { @@ -48,3 +48,4 @@ published exception FileIOException: com::sun::star::uno::Exception }; }; }; }; #endif + diff --git a/offapi/com/sun/star/util/NotLockedException.idl b/offapi/com/sun/star/util/NotLockedException.idl new file mode 100755 index 000000000..a8865c25b --- /dev/null +++ b/offapi/com/sun/star/util/NotLockedException.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_NotLockedException_idl__ +#define __com_sun_star_util_NotLockedException_idl__ + +#include <com/sun/star/util/InvalidStateException.idl> + +//================================================================================================================== + +module com { module sun { module star { module util { + +//================================================================================================================== + +/** is raised when attempt is made to unlock a lockable component which actually is not locked. + */ +exception NotLockedException : ::com::sun::star::util::InvalidStateException +{ +}; + +//================================================================================================================== + +}; }; }; }; + +//================================================================================================================== + +#endif diff --git a/offapi/com/sun/star/util/OfficeInstallationDirectories.idl b/offapi/com/sun/star/util/OfficeInstallationDirectories.idl index 2c197c606..06b9665d2 100644 --- a/offapi/com/sun/star/util/OfficeInstallationDirectories.idl +++ b/offapi/com/sun/star/util/OfficeInstallationDirectories.idl @@ -1,7 +1,7 @@ /************************************************************************* * * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * + * * Copyright 2000, 2010 Oracle and/or its affiliates. * * OpenOffice.org - a multi-platform office productivity suite @@ -52,7 +52,7 @@ module com { module sun { module star { module util { @since OOo 2.0.0 */ -service OfficeInstallationDirectories +published service OfficeInstallationDirectories { /** provides access to the current office installation directories (office base installation and user data). @@ -67,7 +67,7 @@ service OfficeInstallationDirectories @see OfficeInstallationDirectories */ -singleton theOfficeInstallationDirectories +published singleton theOfficeInstallationDirectories { service com::sun::star::util::OfficeInstallationDirectories; }; diff --git a/offapi/com/sun/star/util/XBroadcaster.idl b/offapi/com/sun/star/util/XBroadcaster.idl index ab9b73d0c..6ab7759d0 100644 --- a/offapi/com/sun/star/util/XBroadcaster.idl +++ b/offapi/com/sun/star/util/XBroadcaster.idl @@ -50,7 +50,7 @@ interface XBroadcaster: com::sun::star::uno::XInterface <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. + sent to registered listeners. </p> */ [oneway] void lockBroadcasts(); @@ -64,10 +64,10 @@ interface XBroadcaster: com::sun::star::uno::XInterface <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. + sent to registered listeners. </p> - <p> Pending broadcasts will be send immediately after the last + <p> Pending broadcasts will be sent 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 diff --git a/offapi/com/sun/star/util/XLockable.idl b/offapi/com/sun/star/util/XLockable.idl new file mode 100755 index 000000000..5616a42c2 --- /dev/null +++ b/offapi/com/sun/star/util/XLockable.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_XLockable_idl__ +#define __com_sun_star_util_XLockable_idl__ + +#include <com/sun/star/util/NotLockedException.idl> + +//================================================================================================================== + +module com { module sun { module star { module util { + +//================================================================================================================== + +/** allows locking a component + + <p><code>lock</code> and <code>unlock</code> calls can be nested. However, they must be in + pairs. As long as there has been one more call to <code>lock</code> than to <code>unlock</code>, the + component is considered locked, which is reflected by <member>isLocked</member> returning <TRUE/>.</p> + */ +interface XLockable +{ + /** locks</a> the component + + @see unlock + @see isLocked + */ + void lock(); + + /** unlocks the component + + @throws NotLockedException + if the component is not currently locked. + + @see lock + @see isLocked + */ + void unlock() + raises ( NotLockedException + ); + + /** determines whether the component is currently locked. + + @see lock + @see unlock + */ + boolean isLocked(); +}; + +//================================================================================================================== + +}; }; }; }; + +//================================================================================================================== + +#endif diff --git a/offapi/com/sun/star/util/XOfficeInstallationDirectories.idl b/offapi/com/sun/star/util/XOfficeInstallationDirectories.idl index 607f57302..889cd5c89 100644 --- a/offapi/com/sun/star/util/XOfficeInstallationDirectories.idl +++ b/offapi/com/sun/star/util/XOfficeInstallationDirectories.idl @@ -1,7 +1,7 @@ /************************************************************************* * * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * + * * Copyright 2000, 2010 Oracle and/or its affiliates. * * OpenOffice.org - a multi-platform office productivity suite @@ -47,7 +47,7 @@ module com { module sun { module star { module util { @since OOo 2.0.0 */ -interface XOfficeInstallationDirectories : com::sun::star::uno::XInterface +published interface XOfficeInstallationDirectories : com::sun::star::uno::XInterface { //------------------------------------------------------------------------ /** returns the absolute URL containing the directory of the current office @@ -61,7 +61,8 @@ interface XOfficeInstallationDirectories : com::sun::star::uno::XInterface //------------------------------------------------------------------------ /** returns the absolute URL containing the directory where the current - office installation expects its user data (e.g. "file:///home/kso".) + office installation expects its user data (e.g. + "file:///home/kso/.openoffice.org".) @returns the absolute URL containing the directory of the current office diff --git a/offapi/com/sun/star/util/XTextSearch.idl b/offapi/com/sun/star/util/XTextSearch.idl index 950fefbeb..38f44aa7c 100644 --- a/offapi/com/sun/star/util/XTextSearch.idl +++ b/offapi/com/sun/star/util/XTextSearch.idl @@ -35,97 +35,151 @@ module com { module sun { module star { module util { -published enum SearchAlgorithms { - ABSOLUTE, // "normal" a kind of Boyer-Moore - REGEXP, // regular expression - APPROXIMATE // Levenshtein distance +published enum SearchAlgorithms +{ + /// Literal + ABSOLUTE, // implemented as a kind of Boyer-Moore + /// Regular expression + REGEXP, + /// Weighted Levenshtein Distance + APPROXIMATE }; +/// Flags for search methods 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 + @deprecated The constant ALL_IGNORE_CASE is never supported - use + <const scope="com::sun::star::i18n">TransliterationModules::IGNORE_CASE</const> + with + <member>SearchOptions::transliterateFlags</member> + instead. + + @see <type scope="com::sun::star::i18n">TransliterationModules</type> */ - const long ALL_IGNORE_CASE = 0x00000001; + const long ALL_IGNORE_CASE = 0x00000001; - /// Flag for normal (Boyer-Moore) search - const long NORM_WORD_ONLY = 0x00000010; + /** Flag for normal (Boyer-Moore) search / Search for word only. */ + 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 - expressions, return true/false to match + /** Flag for "regular expression" search / Interpret as extended + regular expression. -<!-- JRH: Check this for sense of the expression. --> + @deprecated The flag is currently not supported by OOo. */ - 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_EXTENDED = 0x00000100; + + /** Flag for "regular expression" search / No register information + or backreferences, i.e., avoid sub expressions. Return only + true/false if matched or not. + + @deprecated The flag is currently not supported by OOo. */ - const long REG_NOT_ENDOFLINE = 0x00001000; + const long REG_NOSUB = 0x00000200; + + /** Flag for "regular expression" search / Special new line + treatment. + + @deprecated The flag is currently not supported by OOo. + + <p> A NEWLINE character in string will not be matched by a + period outside bracket expression or by any form of a non + matching list. </p> + <p> A circumflex (^) in pattern when used to specify expression + anchoring will match the zero length string immediately after a + newline in string, regardless of the setting of + REG_NOT_BEGINOFLINE. </p> - /// Flags for "Weight Levenshtein-Distance" search - const long LEV_RELAXED = 0x00010000; + <p> 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_NOT_ENDOFLINE. </p> + */ + const long REG_NEWLINE = 0x00000400; + + /** 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_BEGINOFLINE = 0x00000800; + + /** The last character in the string is not the end of the line + therefore $ will not match with last character of the string. + */ + const long REG_NOT_ENDOFLINE = 0x00001000; + + /** Flag for "Weighted Levenshtein Distance" search / Relaxed + checking of limit, split weigh pools. + + <p> If not specified (<b>strict</b>), the search is sucessful if + the WLD is within a calculated limit where each insertion, + deletion and replacement adds a weight to a common pool of + weights. This is the mathematically correct WLD. </p> + + <p> From a user's point of view the strict WLD is an + exclusive-OR of the arguments given, for example if allowed + insertions=2 and allowed replacements=2, the search fails if 2 + characters had been inserted and an additional operation would + be needed to match. Depending on the weights it may also fail if + 1 character was inserted and 1 character replaced and an + additional operation would be needed to match. The strict + algorithm may match less than expected from a first glance of + the specified arguments, but does not return false positives. </p> + + <p> If specified (<b>relaxed</b>), the search is also successful + if the combined pool for insertions and deletions is below a + doubled calculated limit and replacements are treated + differently. Additionally, swapped characters are counted as one + replacement. </p> + + <p> From a user's point of view the relaxed WLD is an + inclusive-OR of the arguments given, for example if allowed + insertions=2 and allowed replacements=2, the search succeeds if + 2 characters had been inserted and an additional replacement is + needed to match. The relaxed algorithm may return false + positives, but meets user expectation better. </p> + */ + const long LEV_RELAXED = 0x00010000; }; published struct SearchOptions { //------------------------------------------------------------------------- - /// search type, can be: ABSOLUTE, REGEXP, APPROXIMATE + /** search type */ SearchAlgorithms algorithmType; /** some flags - can be mixed - @see SearchFlags + @see <type>SearchFlags</type> */ long searchFlag; - /// the search text + /** The text or pattern to be searched. */ string searchString; - /** the replace text - (is for optional replacing - SearchOption is only the data container for it)*/ + /** The replacement text + (is for optional replacing - SearchOption is only the data container for it) */ string replaceString; - /// this is the language for case insensitive search + /** The locale 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"*/ + /** This many characters can be different (as a replacement) between + the found word and the search pattern in a "Weighted Levenshtein + Distance" search. */ long changedChars; - /** this many characters can be missed in the found word - in a "Weight Levenshtein-Distance"*/ + /** This many characters can be missing in the found word in a + "Weighted Levenshtein Distance" search. */ long deletedChars; - /// this many characters can be additional in the found word in a "Weight Levenshtein-Distance" + /** This many characters can be additional in the found word in a + "Weighted Levenshtein Distance" search. */ long insertedChars; - /** Asian flags for the transliteration. Same meaning as the enum of TransliteratorModule - - @see com/sun/star/i18n/XTransliteration.idl + /** Flags for the transliteration. Same meaning as the enum of + <type scope="com::sun::star::i18n">TransliterationModules</type> */ long transliterateFlags; }; diff --git a/offapi/com/sun/star/util/makefile.mk b/offapi/com/sun/star/util/makefile.mk index aa0374296..87dc2d078 100644 --- a/offapi/com/sun/star/util/makefile.mk +++ b/offapi/com/sun/star/util/makefile.mk @@ -145,6 +145,8 @@ IDLFILES=\ UriAbbreviation.idl\ XJobManager.idl\ JobManager.idl\ + XLockable.idl\ + NotLockedException.idl\ # ------------------------------------------------------------------ diff --git a/offapi/com/sun/star/view/XMultiSelectionSupplier.idl b/offapi/com/sun/star/view/XMultiSelectionSupplier.idl index f8d0ac311..2e05e84ed 100644 --- a/offapi/com/sun/star/view/XMultiSelectionSupplier.idl +++ b/offapi/com/sun/star/view/XMultiSelectionSupplier.idl @@ -66,7 +66,7 @@ interface XMultiSelectionSupplier: XSelectionSupplier added to the current selection. For example, if the selection already contains objects that are forbidden to be selected together with <var>Selection</var> - @raises com::sun::star::lang::IllegalArgumentException + @throws com::sun::star::lang::IllegalArgumentException If <var>Selection</var> is not a selectable object for this <type>XMultiSelectionSupplier</type>. <p>Adding an object to the selection that is already part of the selection should not raise this exception</p> */ @@ -87,7 +87,7 @@ interface XMultiSelectionSupplier: XSelectionSupplier added to the current selection. For example, if the selection already contains objects that are forbidden to be selected together with <var>Selection</var>. - @raises com::sun::star::lang::IllegalArgumentException + @throws com::sun::star::lang::IllegalArgumentException If <var>Selection</var> is not a selectable object for this <type>XMultiSelectionSupplier</type>. <p>Removing an object from the selection that is not part of the selection should not raise this exception</p> */ diff --git a/offapi/com/sun/star/xml/sax/XFastAttributeList.idl b/offapi/com/sun/star/xml/sax/XFastAttributeList.idl index 353c181ce..99f0aa163 100644 --- a/offapi/com/sun/star/xml/sax/XFastAttributeList.idl +++ b/offapi/com/sun/star/xml/sax/XFastAttributeList.idl @@ -92,7 +92,7 @@ interface XFastAttributeList: com::sun::star::uno::XInterface @returns The integer token of the value from the attribute or <const>FastToken::Invalid</const> - @raises SAXException + @throws SAXEXception if the attribute is not available */ @@ -137,7 +137,7 @@ interface XFastAttributeList: com::sun::star::uno::XInterface @returns The string value from the attribute. - @raises SAXException + @throws SAXEXception if the attribute is not available */ |