summaryrefslogtreecommitdiff
path: root/offapi/com/sun/star/sheet
diff options
context:
space:
mode:
authorIvo Hinkelmann <ihi@openoffice.org>2009-04-22 10:06:26 +0000
committerIvo Hinkelmann <ihi@openoffice.org>2009-04-22 10:06:26 +0000
commit6d8b4b63ab0255a9f00104ce148536c4e60a8354 (patch)
treeb6f43b87ff37e3adcd7d537189ca826ef5fdd966 /offapi/com/sun/star/sheet
parent99e3190f3622b79b188daee80ae332d1fedfdadf (diff)
CWS-TOOLING: integrate CWS dr67
2009-04-08 13:23:56 +0200 dr r270638 : #i100534# reverted 2009-04-08 10:14:55 +0200 dr r270621 : CWS-TOOLING: rebase CWS dr67 to trunk@270033 (milestone: DEV300:m45) 2009-04-07 21:06:33 +0200 dr r270610 : #i100534# sc does not link in debug mode 2009-03-12 11:20:09 +0100 dr r269375 : #i10000# wae 2009-03-11 19:43:55 +0100 dr r269351 : #i10000# adjust oox namespace ids according to oox/inc/oox/core/namespaces.hxx 2009-03-11 15:38:52 +0100 dr r269339 : CWS-TOOLING: rebase CWS dr67 to trunk@269297 (milestone: DEV300:m43) 2009-02-27 15:20:21 +0100 dr r268598 : CWS-TOOLING: rebase CWS dr67 to trunk@268395 (milestone: DEV300:m42) 2009-02-19 13:32:17 +0100 dr r268277 : moved hf parser into page settings 2009-02-19 12:25:15 +0100 dr r268272 : renamed some structs according to chart filter 2009-02-16 15:51:31 +0100 dr r267823 : #i97873# import autosort settings from BIFF8/OOBIN/OOXML 2009-02-06 17:09:29 +0100 dr r267477 : #i97873# minor changes 2009-02-06 16:38:56 +0100 dr r267473 : #i97873# import date grouping settings from BIFF5/BIFF8/OOBIN/OOXML 2009-02-06 16:38:11 +0100 dr r267472 : #i97873# check min/max/step of passed GroupInfo 2009-02-06 16:35:13 +0100 dr r267471 : #i97873# more doc for createDategroup() 2009-02-06 13:53:42 +0100 dr r267459 : #i97873# make XDataPilotGrouping::createDateGroup() implementation working and robust against wrong input data 2009-02-06 13:52:16 +0100 dr r267458 : #i97873# fix and extend IDL doc for datapilot grouping 2009-02-06 12:35:49 +0100 dr r267453 : fix other IDLC warnings in sheet module 2009-02-06 12:05:19 +0100 dr r267448 : #i97873# fix and extend IDL doc for datapilot grouping 2009-02-02 17:58:46 +0100 dr r267284 : #i10000# rebase errors 2009-02-02 17:52:21 +0100 dr r267282 : #i10000# rebase errors 2009-02-02 17:35:58 +0100 dr r267280 : #i10000# rebase errors 2009-02-02 15:58:04 +0100 dr r267274 : CWS-TOOLING: rebase CWS dr67 to trunk@267171 (milestone: DEV300:m41) 2009-02-02 09:16:32 +0100 dr r267247 : #i97873# typo 2009-01-30 17:09:09 +0100 dr r267215 : #i97873# import numeric grouping settings for datapilot fields from BIFF5/BIFF8/OOBIN/OOXML 2009-01-29 16:36:24 +0100 dr r267154 : #i97873# import datapilot discrete grouping from BIFF5/BIFF8/OOBIN/OOXLS 2009-01-29 16:33:37 +0100 dr r267152 : #i97873# do not kill _all_ the other group fields when writing back DataPilotField::GroupInfo property 2009-01-29 14:15:45 +0100 dr r267133 : #i93839# remove ScChengeTrack::Load and ::Store, adapt xls export filter 2009-01-28 13:30:37 +0100 dr r267056 : #i98397# enhance DataPilot API: allow to rename groups and items in a group field 2009-01-28 12:09:05 +0100 dr r267051 : #i98397# enhance DataPilot API: allow to rename groups and items in a group field 2009-01-27 16:13:58 +0100 dr r267005 : #i97873# minor changes in DataPilot API implementation as preparation for additional changes needed for OOX import filter 2009-01-27 10:08:01 +0100 dr r266961 : #i97873# changing orientation of a DP field moves it to last position in new dimension 2009-01-27 10:06:50 +0100 dr r266960 : #i97873# changing orientation of a DP field moves it to last position in new dimension 2009-01-23 12:52:31 +0100 dr r266808 : #i97873# DP documentation extended 2009-01-21 20:07:15 +0100 dr r266702 : #i97873# this trivial patch adds BIFF5/BIFF8 pivot table import to the oox filter 2009-01-20 16:06:23 +0100 dr r266592 : select BIFF filter via env.var 2009-01-16 18:51:01 +0100 dr r266452 : #i97873# import page fields 2009-01-16 15:05:36 +0100 dr r266420 : #i97873# field item settings (collapsed/hidden), settings of hidden fields 2009-01-15 16:01:17 +0100 dr r266377 : #i97873# import OOXML7/OOBIN7 autoshow settings 2009-01-14 15:24:27 +0100 dr r266310 : #i97873# import auto show settings generated by MSO2003 2009-01-14 12:29:44 +0100 dr r266281 : #i97873# set global dp settings 2009-01-13 15:04:30 +0100 dr r266229 : #i98029# SdrGroupObj does not remember predefined bounding rectangle anymore 2009-01-13 14:46:50 +0100 dr r266225 : #i98029# SdrGroupObj does not remember predefined bounding rectangle anymore 2009-01-12 15:04:22 +0100 dr r266161 : #i97873# remove misleading hasDataLayoutField() 2009-01-12 15:03:42 +0100 dr r266160 : #i97873# remove misleading hasDataLayoutField() 2009-01-12 14:57:33 +0100 dr r266159 : #i97900# reverted previous change, adjusted code to new EnableRTL() behaviour 2009-01-12 14:52:43 +0100 dr r266158 : #i97900# reverted previous change, adjusted code to new EnableRTL() behaviour 2009-01-09 16:34:55 +0100 dr r266098 : #i97900# RTL handling in TabBar changed with CWS rtlcontrols 2009-01-09 16:32:16 +0100 dr r266097 : #i97900# RTL handling in TabBar changed with CWS rtlcontrols 2009-01-09 12:02:39 +0100 dr r266072 : #i97623# RTL handling changed after CWS rtlcontrols 2009-01-09 09:48:53 +0100 dr r266050 : #i158444# SXLI must be filled completely before starting CONTINUE 2009-01-08 18:50:08 +0100 dr r266032 : #158444# allow to disable dump of record positions 2009-01-08 15:46:45 +0100 dr r266020 : #i97873# data layout field handling 2009-01-08 15:45:45 +0100 dr r266019 : #i97873# data layout field handling 2009-01-08 15:42:25 +0100 dr r266018 : #i97873# data layout field handling 2009-01-02 17:28:32 +0100 dr r265844 : #i10000# unxmacxi warning 2009-01-02 16:59:13 +0100 dr r265842 : #i10000# rebase corrections 2009-01-02 16:44:44 +0100 dr r265838 : #i10000# rebase corrections 2009-01-02 11:32:44 +0100 dr r265834 : CWS-TOOLING: rebase CWS dr67 to trunk@265758 (milestone: DEV300:m38) 2008-12-29 16:55:40 +0100 dr r265822 : more pivot table import, field layout settings 2008-12-29 14:27:35 +0100 dr r265817 : more pivot table import, additions for data field settings 2008-12-26 14:39:21 +0100 dr r265805 : updates 2008-12-19 16:31:39 +0100 dr r265734 : typo 2008-12-19 16:30:00 +0100 dr r265733 : add API for sequence of DP field subtotal functions 2008-12-19 16:29:43 +0100 dr r265732 : add API for sequence of DP field subtotal functions 2008-12-19 16:29:07 +0100 dr r265731 : add API for sequence of DP field subtotal functions 2008-12-18 18:07:58 +0100 dr r265710 : #i96758# try to cache row default formatting and apply it at row ranges instead of single rows 2008-12-18 16:00:25 +0100 dr r265698 : more additions to pivot import 2008-12-17 13:38:19 +0100 dr r265599 : do not assert HIDDEN orientation 2008-12-12 13:51:29 +0100 dr r265415 : minor typos 2008-12-12 10:15:04 +0100 dr r265394 : pivot cache import extended to XLSB, added creation of cache data for missing/external sheets 2008-12-04 13:16:16 +0100 dr r264837 : #i96860# remove old dumper files 2008-12-04 12:17:38 +0100 dr r264834 : #i96858# XTO broken, if textbox is empty but contains formatting 2008-12-04 12:16:38 +0100 dr r264833 : #i96858# XTO broken, if textbox is empty but contains formatting 2008-12-03 14:51:05 +0100 dr r264784 : #i10000# warnings 2008-12-03 14:32:46 +0100 dr r264778 : #i10000# warning 2008-12-03 11:28:38 +0100 dr r264758 : #i96758# ignore zero-sized objects 2008-12-03 10:09:34 +0100 dr r264748 : #i96758# change ::oox::Property(Set|Map) keys to sal_Int32 property identifiers, to save construction of property names 2008-12-01 16:09:02 +0100 dr r264615 : #i96758# headerdoc 2008-12-01 14:49:04 +0100 dr r264607 : #i96758# import performance of formatted documents 2008-11-26 17:08:15 +0100 dr r264424 : make it more simple 2008-11-26 16:31:41 +0100 dr r264419 : c:crossesAt is for crossing axis, not for own axis. This is different to BIFF 2008-11-26 13:55:55 +0100 dr r264382 : #i86346# import of MissingValueTreatment from XLSX 2008-11-26 12:49:38 +0100 dr r264370 : #i86346# import/export of MissingValueTreatment from/to XLS 2008-11-25 17:48:59 +0100 dr r264320 : update row height with single progress bar when using 'IsAdjustHeightEnabled' document property 2008-11-25 17:24:26 +0100 dr r264319 : #i96438# disable importing comment text until API is fixed 2008-11-25 17:11:30 +0100 dr r264318 : #i90124# set control tooltips, patch from npower 2008-11-25 15:09:28 +0100 dr r264309 : #i94028# #i94991# update drawing objects when changing row height 2008-11-24 15:21:35 +0100 dr r264224 : prevent ::rtl::OUString::copy assertion 2008-11-24 15:19:39 +0100 dr r264223 : #i95183# #158573# handle non-ascii characters in sheet names in OOXML import 2008-11-24 12:54:30 +0100 dr r264221 : #i94157# support ESC key to leave full-screen in page preview 2008-11-21 18:15:17 +0100 dr r264165 : #i90360# disable chart perspective if it is set to 0 2008-11-21 18:14:41 +0100 dr r264164 : #i90360# disable chart perspective if it is set to 0 2008-11-21 17:43:26 +0100 dr r264155 : #i96140# missing parenth 2008-11-21 17:36:35 +0100 dr r264154 : #i96438# first steps of note import 2008-11-20 15:15:03 +0100 dr r264059 : get rid of ContextWrapper 2008-11-18 11:39:52 +0100 dr r263755 : #i78476# moved to CWS dr67
Diffstat (limited to 'offapi/com/sun/star/sheet')
-rw-r--r--offapi/com/sun/star/sheet/DDELinkInfo.idl29
-rw-r--r--offapi/com/sun/star/sheet/DataPilotDescriptor.idl13
-rw-r--r--offapi/com/sun/star/sheet/DataPilotField.idl71
-rw-r--r--offapi/com/sun/star/sheet/DataPilotFieldGroup.idl56
-rw-r--r--offapi/com/sun/star/sheet/DataPilotFieldGroupBy.idl97
-rw-r--r--offapi/com/sun/star/sheet/DataPilotFieldGroupEnumeration.idl67
-rw-r--r--offapi/com/sun/star/sheet/DataPilotFieldGroupInfo.idl114
-rw-r--r--offapi/com/sun/star/sheet/DataPilotFieldGroups.idl59
-rw-r--r--offapi/com/sun/star/sheet/DataPilotFieldGroupsEnumeration.idl67
-rw-r--r--offapi/com/sun/star/sheet/DataPilotItem.idl8
-rw-r--r--offapi/com/sun/star/sheet/DataPilotItems.idl4
-rw-r--r--offapi/com/sun/star/sheet/ExternalLinkInfo.idl31
-rw-r--r--offapi/com/sun/star/sheet/FormulaMapGroupSpecialOffset.idl53
-rw-r--r--offapi/com/sun/star/sheet/FormulaParser.idl30
-rw-r--r--offapi/com/sun/star/sheet/XDataPilotDataLayoutFieldSupplier.idl77
-rw-r--r--offapi/com/sun/star/sheet/XDataPilotDescriptor.idl2
-rw-r--r--offapi/com/sun/star/sheet/XDataPilotFieldGrouping.idl114
-rw-r--r--offapi/com/sun/star/sheet/XFormulaOpCodeMapper.idl85
-rw-r--r--offapi/com/sun/star/sheet/makefile.mk3
19 files changed, 758 insertions, 222 deletions
diff --git a/offapi/com/sun/star/sheet/DDELinkInfo.idl b/offapi/com/sun/star/sheet/DDELinkInfo.idl
index 4edba2eff4f2..9fdd218f99d2 100644
--- a/offapi/com/sun/star/sheet/DDELinkInfo.idl
+++ b/offapi/com/sun/star/sheet/DDELinkInfo.idl
@@ -41,42 +41,37 @@ module com { module sun { module star { module sheet {
//=============================================================================
/** describes all items of a DDE connection used in formulas.
- A DDE connection consists of the DDE service name, the DDE topic and a
- list of DDE items which may contain results cached from the last update.
-
- The formula that would need this information for example would contain
- =[1]!'R1C1' or =[2]!'Sheet1.A1' where [1] is an external link with DDE
- service name "excel" and topic "X:\PATH\[FILE.XLSX]Sheet1", and [2]
- contains service "soffice" and topic "file:///X:/PATH/FILE.ODS". The
- service name is stored in <member>DDELinkInfo::Service</member>, the topic
- is stored in <member>DDELinkInfo::Topic</member>. Note that if the DDE
- item contains single quotes they are escaped by doubling them, as usual.
- For example =[2]!'''Sheet name''.A1' in a "soffice" service.
+ <p>A DDE connection consists of the DDE service name, the DDE topic and a
+ list of DDE items which may contain results cached from the last update.</p>
+
+ <p>The formula that would need this information for example would contain
+ <code>=[1]!'R1C1'</code> or <code>=[2]!'Sheet1.A1'</code> where
+ <em>[1]</em> is an external link with DDE service name "excel" and the
+ topic "X:\PATH\[FILE.XLSX]Sheet1", and <em>[2]</em> contains service
+ "soffice" and topic "file:///X:/PATH/FILE.ODS". The service name is stored
+ in <member>DDELinkInfo::Service</member>, the topic is stored in
+ <member>DDELinkInfo::Topic</member>. Note that if the DDE item contains
+ single quotes they are escaped by doubling them, as usual, for example
+ <code>=[2]!'''Sheet name''.A1'</code> in a "soffice" service.</p>
@since OOo3.1
*/
struct DDELinkInfo
{
//-------------------------------------------------------------------------
-
/** The DDE service name.
*/
-
string Service;
//-------------------------------------------------------------------------
-
/** The DDE topic.
*/
-
string Topic;
//-------------------------------------------------------------------------
-
/** A list of DDE items. Each item may contain its results from the last
update.
*/
-
sequence< DDEItemInfo > Items;
};
diff --git a/offapi/com/sun/star/sheet/DataPilotDescriptor.idl b/offapi/com/sun/star/sheet/DataPilotDescriptor.idl
index a677303a7c54..f44655bd96aa 100644
--- a/offapi/com/sun/star/sheet/DataPilotDescriptor.idl
+++ b/offapi/com/sun/star/sheet/DataPilotDescriptor.idl
@@ -35,6 +35,10 @@
#include <com/sun/star/sheet/XDataPilotDescriptor.idl>
#endif
+#ifndef __com_sun_star_sheet_XDataPilotDataLayoutFieldSupplier_idl__
+#include <com/sun/star/sheet/XDataPilotDataLayoutFieldSupplier.idl>
+#endif
+
#ifndef __com_sun_star_beans_XPropertySet_idl__
#include <com/sun/star/beans/XPropertySet.idl>
#endif
@@ -55,7 +59,7 @@ published service DataPilotDescriptor
/** provides access to the layout settings of the data pilot table.
*/
- interface com::sun::star::sheet::XDataPilotDescriptor;
+ interface XDataPilotDescriptor;
//-------------------------------------------------------------------------
@@ -63,6 +67,13 @@ published service DataPilotDescriptor
*/
[optional] interface com::sun::star::beans::XPropertySet;
+ //-------------------------------------------------------------------------
+
+ /** Provides access to the <type>DataPilotField</type> used to layout
+ multiple data fields.
+ */
+ [optional] interface XDataPilotDataLayoutFieldSupplier;
+
//=========================================================================
/** specifies the orientation of the field.
diff --git a/offapi/com/sun/star/sheet/DataPilotField.idl b/offapi/com/sun/star/sheet/DataPilotField.idl
index a4bf3c9a082d..83ae7892e0c2 100644
--- a/offapi/com/sun/star/sheet/DataPilotField.idl
+++ b/offapi/com/sun/star/sheet/DataPilotField.idl
@@ -83,9 +83,9 @@ module com { module sun { module star { module sheet {
/** represents a single field in a data pilot table.
- <p>If the data pilot table is based on a spreadsheet cell range, a
- field is representred by a column of the range and is named using
- the topmost cell of the column.</p>
+ <p>If the data pilot table is based on a spreadsheet cell range, a field
+ is representred by a column of the range and is named using the topmost
+ cell of the column.</p>
*/
published service DataPilotField
{
@@ -104,17 +104,21 @@ published service DataPilotField
//-------------------------------------------------------------------------
- [optional] interface com::sun::star::sheet::XDataPilotField;
+ [optional] interface XDataPilotField;
//-------------------------------------------------------------------------
- [optional] interface com::sun::star::sheet::XDataPilotFieldGrouping;
+ [optional] interface XDataPilotFieldGrouping;
//=========================================================================
/** specifies the orientation of the field.
+
+ <p>If the orientation of a field has been changed using this property,
+ the field will be moved to the last position in the collection of all
+ fields with the specified orientation.</p>
*/
- [property] com::sun::star::sheet::DataPilotFieldOrientation Orientation;
+ [property] DataPilotFieldOrientation Orientation;
//-------------------------------------------------------------------------
@@ -125,21 +129,39 @@ published service DataPilotField
For data fields, this is the function shown in the data pilot
table.</p>
*/
- [property] com::sun::star::sheet::GeneralFunction Function;
+ [property] GeneralFunction Function;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the functions used to calculate subtotals for this field.
+
+ <p>This property is supported by column and row fields only.</p>
+ <p>An empty sequence means no subtotals. The same effect can be
+ achieved by setting the property <member>Function</member> to the
+ value <const>GeneralFunction::NONE</const>. If the length of the
+ sequence is greater then 1, then the sequence MUST NOT contain one of
+ the values <const>GeneralFunction::NONE</const> or
+ <const>GeneralFunction::AUTO</const>.</p>
+
+ <p>The order of the functions in this sequence is reflected in the
+ DataPilot table. Multiple entries of the same function are ignored
+ when setting the property.</p>
+ */
+ [property, optional] sequence<GeneralFunction> Subtotals;
//-------------------------------------------------------------------------
/** specifies the selected page which is used to filter the data pilot.
*/
- [property,optional] string SelectedPage;
+ [property, optional] string SelectedPage;
//-------------------------------------------------------------------------
/** specifies whether to use the selected page to filter the data pilot or
show all.
*/
- [property,optional] boolean UseSelectedPage;
+ [property, optional] boolean UseSelectedPage;
//-------------------------------------------------------------------------
@@ -147,73 +169,78 @@ published service DataPilotField
@see com::sun::star::sheet::DataPilotSourceHierarchies
*/
- [property,optional] string UsedHierarchy;
+ [property, optional] string UsedHierarchy;
//-------------------------------------------------------------------------
/** specifies whether this field has sorting information.
*/
- [property,optional] boolean HasSortInfo;
+ [property, optional] boolean HasSortInfo;
//-------------------------------------------------------------------------
/** controls how the field's items are sorted.
*/
- [property,optional] com::sun::star::sheet::DataPilotFieldSortInfo SortInfo;
+ [property, optional] DataPilotFieldSortInfo SortInfo;
//-------------------------------------------------------------------------
/** specifies whether this field has layout information.
*/
- [property,optional] boolean HasLayoutInfo;
+ [property, optional] boolean HasLayoutInfo;
//-------------------------------------------------------------------------
/** controls how the field's items are laid out in the result table.
*/
- [property,optional] com::sun::star::sheet::DataPilotFieldLayoutInfo LayoutInfo;
+ [property, optional] DataPilotFieldLayoutInfo LayoutInfo;
//-------------------------------------------------------------------------
/** specifies whether this field has auto show information.
*/
- [property,optional] boolean HasAutoShowInfo;
+ [property, optional] boolean HasAutoShowInfo;
//-------------------------------------------------------------------------
/** enables the automatic inclusion of only a number of items with
the highest or lowest result values.
*/
- [property,optional] com::sun::star::sheet::DataPilotFieldAutoShowInfo AutoShowInfo;
+ [property, optional] DataPilotFieldAutoShowInfo AutoShowInfo;
//-------------------------------------------------------------------------
/** specifies whether this field has a reference.
*/
- [property,optional] boolean HasReference;
+ [property, optional] boolean HasReference;
//-------------------------------------------------------------------------
/** controls how the results are shown in relation to a selected
reference result.
*/
- [property,optional] com::sun::star::sheet::DataPilotFieldReference Reference;
+ [property, optional] DataPilotFieldReference Reference;
//-------------------------------------------------------------------------
/** specifies whether this field is a group field.
*/
- [property,optional] boolean IsGroupField;
+ [property, optional] boolean IsGroupField;
//-------------------------------------------------------------------------
- /** contains the grouping information of the Field
+ /** contains the grouping information of the DataPilot field.
+
+ <p>By changing the value of this property it is possible to modify the
+ grouping settings of this field.</p>
*/
- [property,optional] com::sun::star::sheet::DataPilotFieldGroupInfo GroupInfo;
+ [property, optional] DataPilotFieldGroupInfo GroupInfo;
+
+ //-------------------------------------------------------------------------
/** specifies whether to show this field also if it is empty or not.
*/
- [property,optional] boolean ShowEmpty;
+ [property, optional] boolean ShowEmpty;
};
//=============================================================================
diff --git a/offapi/com/sun/star/sheet/DataPilotFieldGroup.idl b/offapi/com/sun/star/sheet/DataPilotFieldGroup.idl
index f66ff0ce0ba5..f520e0d5644e 100644
--- a/offapi/com/sun/star/sheet/DataPilotFieldGroup.idl
+++ b/offapi/com/sun/star/sheet/DataPilotFieldGroup.idl
@@ -34,8 +34,8 @@
#ifndef __com_sun_star_container_XNamed_idl__
#include <com/sun/star/container/XNamed.idl>
#endif
-#ifndef __com_sun_star_container_XNameAccess_idl__
-#include <com/sun/star/container/XNameAccess.idl>
+#ifndef __com_sun_star_container_XNameContainer_idl__
+#include <com/sun/star/container/XNameContainer.idl>
#endif
#ifndef __com_sun_star_container_XEnumerationAccess_idl__
#include <com/sun/star/container/XEnumerationAccess.idl>
@@ -52,19 +52,28 @@ module com { module sun { module star { module sheet {
/** represents a collection of members in a data pilot field group.
- @see com::sun::star::sheet::DataPilotFieldGroupMember
+ <p>The members (also called items) of this collection are instances of
+ <type>DataPilotFieldGroupItem</type>.</p>
+
+ @see DataPilotField
+ @see DataPilotFieldGroups
+ @see DataPilotFieldGroupItem
*/
published service DataPilotFieldGroup
{
//-------------------------------------------------------------------------
/** provides access to the name of the data pilot field group.
+
+ <p>It is possible to change the name of this field group as long as
+ the new name is not used in the collection of groups in the field.</p>
*/
interface com::sun::star::container::XNamed;
//-------------------------------------------------------------------------
- /** provides access to the data pilot field group members in the collection via index.
+ /** provides access to the data pilot field group members in the
+ collection via index.
*/
interface com::sun::star::container::XIndexAccess;
@@ -72,16 +81,51 @@ published service DataPilotFieldGroup
/** creates an enumeration of all data pilot field group members.
- @see com::sun::star::sheet::DataPilotItemsEnumeration
+ @see DataPilotFieldGroupEnumeration
*/
interface com::sun::star::container::XEnumerationAccess;
//-------------------------------------------------------------------------
- /** provides access to the data pilot field group members in the collection via name.
+ /** provides access to the data pilot field group members in the
+ collection via name.
*/
interface com::sun::star::container::XNameAccess;
+ //-------------------------------------------------------------------------
+
+ /** provides read/write access to the data pilot field group members in
+ the collection via name.
+
+ <p>The <type scope="com::sun::star::container">XNameContainer</type>
+ and <type scope="com::sun::star::container">XNameReplace</type>
+ interfaces can be used to manage the members that this group contains.
+ It is possible to insert, remove, and replace members.</p>
+
+ <p>The method <member scope="com::sun::star::container">
+ XNameReplace::replaceByName</member> can be used to rename the
+ specified member. To do so, the new name has to be passed as second
+ argument. An implementation should support the following data types:
+
+ <ul>
+ <li>a non-empty <atom>string</atom> specifying the new name of the
+ group member.</li>
+ <li>an object supporting the <type scope="com::sun::star::container">
+ XNamed</type> interface, for example an instance of
+ <type>DataPilotFieldGroupItem</type> received from another group.</li>
+ </ul></p>
+
+ <p>The method <member scope="com::sun::star::container">
+ XNameContainer::insertByName</member> can be used to insert a new
+ member into this field group. An implementation should ignore the
+ second argument and insert the specified member name.</p>
+
+ <p>The method <member scope="com::sun::star::container">
+ XNameContainer::removeByName</member> can be used to remove an
+ existing member name.</p>
+ */
+ [optional] interface com::sun::star::container::XNameContainer;
+
};
//=============================================================================
diff --git a/offapi/com/sun/star/sheet/DataPilotFieldGroupBy.idl b/offapi/com/sun/star/sheet/DataPilotFieldGroupBy.idl
index 18136dbb1e0f..77b2d12ee13e 100644
--- a/offapi/com/sun/star/sheet/DataPilotFieldGroupBy.idl
+++ b/offapi/com/sun/star/sheet/DataPilotFieldGroupBy.idl
@@ -37,17 +37,100 @@ module com { module sun { module star { module sheet {
//=============================================================================
-/** These constants select different types of DataPilotFieldGroups.
+/** These constants select different types for grouping members of a DataPilot
+ field by date or time.
+
+ @see DataPilotFieldGroupInfo
*/
published constants DataPilotFieldGroupBy
{
- const long SECONDS = 1;
- const long MINUTES = 2;
- const long HOURS = 4;
- const long DAYS = 8;
- const long MONTHS = 16;
+ // -----------------------------------------------------------------------
+ /** Groups all members of a DataPilot field containing a date/time value
+ by their current value for seconds.
+
+ <p>Example: The group <em>:02</em> will contain all members that
+ contain a time with a seconds value of 2, regardless of the date,
+ hours and minutes of the member, e.g. <em>2002-Jan-03 00:00:02</em> or
+ <em>1999-May-02 12:45:02</em>.</p>
+ */
+ const long SECONDS = 1;
+
+ // -----------------------------------------------------------------------
+ /** Groups all members of a DataPilot field containing a date/time value
+ by their current value for minutes.
+
+ <p>Example: The group <em>:02</em> will contain all members that
+ contain a time with a minutes value of 2, regardless of the date,
+ hours and seconds of the member, e.g. <em>2002-Jan-03 00:02:00</em> or
+ <em>1999-May-02 12:02:45</em>.</p>
+ */
+ const long MINUTES = 2;
+
+ // -----------------------------------------------------------------------
+ /** Groups all members of a DataPilot field containing a date/time value
+ by their current value for hours.
+
+ <p>Example: The group <em>02</em> will contain all members that
+ contain a time with a hour value of 2, regardless of the date, minutes
+ and seconds of the member, e.g. <em>2002-Jan-03 02:00:00</em> or
+ <em>1999-May-02 02:12:45</em>.</p>
+ */
+ const long HOURS = 4;
+
+ // -----------------------------------------------------------------------
+ /** Groups all members of a DataPilot field containing a date/time value
+ by their calendar day, or by ranges of days.
+
+ <p>Examples:
+ <ul>
+ <li>Calendar day grouping: The group <em>Jan 03</em> will contain all
+ members that contain the january 3rd, regardless of the year or time
+ of the member, e.g. <em>2002-Jan-03 00:00:00</em> or
+ <em>1999-Jan-03 02:12:45</em>.</li>
+
+ <li>Day range grouping: The group <em>2002-Jan-03 - 2002-Jan-09</em>
+ will contain all members with a date/time in the range from
+ 2002-Jan-03 00:00:00 through 2002-Jan-09 23:59:59.</li>
+ </ul></p>
+
+ <p>See descriptions for <member>XDataPilotFieldGrouping::createDateGroup
+ </member> for more details about day grouping.</p>
+ */
+ const long DAYS = 8;
+
+ // -----------------------------------------------------------------------
+ /** Groups all members of a DataPilot field containing a date/time value
+ by their month.
+
+ <p>Example: The group <em>Jan</em> will contain all members with a
+ date in the month january, regardless of the year, day, or time of the
+ member, e.g. <em>2002-Jan-03 00:00:00</em> or
+ <em>1999-Jan-02 02:12:45</em>.</p>
+ */
+ const long MONTHS = 16;
+
+ // -----------------------------------------------------------------------
+ /** Groups all members of a DataPilot field containing a date/time value
+ by their quarter.
+
+ <p>Example: The group <em>Q1</em> will contain all members with a
+ date in the first quarter of a year (i.e. the months january,
+ february, and march), regardless of the year, day, or time of the
+ member, e.g. <em>2002-Jan-03 00:00:00</em> or
+ <em>1999-Mar-02 02:12:45</em>.</p>
+ */
const long QUARTERS = 32;
- const long YEARS = 64;
+
+ // -----------------------------------------------------------------------
+ /** Groups all members of a DataPilot field containing a date/time value
+ by their year.
+
+ <p>Example: The group <em>1999</em> will contain all members with a
+ date in the year 1999, regardless of the month, day, or time of the
+ member, e.g. <em>1999-Jan-03 00:00:00</em> or
+ <em>1999-May-02 02:12:45</em>.</p>
+ */
+ const long YEARS = 64;
};
//=============================================================================
diff --git a/offapi/com/sun/star/sheet/DataPilotFieldGroupEnumeration.idl b/offapi/com/sun/star/sheet/DataPilotFieldGroupEnumeration.idl
new file mode 100644
index 000000000000..01d0d35e44c3
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataPilotFieldGroupEnumeration.idl
@@ -0,0 +1,67 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2008 by Sun Microsystems, Inc.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: DataPilotItemsEnumeration.idl,v $
+ * $Revision: 1.4 $
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DataPilotFieldGroupEnumeration_idl__
+#define __com_sun_star_sheet_DataPilotFieldGroupEnumeration_idl__
+
+#ifndef __com_sun_star_container_XEnumeration_idl__
+#include <com/sun/star/container/XEnumeration.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents an enumeration of members in a DataPilot field group.
+
+ @see DataPilotFieldGroupItem
+ @see DataPilotFieldGroup
+ */
+service DataPilotFieldGroupEnumeration
+{
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access the group members in the enumeration.
+
+ <p>The elements of the enumeration are instances of
+ <type>DataPilotFieldGroupItem</type>.</p>
+ */
+ interface com::sun::star::container::XEnumeration;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DataPilotFieldGroupInfo.idl b/offapi/com/sun/star/sheet/DataPilotFieldGroupInfo.idl
index 1ecf58e013c9..690d9342a568 100644
--- a/offapi/com/sun/star/sheet/DataPilotFieldGroupInfo.idl
+++ b/offapi/com/sun/star/sheet/DataPilotFieldGroupInfo.idl
@@ -50,75 +50,113 @@ published struct DataPilotFieldGroupInfo
{
//-------------------------------------------------------------------------
- /** specifies whether the start value for the grouping is taken automatically
- */
-
- boolean HasAutoStart;
+ /** specifies whether the start value for the grouping is taken
+ automatically from the minimum of the item values.
+
+ <p><ul>
+ <li>If <FALSE/> is set, the value from <member>Start</member> will be
+ used as start value for the grouping.</li>
+ <li>If <TRUE/> is set, the start value for the grouping will be
+ calculated automatically from the minimum of all member values of the
+ DataPilot field.</li>
+ </ul></p>
+ */
+ boolean HasAutoStart;
//-------------------------------------------------------------------------
- /** specifies whether the end value for the grouping is taken automatically
- */
+ /** specifies whether the end value for the grouping is taken
+ automatically from the maximum of the item values.
- boolean HasAutoEnd;
+ <p><ul>
+ <li>If <FALSE/> is set, the value from <member>End</member> will be
+ used as end value for the grouping.</li>
+ <li>If <TRUE/> is set, the end value for the grouping will be
+ calculated automatically from the maximum of all member values of the
+ DataPilot field.</li>
+ </ul></p>
+ */
+ boolean HasAutoEnd;
//-------------------------------------------------------------------------
- /** specifies whether date values are grouped
- */
-
- boolean HasDateValues;
+ /** specifies whether date values are grouped by ranges of days.
+
+ <p><ul>
+ <li>If <FALSE/> is set, and <member>GroupBy</member> contains zero,
+ grouping is performed inplace on the item values.</li>
+ <li>If <FALSE/> is set, and <member>GroupBy</member> contains one or
+ more flags from <type>DataPilotFieldGroupBy</type>, grouping is
+ performed on date or time.</li>
+ <li>If <TRUE/> is set, <member>Step</member> contains a value greater
+ than or equal to 1, and <member>GroupBy</member> set to <const>
+ DataPilotFieldGroupBy::DAYS</const>, grouping is performed on ranges
+ of days (see descriptions for <member>
+ XDataPilotFieldGrouping::createDateGroup</member> for more details
+ about day grouping).</li>
+ </ul></p>
+ */
+ boolean HasDateValues;
//-------------------------------------------------------------------------
- /** specifies the start value for the grouping if HasAutoStart is false
- */
-
- double Start;
+ /** specifies the start value for the grouping if <member>HasAutoStart
+ </member> is set to <FALSE/>.
+ */
+ double Start;
//-------------------------------------------------------------------------
- /** specifies the end value for the grouping if HasAutoEnd is false
- */
-
- double End;
+ /** specifies the end value for the grouping if <member>HasAutoEnd
+ </member> is set to <FALSE/>.
+ */
+ double End;
//-------------------------------------------------------------------------
- /** specifies the steps between the groups
- */
+ /** specifies the size of the ranges for numeric or day grouping.
- double Step;
+ <p>Example: With <member>HasAutoStart</member> set to <FALSE/>,
+ <member>Start</member> set to 2, and <member>Step</member> set to 3,
+ the first group will contain all values greater than or equal to 2 and
+ less than 5. The second group will contain all values greater than or
+ equal to 5 and less then 8, and so on.</p>
+ */
+ double Step;
//-------------------------------------------------------------------------
/** specifies the grouping of the date values.
- @see com::sun::star::sheet::DataPilotFieldGroupBy
-
- */
-
- long GroupBy;
+ @see DataPilotFieldGroupBy
+ */
+ long GroupBy;
//-------------------------------------------------------------------------
- /** specifies the source field.
-
- @see com::sun::star::sheet::DataPilotField
+ /** contains the source DataPilot field grouping is based on. Will be
+ <NULL/> if this field is not grouped or contains numeric grouping.
- */
-
- com::sun::star::sheet::XDataPilotField SourceField;
+ @see DataPilotField
+ */
+ XDataPilotField SourceField;
//-------------------------------------------------------------------------
- /** specifies the groups if there are some
-
- @see com::sun::star::sheet::DataPilotFieldGroups
+ /** specifies the named groups in this field if there are some.
- */
+ <p>The returned object is an instance of <type>DataPilotFieldGroups
+ </type>. The collection of groups can be modified by inserting,
+ removing, replacing, or renaming single groups or item names in the
+ groups. When writing back this struct containing such a changed
+ collection of groups to the <member>DataPilotField::GroupInfo</member>
+ property, the modified grouping settings are applied at the DataPilot
+ field.</p>
- com::sun::star::container::XNameAccess Groups;
+ @see DataPilotField
+ @see DataPilotFieldGroups
+ */
+ com::sun::star::container::XNameAccess Groups;
};
//=============================================================================
diff --git a/offapi/com/sun/star/sheet/DataPilotFieldGroups.idl b/offapi/com/sun/star/sheet/DataPilotFieldGroups.idl
index 0c195e41dfd7..2c60d9a4b71b 100644
--- a/offapi/com/sun/star/sheet/DataPilotFieldGroups.idl
+++ b/offapi/com/sun/star/sheet/DataPilotFieldGroups.idl
@@ -31,8 +31,8 @@
#ifndef __com_sun_star_sheet_DataPilotFieldGroups_idl__
#define __com_sun_star_sheet_DataPilotFieldGroups_idl__
-#ifndef __com_sun_star_container_XNameAccess_idl__
-#include <com/sun/star/container/XNameAccess.idl>
+#ifndef __com_sun_star_container_XNameContainer_idl__
+#include <com/sun/star/container/XNameContainer.idl>
#endif
#ifndef __com_sun_star_container_XEnumerationAccess_idl__
#include <com/sun/star/container/XEnumerationAccess.idl>
@@ -49,13 +49,19 @@ module com { module sun { module star { module sheet {
/** represents a collection of groups in a data pilot field.
- @see com::sun::star::sheet::DataPilotFieldGroup
+ <p>The members of this collection are instances of <type>DataPilotFieldGroup</type>
+ containing the names of all items in the group.</p>
+
+ @see DataPilotField
+ @see DataPilotFieldGroup
+ @see DataPilotFieldGroupInfo
*/
published service DataPilotFieldGroups
{
//-------------------------------------------------------------------------
- /** provides access to the data pilot field groups in the collection via index.
+ /** provides access to the data pilot field groups in the collection via
+ index.
*/
interface com::sun::star::container::XIndexAccess;
@@ -63,16 +69,57 @@ published service DataPilotFieldGroups
/** creates an enumeration of all data pilot field groups.
- @see com::sun::star::sheet::DataPilotItemsEnumeration
+ @see DataPilotFieldGroupsEnumeration
*/
interface com::sun::star::container::XEnumerationAccess;
//-------------------------------------------------------------------------
- /** provides access to the data pilot field groups in the collection via name.
+ /** provides access to the data pilot field groups in the collection via
+ name.
*/
interface com::sun::star::container::XNameAccess;
+ //-------------------------------------------------------------------------
+
+ /** provides read/write access to the data pilot field groups in the
+ collection via name.
+
+ <p>The <type scope="com::sun::star::container">XNameContainer</type>
+ and <type scope="com::sun::star::container">XNameReplace</type>
+ interfaces can be used to manage the item groups. It is possible to
+ insert, remove, and replace item groups.</p>
+
+ <p>The method <member scope="com::sun::star::container">
+ XNameReplace::replaceByName</member> can be used to replace the item
+ names in an existing group with a new collection of item names. An
+ implementation should support the following data types:
+
+ <ul>
+ <li>an empty <atom>any</atom> to remove all items and leave the
+ group empty. The group can be filled later with new item names.</li>
+ <li>a <atom dim="[]">string</atom> containing all item names that will
+ be part of the group.</li>
+ <li>an object supporting <type scope="com::sun::star::container">
+ XIndexAccess</type> containing elements that provide an item name per
+ element via the interface <type scope="com::sun::star::container">
+ XNamed</type>, for example an instance of <type>DataPilotFieldGroup
+ </type>.</li>
+ </ul></p>
+
+ <p>The method <member scope="com::sun::star::container">
+ XNameContainer::insertByName</member> can be used to insert a new
+ field group with the passed collection of item names. An
+ implementation should support the same data types as described above
+ for the method <member scope="com::sun::star::container">
+ XNameReplace::replaceByName</member>.</p>
+
+ <p>The method <member scope="com::sun::star::container">
+ XNameContainer::removeByName</member> can be used to remove an
+ existing field group.</p>
+ */
+ [optional] interface com::sun::star::container::XNameContainer;
+
};
//=============================================================================
diff --git a/offapi/com/sun/star/sheet/DataPilotFieldGroupsEnumeration.idl b/offapi/com/sun/star/sheet/DataPilotFieldGroupsEnumeration.idl
new file mode 100644
index 000000000000..4b0f29b70108
--- /dev/null
+++ b/offapi/com/sun/star/sheet/DataPilotFieldGroupsEnumeration.idl
@@ -0,0 +1,67 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2008 by Sun Microsystems, Inc.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: DataPilotItemsEnumeration.idl,v $
+ * $Revision: 1.4 $
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_DataPilotFieldGroupsEnumeration_idl__
+#define __com_sun_star_sheet_DataPilotFieldGroupsEnumeration_idl__
+
+#ifndef __com_sun_star_container_XEnumeration_idl__
+#include <com/sun/star/container/XEnumeration.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** represents an enumeration of member groups in a DataPilot field.
+
+ @see DataPilotFieldGroup
+ @see DataPilotFieldGroups
+ */
+service DataPilotFieldGroupsEnumeration
+{
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access the field groups in the enumeration.
+
+ <p>The elements of the enumeration are instances of
+ <type>DataPilotFieldGroup</type>.</p>
+ */
+ interface com::sun::star::container::XEnumeration;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/DataPilotItem.idl b/offapi/com/sun/star/sheet/DataPilotItem.idl
index b93746617514..89ca7e21c779 100644
--- a/offapi/com/sun/star/sheet/DataPilotItem.idl
+++ b/offapi/com/sun/star/sheet/DataPilotItem.idl
@@ -72,9 +72,9 @@ service DataPilotItem
//=========================================================================
- /** specifies whether the item is hidden.
- */
- [property] boolean IsHidden;
+ /** specifies whether the item is hidden.
+ */
+ [property] boolean IsHidden;
//=========================================================================
@@ -82,7 +82,7 @@ service DataPilotItem
@since OOo 2.4.0
*/
- [optional, property] boolean Position;
+ [optional, property] long Position;
};
//=============================================================================
diff --git a/offapi/com/sun/star/sheet/DataPilotItems.idl b/offapi/com/sun/star/sheet/DataPilotItems.idl
index 0b773f981196..3cf5ad244717 100644
--- a/offapi/com/sun/star/sheet/DataPilotItems.idl
+++ b/offapi/com/sun/star/sheet/DataPilotItems.idl
@@ -47,7 +47,9 @@ module com { module sun { module star { module sheet {
//=============================================================================
-/** represents a collection of Items in a data pilot field.
+/** represents a collection of items in a data pilot field.
+
+ @see DataPilotItem
*/
service DataPilotItems
{
diff --git a/offapi/com/sun/star/sheet/ExternalLinkInfo.idl b/offapi/com/sun/star/sheet/ExternalLinkInfo.idl
index 52758ec12474..2842b7077949 100644
--- a/offapi/com/sun/star/sheet/ExternalLinkInfo.idl
+++ b/offapi/com/sun/star/sheet/ExternalLinkInfo.idl
@@ -46,30 +46,29 @@ module com { module sun { module star { module sheet {
struct ExternalLinkInfo
{
//-------------------------------------------------------------------------
-
/** Link type, one of <type>ExternalLinkType</type> constants.
*/
-
long Type;
//-------------------------------------------------------------------------
-
/** Location of this link type.
- Modes used:
-
- 1. If <member>Type</member> is <const>ExternalLinkType::EXTERNAL</const>,
- this member shall contain a string with the <b>URI</b> of a
- document. The formula that would need this information for example
- would contain =[1]Sheet1!A1 or ='[1]Sheet name'!A1 where [1] does
- resolve to the URI contained in this Location member. Note that
- the quotes cover both, the document name and the sheet name.
-
- 2. If <member>Type</member> is <type>ExternalLinkType::DDE</type>,
- this member shall contain a <type>DDELinkType</type> describing
- service name, topic, and all known items of a DDE link.
+ <p>Modes used:
+
+ <ol>
+ <li>If <member>Type</member> is <const>ExternalLinkType::EXTERNAL
+ </const>, this member shall contain a <atom>string</atom> with the
+ <em>URI</em> of a document. The formula that would need this
+ information for example would contain <code>=[1]Sheet1!A1</code> or
+ <code>='[1]Sheet name'!A1</code> where <em>[1]</em> does resolve to
+ the URI contained in the member <member>Data</member>. Note that the
+ quotes cover both, the document name and the sheet name.</li>
+
+ <li>If <member>Type</member> is <const>ExternalLinkType::DDE</const>,
+ this member shall contain a <type>DDELinkInfo</type> describing
+ service name, topic, and all known items of a DDE link.</li>
+ </ol></p>
*/
-
any Data;
};
diff --git a/offapi/com/sun/star/sheet/FormulaMapGroupSpecialOffset.idl b/offapi/com/sun/star/sheet/FormulaMapGroupSpecialOffset.idl
index d205c1487536..c4b2babd7b4c 100644
--- a/offapi/com/sun/star/sheet/FormulaMapGroupSpecialOffset.idl
+++ b/offapi/com/sun/star/sheet/FormulaMapGroupSpecialOffset.idl
@@ -41,7 +41,7 @@ module com { module sun { module star { module sheet {
<member>XFormulaOpCodeMapper::getAvailableMappings</member> when
called for group <const>FormulaMapGroup::SPECIAL</const>.
- The number of constants may grow in future versions!
+ <p>The number of constants may grow in future versions!</p>
*/
constants FormulaMapGroupSpecialOffset
{
@@ -56,26 +56,24 @@ constants FormulaMapGroupSpecialOffset
<ul>
<li>A value of type <atom>double</atom> for literal floating-point
- constants.</li>
+ constants.</li>
<li>A <atom>string</atom> for literal text.</li>
- <li>A sequence of sequence of <atom>any</atom> for a literal array.
- The contained values shall be of type <atom>double</atom> or
- <atom>string</atom>. Floating-point values and strings may occur
- together in an array.</li>
+ <li>A <atom dim="[][]">any</atom> for a literal array. The contained
+ values shall be of type <atom>double</atom> or atom>string</atom>.
+ Floating-point values and strings may occur together in an array.</li>
<li>A struct of type <type>SingleReference</type> for a reference to a
- single cell in the own document.</li>
+ single cell in the own document.</li>
<li>A struct of type <type>ComplexReference</type> for a reference to
- a range of cells in the own document.</li>
+ a range of cells in the own document.</li>
<li>A struct of type <type>ExternalReference</type> for a reference to
- a cell, a range of cells, or a defined name in an external
- document.</li>
+ a cell, a range of cells, or a defined name in an external document.</li>
</ul>
*/
- const long PUSH = 0;
+ const long PUSH = 0;
// -----------------------------------------------------------------------
- const long CALL = 1;
+ const long CALL = 1;
// -----------------------------------------------------------------------
@@ -86,7 +84,7 @@ constants FormulaMapGroupSpecialOffset
<p>The <member>FormulaToken::Data</member> member is not used
and should be empty.</p>
*/
- const long STOP = 2;
+ const long STOP = 2;
// -----------------------------------------------------------------------
@@ -99,7 +97,7 @@ constants FormulaMapGroupSpecialOffset
"com.sun.star.sheet.addin.Analysis.getEomonth" for the EOMONTH
function from the Analsysis add-in.</p>
*/
- const long EXTERNAL = 3;
+ const long EXTERNAL = 3;
// -----------------------------------------------------------------------
@@ -110,11 +108,11 @@ constants FormulaMapGroupSpecialOffset
<p>The <member>FormulaToken::Data</member> member shall contain an
integer value of type <atom>long</atom> specifying the index of the
defined name. This index can be obtained from the defined name using
- its <type>NamedRange::TokenIndex</type> property.</p>
+ its <member>NamedRange::TokenIndex</member> property.</p>
@see NamedRange
*/
- const long NAME = 4;
+ const long NAME = 4;
// -----------------------------------------------------------------------
@@ -124,20 +122,21 @@ constants FormulaMapGroupSpecialOffset
<p>The <member>FormulaToken::Data</member> member is not used
and should be empty.</p>
*/
- const long NO_NAME = 5;
+ const long NO_NAME = 5;
// -----------------------------------------------------------------------
/** Formula tokens containing the op-code obtained from this offset
describe an empty function parameter.
- <p>Example: In the formula =SUM(1;;2) the second parameter is empty
- and represented by a formula token containing the "empty" op-code.</p>
+ <p>Example: In the formula <code>=SUM(1;;2)</code> the second
+ parameter is empty and represented by a formula token containing the
+ "missing" op-code.</p>
<p>The <member>FormulaToken::Data</member> member is not used
and should be empty.</p>
*/
- const long MISSING = 6;
+ const long MISSING = 6;
// -----------------------------------------------------------------------
@@ -147,17 +146,17 @@ constants FormulaMapGroupSpecialOffset
<p>The <member>FormulaToken::Data</member> member shall contain a
<atom>string</string> with the bad data. This string will be displayed
- in the formula.</p>
+ literally in the formula.</p>
*/
- const long BAD = 7;
+ const long BAD = 7;
// -----------------------------------------------------------------------
/** Formula tokens containing the op-code obtained from this offset
- describe white-space characters within the string representation of a
+ describe whitespace characters within the string representation of a
formula.
- <p>White-space characters in formulas are used for readability and do
+ <p>Whitespace characters in formulas are used for readability and do
not affect the result of the formula.</p>
<p>The <member>FormulaToken::Data</member> member shall contain a
@@ -168,11 +167,11 @@ constants FormulaMapGroupSpecialOffset
characters than simple space characters (e.g. line feeds, horizontal
tabulators, non-breakable spaces).</p>
*/
- const long SPACES = 8;
+ const long SPACES = 8;
// -----------------------------------------------------------------------
- const long MAT_REF = 9;
+ const long MAT_REF = 9;
// -----------------------------------------------------------------------
@@ -182,7 +181,7 @@ constants FormulaMapGroupSpecialOffset
<p>The <member>FormulaToken::Data</member> member shall contain an
integer value of type <atom>long</atom> specifying the index of the
database range. This index can be obtained from the database range
- using its <type>DatabaseRange::TokenIndex</type> property.</p>
+ using its <member>DatabaseRange::TokenIndex</member> property.</p>
@see DatabaseRange
*/
diff --git a/offapi/com/sun/star/sheet/FormulaParser.idl b/offapi/com/sun/star/sheet/FormulaParser.idl
index 7bc919286359..ba38acf791b0 100644
--- a/offapi/com/sun/star/sheet/FormulaParser.idl
+++ b/offapi/com/sun/star/sheet/FormulaParser.idl
@@ -69,20 +69,20 @@ service FormulaParser
// ------------------------------------------------------------------------
- /** Whether to use English parser and formatter.
+ /** specifies whether to use English parser and formatter.
- Note: When changing this, an already existing
- <member>OpCodeMap</member> needs to be recreated internally, so
- for performance reasons set this _before_ setting the OpCodeMap.
+ <p>Note: When changing this, an already existing <member>OpCodeMap
+ </member> needs to be recreated internally, so for performance reasons
+ set this <em>before</em> setting the <member>OpCodeMap</member>.
*/
[property] boolean CompileEnglish;
// ------------------------------------------------------------------------
- /** Specifies which address reference style convention to use when
+ /** specifies which address reference style convention to use when
parsing a formula string.
- @see com::sun::star::sheet::AddressConvention
+ @see AddressConvention
*/
[property] short FormulaConvention;
@@ -96,22 +96,22 @@ service FormulaParser
// ------------------------------------------------------------------------
- /** The complete mapping of Names to OpCodes.
+ /** contains the complete mapping of names to op-codes.
- Names and symbols not defined here lead to a parser/print error.
+ <p>Names and symbols not defined here lead to a parser/print error.</p>
*/
[property] sequence< FormulaOpCodeMapEntry > OpCodeMap;
// ------------------------------------------------------------------------
- /** List of external links referenced in formulas.
+ /** contains a list of external links referenced in formulas.
- Use of this property depends on the
- <member>FormulaConvention</member> in use. It is relevant only
- for <type>AddressConvention::XL_OOX</type> to map indices to
- external documents. The sequence must be in the order of indices
- used. Note that indices are 1-based, the sequence must start
- with an empty element.
+ <p>Use of this property depends on the <member>FormulaConvention
+ </member> in use. It is relevant only for <const>
+ AddressConvention::XL_OOX</const> to map indices to external
+ documents. The sequence must be in the order of indices used. Note
+ that indices are 1-based, the sequence must start with an empty
+ element.</p>
@since OOo3.1
*/
diff --git a/offapi/com/sun/star/sheet/XDataPilotDataLayoutFieldSupplier.idl b/offapi/com/sun/star/sheet/XDataPilotDataLayoutFieldSupplier.idl
new file mode 100644
index 000000000000..c74126aaf64e
--- /dev/null
+++ b/offapi/com/sun/star/sheet/XDataPilotDataLayoutFieldSupplier.idl
@@ -0,0 +1,77 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2008 by Sun Microsystems, Inc.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: XDataPilotDataLayoutFieldSupplier.idl,v $
+ * $Revision: 1.1 $
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XDataPilotDataLayoutFieldSupplier_idl__
+#define __com_sun_star_sheet_XDataPilotDataLayoutFieldSupplier_idl__
+
+#ifndef __com_sun_star_sheet_XDataPilotField_idl__
+#include <com/sun/star/sheet/XDataPilotField.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module sheet {
+
+//=============================================================================
+
+/** Provides access to the <type>DataPilotField</type> used to layout
+ multiple data fields.
+
+ <p>This data field can be inserted into the rows dimension or columns
+ dimension by changing its <member scope="DataPilotField">Orientation</member>
+ property. This interface can be used to access the data layout field
+ before multiple data fields are inserted into the DataPilot table. It
+ remains invisible as long as the DataPilot table contains at most one data
+ field.</p>
+
+ @see com::sun::star::sheet::DataPilotDescriptor
+ @see com::sun::star::sheet::DataPilotTable
+ */
+published interface XDataPilotDataLayoutFieldSupplier
+{
+ //-------------------------------------------------------------------------
+
+ /** Returns the <type>DataPilotField</type> used to layout multiple data
+ fields.
+
+ <p>If the field does not exist yet, it will be created. It is possible
+ to insert this field into the rows or columns dimension by changing
+ its <member scope="DataPilotField">Orientation</member> property.</p>
+ */
+ XDataPilotField getDataLayoutField();
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/sheet/XDataPilotDescriptor.idl b/offapi/com/sun/star/sheet/XDataPilotDescriptor.idl
index 1a29dfcdf4b9..b1f4f32aa978 100644
--- a/offapi/com/sun/star/sheet/XDataPilotDescriptor.idl
+++ b/offapi/com/sun/star/sheet/XDataPilotDescriptor.idl
@@ -57,7 +57,7 @@ module com { module sun { module star { module sheet {
<p>This interface extends the interface
<type scope="com::sun::star::container">XNamed</type> which provides
- access to the name of the data pilot table used i.e. in collections.</p>
+ access to the name of the data pilot table used e.g. in collections.</p>
@see com::sun::star::sheet::DataPilotDescriptor
@see com::sun::star::sheet::DataPilotTable
diff --git a/offapi/com/sun/star/sheet/XDataPilotFieldGrouping.idl b/offapi/com/sun/star/sheet/XDataPilotFieldGrouping.idl
index ffbb560a8930..03ff2a6bc182 100644
--- a/offapi/com/sun/star/sheet/XDataPilotFieldGrouping.idl
+++ b/offapi/com/sun/star/sheet/XDataPilotFieldGrouping.idl
@@ -48,43 +48,123 @@ module com { module sun { module star { module sheet {
//=============================================================================
-/** provides methods to control a data pilot field which has already
- been created.
+/** Provides methods to create new DataPilot fields where some or all items of
+ this DataPilot field are grouped in some way.
- @see com::sun::star::sheet::DataPilotField
+ @see DataPilotField
*/
published interface XDataPilotFieldGrouping: com::sun::star::uno::XInterface
{
//-------------------------------------------------------------------------
- /** Creates a new Field which contains a group containing the given Items.
+ /** Creates a new DataPilot field which contains a group containing the
+ given DataPilot field items (members).
- @returns
- the new created field if there is one created.
+ <p>It is possible to create multiple groups by calling this method
+ several times at the same DataPilot field. On subsequent calls, the
+ DataPilot field created at the first call is used to insert the new
+ groups.</p>
- @see com::sun::star::sheet::DataPilotField
+ <p>The collection of groups can be accessed via the
+ <member>DataPilotField::GroupInfo</member> property. The returned
+ struct contains the sequence of groups in its member
+ <member>DataPilotFieldGroupInfo::Groups</member>.</p>
@param aItems
- A sequence containing the Item names which have to be in the new group. This
- have to be Items of the current field.
+ a sequence containing the names of the items (members) which will
+ be part of the new group. Must be names of items contained in the
+ current field.
+
+ @returns
+ the new created field if there is one created on the first call of
+ this method. <NULL/> is returned on subsequent calls.
+
+ @see DataPilotField
+ @see DataPilotFieldGroupInfo
*/
- com::sun::star::sheet::XDataPilotField createNameGroup([in] sequence< string > aItems)
+ XDataPilotField createNameGroup([in] sequence< string > aItems)
raises( com::sun::star::lang::IllegalArgumentException );
//-------------------------------------------------------------------------
- /** Creates a new Field if the current field is grouped by dates. Doesn't create a new field
- if the field contains no dates or it isn't grouped yet.
+ /** Groups the members of this field by dates, according to the passed
+ settings.
+
+ <p>If this field is already grouped by dates, a new DataPilot field
+ will be created and returned. If this field is not grouped at all, the
+ date grouping is perfomed inside of this field (no new field will be
+ created). There must not be any other grouping (by member names or by
+ numeric ranges), otherwise an exception is thrown.</p>
+
+ @param aInfo
+ contains the information how to group the items of the field. The
+ members of this struct have to fulfill the following requirements:
+
+ <ul>
+ <li>If the member <member>DataPilotFieldGroupInfo::HasAutoStart
+ </member> is set to <FALSE/>, then the value of <member>
+ DataPilotFieldGroupInfo::Start</member> must be a floating-point
+ value representing a valid date/time value (if <member>
+ DataPilotFieldGroupInfo::HasAutoStart</member> is set to <TRUE/>,
+ the value of <member>DataPilotFieldGroupInfo::Start</member> will
+ be ignored).</li>
+
+ <li>If the member <member>DataPilotFieldGroupInfo::HasAutoEnd
+ </member> is set to <FALSE/>, then the value of <member>
+ DataPilotFieldGroupInfo::End</member> must be a floating-point
+ value representing a valid date/time value( if <member>
+ DataPilotFieldGroupInfo::HasAutoEnd</member> is set to <TRUE/>,
+ the value of <member>DataPilotFieldGroupInfo::End</member> will be
+ ignored).</li>
+
+ <li>If the members <member>DataPilotFieldGroupInfo::HasAutoStart
+ </member> and <member>DataPilotFieldGroupInfo::HasAutoEnd</member>
+ are set to <FALSE/> both, then the value of <member>
+ DataPilotFieldGroupInfo::Start</member> must be less than or equal
+ to the value of <member>DataPilotFieldGroupInfo::End</member>.</li>
+
+ <li>The member <member>DataPilotFieldGroupInfo::HasDateValues</member>
+ must be set to <TRUE/>.</li>
+
+ <li>The member <member>DataPilotFieldGroupInfo::Step</member> must
+ be zero, unless ranges of days have to be grouped (see the
+ description of the member GroupBy below), in that case the value
+ must be greater than or equal to 1 and less than or equal to 32767.
+ The fractional part of the value will be ignored.</li>
+
+ <li>The member <member>DataPilotFieldGroupInfo::GroupBy</member>
+ must contain exactly one of the flags from <type>DataPilotFieldGroupBy</type>.
+ A combination of several flags will not be accepted. If
+ <const>DataPilotFieldGroupBy::DAYS</const> is specified, the
+ value of the member <member>DataPilotFieldGroupInfo::Step</member>
+ will specify the type of day grouping (see above). If that value
+ is zero, grouping is performed on all days of the year (e.g. the
+ members containing the 1st of January of any year are grouped
+ together). If that value is greater than zero, grouping is done on
+ ranges of days, and the value specifies the number of days grouped
+ into one range (e.g. a value of 7 groups the members of a week
+ into a range).</li>
+
+ <li>The contents of the member <member>
+ DataPilotFieldGroupInfo::SourceField</member> will be ignored.</li>
+
+ <li>The contents of the member <member>
+ DataPilotFieldGroupInfo::Groups</member> will be ignored.</li>
+ </ul>
@returns
- the new created field if there is one created.
+ the new created field if there is one created. <NULL/> is returned,
+ if date grouping is performed inside this field (i.e. this field
+ was not grouped by dates before).
- @see com::sun::star::sheet::DataPilotField
+ @throws com::sun::star::lang::IllegalArgumentException
+ if the passed struct does not contain valid settings as described,
+ or if this field is already grouped by member names or numeric
+ ranges.
- @param aInfo
- contains the information how to group the field.
+ @see DataPilotField
*/
- com::sun::star::sheet::XDataPilotField createDateGroup([in] com::sun::star::sheet::DataPilotFieldGroupInfo aInfo)
+ XDataPilotField createDateGroup([in] DataPilotFieldGroupInfo aInfo)
raises( com::sun::star::lang::IllegalArgumentException );
};
diff --git a/offapi/com/sun/star/sheet/XFormulaOpCodeMapper.idl b/offapi/com/sun/star/sheet/XFormulaOpCodeMapper.idl
index 86d3a0758a57..2877c72b4440 100644
--- a/offapi/com/sun/star/sheet/XFormulaOpCodeMapper.idl
+++ b/offapi/com/sun/star/sheet/XFormulaOpCodeMapper.idl
@@ -53,10 +53,10 @@ interface XFormulaOpCodeMapper
/** OpCode value used for external Add-In functions.
- Needed to be able to identify which of the function names map to
- an Add-In implementation where this OpCode is used in the
- returned mapping and the programmatical name is available as
- additional information.
+ <p>Needed to be able to identify which of the function names map to an
+ Add-In implementation where this OpCode is used in the returned
+ mapping and the programmatical name is available as additional
+ information.</p>
*/
[attribute, readonly] long OpCodeExternal;
@@ -64,8 +64,8 @@ interface XFormulaOpCodeMapper
/** OpCode value used for unknown functions.
- Used to identify which of the function names queried with
- <member>getMappings</member> are unknown to the implementation.
+ <p>Used to identify which of the function names queried with
+ <member>getMappings</member> are unknown to the implementation.</p>
*/
[attribute, readonly] long OpCodeUnknown;
@@ -80,36 +80,35 @@ interface XFormulaOpCodeMapper
knows.
@param Language
- Formula language to be used, one of
- <type>FormulaLanguage</type> constants. If a constant
- unknown to the implementation is passed,
- <type>com::sun::star::lang::IllegalArgumentException</type>
+ Formula language to be used, one of <type>FormulaLanguage</type>
+ constants. If a constant unknown to the implementation is passed,
+ <type scope="com::sun::star::lang">IllegalArgumentException</type>
is thrown.
@returns
- Sequence of <type>FormulaToken</type> matching the input
+ a sequence of <type>FormulaToken</type> matching the input
sequence in order.
- Each string element in <param>Names</param> according to the
- formula language in <param>Language</param> is mapped to a
- <type>FormulaToken</type> containing the internal OpCode used by
- the spreadsheet application in
- <member>FormulaToken.OpCode</member> and by contract maybe
- additional information in <member>FormulaToken.Data</member>.
-
- The order of the FormulaToken sequence returned matches the
- input order of the string sequence.
-
- An unknown Name string gets the OpCode value of
- <member>OpCodeUnknown</member assigned.
-
- Additional information in <member>FormulaToken.Data</member> is
- returned for:
-
- Add-In names: the programmatical name. The OpCode value used for
- Add-Ins can be queried with the <member>OpCodeExternal</member>
- getter method.
-
+ <p>Each string element in parameter Names according to the formula
+ language in parameter Language is mapped to a <type>FormulaToken
+ </type> containing the internal OpCode used by the spreadsheet
+ application in <member>FormulaToken::OpCode</member> and by
+ contract maybe additional information in <member>
+ FormulaToken::Data</member>.</p>
+
+ <p>The order of the FormulaToken sequence returned matches the
+ input order of the string sequence.</p>
+
+ <p>An unknown Name string gets the OpCode value of <member>
+ OpCodeUnknown</member> assigned.</p>
+
+ <p>Additional information in <member>FormulaToken::Data</member>
+ is returned for:
+ <ul>
+ <li>Add-in names: the programmatical name. The OpCode value used
+ for add-ins can be queried with the <member>OpCodeExternal</member>
+ getter method.</li>
+ </ul></p>
*/
sequence< FormulaToken > getMappings(
[in] sequence< string > Names,
@@ -122,26 +121,24 @@ interface XFormulaOpCodeMapper
a given formula language.
@param Language
- Formula language to be used, one of
- <type>FormulaLanguage</type> constants. If a constant
- unknown to the implementation is passed,
- <type>com::sun::star::lang::IllegalArgumentException</type>
+ Formula language to be used, one of <type>FormulaLanguage</type>
+ constants. If a constant unknown to the implementation is passed,
+ <type scope="com::sun::star::lang">IllegalArgumentException</type>
is thrown.
@param Groups
- Group of mappings to be returned, a bit mask of
- <type>FormulaMapGroup</type> constants.
+ Group of mappings to be returned, a bit mask of <type>
+ FormulaMapGroup</type> constants.
@returns
Sequence of <type>FormulaOpCodeMapEntry</type>.
- Each element of the formula language in <param>Language</param>
- is mapped to a <type>FormulaToken</type> containing the internal
- OpCode used by the spreadsheet application in
- <member>FormulaToken.OpCode</member> and by contract maybe
- additional information in <member>FormulaToken.Data</member>.
- See <member>getMappings</member>.
-
+ <p>Each element of the formula language in parameter Language is
+ mapped to a <type>FormulaToken</type> containing the internal
+ OpCode used by the spreadsheet application in <member>
+ FormulaToken::OpCode</member> and by contract maybe additional
+ information in <member>FormulaToken::Data</member>. See <member>
+ getMappings</member> for more details.</p>
*/
sequence< FormulaOpCodeMapEntry > getAvailableMappings(
[in] long Language, [in] long Groups )
diff --git a/offapi/com/sun/star/sheet/makefile.mk b/offapi/com/sun/star/sheet/makefile.mk
index 61ab96c08477..f6ca0810604e 100644
--- a/offapi/com/sun/star/sheet/makefile.mk
+++ b/offapi/com/sun/star/sheet/makefile.mk
@@ -84,9 +84,11 @@ IDLFILES=\
DataPilotFieldFilter.idl\
DataPilotFieldGroup.idl\
DataPilotFieldGroupBy.idl\
+ DataPilotFieldGroupEnumeration.idl\
DataPilotFieldGroupInfo.idl\
DataPilotFieldGroupItem.idl\
DataPilotFieldGroups.idl\
+ DataPilotFieldGroupsEnumeration.idl\
DataPilotFieldLayoutInfo.idl\
DataPilotFieldLayoutMode.idl\
DataPilotFieldOrientation.idl\
@@ -251,6 +253,7 @@ IDLFILES=\
XDDELink.idl\
XDDELinkResults.idl\
XDDELinks.idl\
+ XDataPilotDataLayoutFieldSupplier.idl\
XDataPilotDescriptor.idl\
XDataPilotField.idl\
XDataPilotFieldGrouping.idl\