diff --git a/offapi/Package_offapi_idl.mk b/offapi/Package_offapi_idl.mk new file mode 100644 --- /dev/null +++ b/offapi/Package_offapi_idl.mk @@ -0,0 +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 +# +# for a copy of the LGPLv3 License. +# +#************************************************************************* + +$(eval $(call gb_UnoApiTarget_autopackage_idl,offapi)) + diff --git a/offapi/Package_offapi_inc.mk b/offapi/Package_offapi_inc.mk new file mode 100644 --- /dev/null +++ b/offapi/Package_offapi_inc.mk @@ -0,0 +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 +# +# for a copy of the LGPLv3 License. +# +#************************************************************************* + +$(eval $(call gb_UnoApiTarget_autopackage_inc,offapi)) + diff --git a/offapi/UnoApi_types.mk b/offapi/UnoApi_types.mk new file mode 100644 --- /dev/null +++ b/offapi/UnoApi_types.mk @@ -0,0 +1,36 @@ +#************************************************************************* +# +# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +# +# Copyright 2000, 2010 Oracle and/or its affiliates. +# +# OpenOffice.org - a multi-platform office productivity suite +# +# This file is part of OpenOffice.org. +# +# OpenOffice.org is free software: you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License version 3 +# only, as published by the Free Software Foundation. +# +# OpenOffice.org is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Lesser General Public License version 3 for more details +# (a copy is included in the LICENSE file that accompanied this code). +# +# You should have received a copy of the GNU Lesser General Public License +# version 3 along with OpenOffice.org. If not, see +# +# for a copy of the LGPLv3 License. +# +#************************************************************************* + +$(eval $(call gb_UnoApiTarget_UnoApiTarget,types)) + +$(eval $(call gb_UnoApiTarget_add_merge_rdbfiles,types,\ + udkapi \ + offapi \ +)) + + +# vim: set noet sw=4 ts=4: diff --git a/offapi/com/sun/star/drawing/XSlidePreviewCacheListener.idl b/offapi/com/sun/star/drawing/XSlidePreviewCacheListener.idl new file mode 100644 --- /dev/null +++ b/offapi/com/sun/star/drawing/XSlidePreviewCacheListener.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 + * + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +#ifndef __com_sun_star_drawing_XSlidePreviewCacheListener_idl__ +#define __com_sun_star_drawing_XSlidePreviewCacheListener_idl__ + +#ifndef __com_sun_star_uno_XInterface_idl__ +#include +#endif + +module com { module sun { module star { module drawing { + +/** Listener for asynchronous preview creations. Called when a slide + preview has been created that was previously requested via a call to + XSlidePreviewCache::getSlidePreview(). The + implementor may then call getSlidePreview() a second + time to get the up-to-date version of the preview. +*/ +interface XSlidePreviewCacheListener +{ + /** Called by a XSlidePreviewCache object when a + preview has been created for the slide with the given index. + @param nSlideIndex + The index of the slide for which a new preview has been created. + */ + void notifyPreviewCreation ([in] long nSlideIndex); +}; + +}; }; }; }; // ::com::sun::star::drawing + +#endif diff --git a/offapi/com/sun/star/drawing/XSlideSorterBase.idl b/offapi/com/sun/star/drawing/XSlideSorterBase.idl new file mode 100644 --- /dev/null +++ b/offapi/com/sun/star/drawing/XSlideSorterBase.idl @@ -0,0 +1,137 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +#ifndef __com_sun_star_drawing_XSlideSorterBase_idl__ +#define __com_sun_star_drawing_XSlideSorterBase_idl__ + +#ifndef __com_sun_star_drawing_framework_XView_idl__ +#include +#endif +#ifndef __com_sun_star_drawing_XDrawView_idl__ +#include +#endif +#ifndef __com_sun_star_awt_XWindow_idl__ +#include +#endif +#ifndef __com_sun_star_container_XIndexAccess_idl__ +#include +#endif +#ifndef __com_sun_star_frame_XController_idl__ +#include +#endif +#ifndef __com_sun_star_util_Color_idl__ +#include +#endif + +module com { module sun { module star { module drawing { + +/** This interface exists only because services do not directly support + multiple inheritance and attributes. +

It provides the interfaces and attributes that every object that + implements the SlideSorter service.

+*/ +interface XSlideSorterBase +{ + /** This interface is included to mark a SlideSorter object + as view of the drawing framework and to provide a + ResourceId. + */ + interface ::com::sun::star::drawing::framework::XView; + + /** The XDrawView interface is included to provide access + to the current slide (especially write access). + */ + interface ::com::sun::star::drawing::XDrawView; + + /** The set of slides that are displayed by the implementing object. +

The default value is the set of all slides of the document for + which a slide sorter is created.

+ */ + [attribute] ::com::sun::star::container::XIndexAccess DocumentSlides; + + /** Set this flag to in order to have the current slide + highlighted. +

The default value is .

+ */ + [attribute] boolean IsHighlightCurrentSlide; + + /** Set this flag to in order to visualize the selection of + slides (typically a bold frame around the selected slides). +

The default value is .

+ */ + [attribute] boolean IsShowSelection; + + /** Set this flag to to visualize to where the focus is by + showing a dotted rectangle around the focused slide. +

The default value is .

+ */ + [attribute] boolean IsShowFocus; + + /** When this flag has the value then every time the current + slide is changed the visual area is shifted so that the new current + slide is display in the center of the slide sorter window. +

It is not always possible to move the current slide into the + exact center of the window, for example when slides are located near + the start or end of a document.

+

The default value is . + */ + [attribute] boolean IsCenterSelection; + + /** This flag controls whether updates of previews are created during + full screen presentations () or not (). The + suspension of preview creations is an optimization for not slowing + down a running presentation. +

The default value is .

+ */ + [attribute] boolean IsSuspendPreviewUpdatesDuringFullScreenPresentation; + + /** The orientation of a slide sorter can be either vertical () + or horizontal (). + */ + [attribute] boolean IsOrientationVertical; + + /** This flag is a hint to make scrolling look smooth. + */ + [attribute] boolean IsSmoothScrolling; + + [attribute] ::com::sun::star::util::Color BackgroundColor; + [attribute] ::com::sun::star::util::Color TextColor; + [attribute] ::com::sun::star::util::Color SelectionColor; + [attribute] ::com::sun::star::util::Color HighlightColor; + + /** This flag controls whether the model can be modified by using + keyboard or mouse. +

The default value is .

+ */ + [attribute] boolean IsUIReadOnly; +}; + + + +}; }; }; }; + +#endif diff --git a/offapi/com/sun/star/drawing/framework/BorderType.idl b/offapi/com/sun/star/drawing/framework/BorderType.idl new file mode 100644 --- /dev/null +++ b/offapi/com/sun/star/drawing/framework/BorderType.idl @@ -0,0 +1,46 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +#ifndef __com_sun_star_drawing_framework_BorderType_idl__ +#define __com_sun_star_drawing_framework_BorderType_idl__ + + +module com { module sun { module star { module drawing { module framework { + +/** See XPaneBorderPainter and its addBorder() and removeBorder() methods + for an explanation of the border type and its values. +*/ +enum BorderType +{ + INNER_BORDER, + OUTER_BORDER, + TOTAL_BORDER +}; + +}; }; }; }; }; // ::com::sun::star::drawing::framework + +#endif diff --git a/offapi/com/sun/star/frame/UntitledNumbersConst.idl b/offapi/com/sun/star/frame/UntitledNumbersConst.idl new file mode 100644 --- /dev/null +++ b/offapi/com/sun/star/frame/UntitledNumbersConst.idl @@ -0,0 +1,39 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * + * for a copy of the LGPLv3 License. + * + ************************************************************************/ +#ifndef __com_sun_star_frame_UntitledNumbersConst_idl__ +#define __com_sun_star_frame_UntitledNumbersConst_idl__ + + module com { module sun { module star { module frame { + +constants UntitledNumbersConst +{ + const long INVALID_NUMBER = 0; +}; + +}; }; }; }; + +#endif diff --git a/offapi/com/sun/star/rendering/ARGBColor.idl b/offapi/com/sun/star/rendering/ARGBColor.idl new file mode 100644 --- /dev/null +++ b/offapi/com/sun/star/rendering/ARGBColor.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 + * + * for a copy of the LGPLv3 License. + * + ************************************************************************/ +#ifndef __com_sun_star_rendering_ARGBColor_idl__ +#define __com_sun_star_rendering_ARGBColor_idl__ + +#ifndef __com_sun_star_rendering_ColorComponent_idl__ +#include +#endif + +module com { module sun { module star { module rendering { + +/// ARGB color quad +struct ARGBColor +{ + /** Alpha component.

+ + Valid range is [0,1.0], with 0.0 denoting fully transparent, + and 1.0 fully opaque. + */ + ColorComponent Alpha; + /// Red component. Valid range is [0,1.0] + ColorComponent Red; + /// Green component. Valid range is [0,1.0] + ColorComponent Green; + /// Blue component. Valid range is [0,1.0] + ColorComponent Blue; +}; + +}; }; }; }; + +#endif diff --git a/offapi/com/sun/star/rendering/BitmapCanvas.idl b/offapi/com/sun/star/rendering/BitmapCanvas.idl new file mode 100644 --- /dev/null +++ b/offapi/com/sun/star/rendering/BitmapCanvas.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 + * + * for a copy of the LGPLv3 License. + * + ************************************************************************/ +#ifndef __com_sun_star_rendering_BitmapCanvas_idl__ +#define __com_sun_star_rendering_BitmapCanvas_idl__ + +#ifndef __com_sun_star_rendering_XBitmap_idl__ +#include +#endif +#ifndef __com_sun_star_rendering_XBitmapCanvas_idl__ +#include +#endif + + +module com { module sun { module star { module rendering { + +// TODO: Multiple-inheritance interfaces + +/** This service provides the interfaces for a XBitmapCanvas + */ +service BitmapCanvas +{ + /** Canvas interface, to issue rendering operations. + */ + interface XBitmapCanvas; + + /** Bitmap interface, to directly manipulate the pixel. + */ + interface XBitmap; +}; + +}; }; }; }; + +#endif diff --git a/offapi/com/sun/star/rendering/Canvas.idl b/offapi/com/sun/star/rendering/Canvas.idl new file mode 100644 --- /dev/null +++ b/offapi/com/sun/star/rendering/Canvas.idl @@ -0,0 +1,42 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * + * for a copy of the LGPLv3 License. + * + ************************************************************************/ +#ifndef __com_sun_star_rendering_Canvas_idl__ +#define __com_sun_star_rendering_Canvas_idl__ + +#ifndef __com_sun_star_rendering_XCanvas_idl__ +#include +#endif + + +module com { module sun { module star { module rendering { + +/// Service providing an XCanvas interface +service Canvas: XCanvas; + +}; }; }; }; + +#endif diff --git a/offapi/com/sun/star/rendering/Color.idl b/offapi/com/sun/star/rendering/Color.idl new file mode 100644 --- /dev/null +++ b/offapi/com/sun/star/rendering/Color.idl @@ -0,0 +1,41 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * + * for a copy of the LGPLv3 License. + * + ************************************************************************/ +#ifndef __com_sun_star_rendering_Color_idl__ +#define __com_sun_star_rendering_Color_idl__ + +#ifndef __com_sun_star_rendering_ColorComponent_idl__ +#include +#endif + +module com { module sun { module star { module rendering { + +/// Shorthand for the device-dependent color components, and easier to read +typedef sequence Color; + +}; }; }; }; + +#endif diff --git a/offapi/com/sun/star/rendering/ColorComponent.idl b/offapi/com/sun/star/rendering/ColorComponent.idl new file mode 100644 --- /dev/null +++ b/offapi/com/sun/star/rendering/ColorComponent.idl @@ -0,0 +1,38 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +#ifndef __com_sun_star_rendering_ColorComponent_idl__ +#define __com_sun_star_rendering_ColorComponent_idl__ + +module com { module sun { module star { module rendering { + +/// Shorthand for the device-dependent color components, and easier to read +typedef double ColorComponent; + +}; }; }; }; + +#endif diff --git a/offapi/com/sun/star/rendering/RGBColor.idl b/offapi/com/sun/star/rendering/RGBColor.idl new file mode 100644 --- /dev/null +++ b/offapi/com/sun/star/rendering/RGBColor.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 + * + * for a copy of the LGPLv3 License. + * + ************************************************************************/ +#ifndef __com_sun_star_rendering_RGBColor_idl__ +#define __com_sun_star_rendering_RGBColor_idl__ + +#ifndef __com_sun_star_rendering_ColorComponent_idl__ +#include +#endif + +module com { module sun { module star { module rendering { + +/// RGB color triplet +struct RGBColor +{ + /// Red component. Valid range is [0,1.0] + ColorComponent Red; + /// Green component. Valid range is [0,1.0] + ColorComponent Green; + /// Blue component. Valid range is [0,1.0] + ColorComponent Blue; +}; + +}; }; }; }; + +#endif diff --git a/offapi/com/sun/star/util/SearchAlgorithms.idl b/offapi/com/sun/star/util/SearchAlgorithms.idl new file mode 100644 --- /dev/null +++ b/offapi/com/sun/star/util/SearchAlgorithms.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 + * + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +#ifndef __com_sun_star_lang_SearchAlgorithms_idl__ +#define __com_sun_star_lang_SearchAlgorithms_idl__ + + +//============================================================================= + +module com { module sun { module star { module util { + +//============================================================================= + + +published enum SearchAlgorithms { + ABSOLUTE, // "normal" a kind of Boyer-Moore + REGEXP, // regular expression + APPROXIMATE // Leveinstein distance +}; + + +//============================================================================= +}; }; }; }; + +#endif + diff --git a/offapi/com/sun/star/util/SearchFlags.idl b/offapi/com/sun/star/util/SearchFlags.idl new file mode 100644 --- /dev/null +++ b/offapi/com/sun/star/util/SearchFlags.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 + * + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +#ifndef __com_sun_star_lang_SearchFlags_idl__ +#define __com_sun_star_lang_SearchFlags_idl__ + + +//============================================================================= + +module com { module sun { module star { module util { + +//============================================================================= + + + +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. +

@see TransliterationModulesNew + */ + const long ALL_IGNORE_CASE = 0x00000001; + + /// Flag for normal (Boyer-Moore) search + const long NORM_WORD_ONLY = 0x00000010; + + /// Flag for "regular expression" search / interpret as extended regular expression + const long REG_EXTENDED = 0x00000100; + /** Flag for "regular expression" search / No replace, i.e., avoid sub regular + expresions, return true/false to match + + + */ + 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 + + will match the zero length string immediately after a newline in string, + regardless of the setting of REG_NOTBOL + A dollar-sign ($) in pattern when used to specify expression anchoring, + will match zero-length string immediately before a new line in string, + regardless of the setting of REG_NOTEOL +*/ + const long REG_NOT_BEGINOFLINE = 0x00000800; + + /** The first character in the string is not the beginning of the line therefore ^ will not + match with first character of the string + */ + const long REG_NOT_ENDOFLINE = 0x00001000; + + + /// Flags for "Weight Levenshtein-Distance" search + const long LEV_RELAXED = 0x00010000; +}; + + +//============================================================================= +}; }; }; }; + +#endif + diff --git a/offapi/com/sun/star/util/SearchOptions.idl b/offapi/com/sun/star/util/SearchOptions.idl new file mode 100644 --- /dev/null +++ b/offapi/com/sun/star/util/SearchOptions.idl @@ -0,0 +1,85 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +#ifndef __com_sun_star_lang_SearchOptions_idl__ +#define __com_sun_star_lang_SearchOptions_idl__ + + +#include +#include +#include + +//============================================================================= + +module com { module sun { module star { module util { + +//============================================================================= + + +published struct SearchOptions { + //------------------------------------------------------------------------- + /// search type, can be: ABSOLUTE, REGEXP, APPROXIMATE + SearchAlgorithms algorithmType; + + /** some flags - can be mixed + + @see SearchFlags + */ + long searchFlag; + + /// the search text + string searchString; + + /** the replace text + (is for optional replacing - SearchOption is only the data container for it)*/ + string replaceString; + + /// this is the language for case insensitive search + ::com::sun::star::lang::Locale Locale; + + /** this many characters can be different between the found and search word + in a "Weight Levenshtein-Distance"*/ + long changedChars; + + /** this many characters can be missed in the found word + in a "Weight Levenshtein-Distance"*/ + long deletedChars; + + /// this many characters can be additional in the found word in a "Weight Levenshtein-Distance" + long insertedChars; + + /** asian flags for the transliteration. Same meaning as the enum of TransliteratorModule + + @see com/sun/star/i18n/XTransliteration.idl + */ + long transliterateFlags; +}; + +}; }; }; }; + +#endif + diff --git a/offapi/com/sun/star/util/SearchResult.idl b/offapi/com/sun/star/util/SearchResult.idl new file mode 100644 --- /dev/null +++ b/offapi/com/sun/star/util/SearchResult.idl @@ -0,0 +1,66 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * + * for a copy of the LGPLv3 License. + * + ************************************************************************/ + +#ifndef __com_sun_star_lang_SearchResult_idl__ +#define __com_sun_star_lang_SearchResult_idl__ + + +//============================================================================= + +module com { module sun { module star { module util { + +//============================================================================= + + +published struct SearchResult { + //------------------------------------------------------------------------- + /** Number of subexpressions, + if it is 0, then no match found; this value is 1 for ABSOLUTE and APPROXIMATE match. + The start and endOffset are always dependent on the search direction. + For example: + if you search "X" in the text "-X-" the offset are: + for forward: start = 1, end = 2 + for backward: start = 2, end = 1 + Forward, the startOffset is inclusive, the endOffset exclusive. + Backward, the startOffset is exclusive, the endOffset inclusive. + + For regular expressions it can be greater than 1. + If the value is 1, startoffset[0] and endoffset[0] points to the matching sub string + if value is > 1, still startoffset[0] and endoffset[0] points to the matching substring for whole regular expression + startoffset[i] and endoffset[i] points to the matching substring of i th matching substring. + */ + long subRegExpressions; + sequence startOffset; // inclusive + sequence endOffset; // exclusive +}; + + +//============================================================================= +}; }; }; }; + +#endif + diff --git a/offapi/prj/makefile.mk b/offapi/prj/makefile.mk new file mode 100644 --- /dev/null +++ b/offapi/prj/makefile.mk @@ -0,0 +1,40 @@ +#************************************************************************* +# +# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +# +# Copyright 2000, 2010 Oracle and/or its affiliates. +# +# OpenOffice.org - a multi-platform office productivity suite +# +# This file is part of OpenOffice.org. +# +# OpenOffice.org is free software: you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License version 3 +# only, as published by the Free Software Foundation. +# +# OpenOffice.org is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Lesser General Public License version 3 for more details +# (a copy is included in the LICENSE file that accompanied this code). +# +# You should have received a copy of the GNU Lesser General Public License +# version 3 along with OpenOffice.org. If not, see +# +# for a copy of the LGPLv3 License. +# +#************************************************************************* + +PRJ=.. +TARGET=prj + +.INCLUDE : settings.mk + +.IF "$(VERBOSE)"!="" +VERBOSEFLAG := +.ELSE +VERBOSEFLAG := -s +.ENDIF + +all: + cd $(PRJ) && $(GNUMAKE) $(VERBOSEFLAG) -r -j$(MAXPROCESS) $(gb_MAKETARGET)