diff options
author | Kohei Yoshida <kohei.yoshida@suse.com> | 2011-11-29 14:27:04 -0500 |
---|---|---|
committer | Kohei Yoshida <kohei.yoshida@suse.com> | 2011-11-29 22:35:45 -0500 |
commit | 34493546d62eff44c2a0f8111551ce50695e054b (patch) | |
tree | face8232fcfb8ac9913f13b8ae7a8c147e430ebf /offapi | |
parent | 7113c7152d1ec875e65e97548fa6243fc83fbc53 (diff) |
New UNO API to handle multi-value filters.
Diffstat (limited to 'offapi')
-rw-r--r-- | offapi/UnoApi_offapi.mk | 3 | ||||
-rw-r--r-- | offapi/com/sun/star/sheet/FilterFieldValue.idl | 54 | ||||
-rw-r--r-- | offapi/com/sun/star/sheet/TableFilterField3.idl | 62 | ||||
-rw-r--r-- | offapi/com/sun/star/sheet/XSelectedSheetsSupplier.idl | 3 | ||||
-rw-r--r-- | offapi/com/sun/star/sheet/XSheetFilterDescriptor3.idl | 65 |
5 files changed, 187 insertions, 0 deletions
diff --git a/offapi/UnoApi_offapi.mk b/offapi/UnoApi_offapi.mk index 5fe45e99feb3..0391056465a3 100644 --- a/offapi/UnoApi_offapi.mk +++ b/offapi/UnoApi_offapi.mk @@ -3318,6 +3318,7 @@ $(eval $(call gb_UnoApiTarget_add_idlfiles,offapi,offapi/com/sun/star/sheet,\ FillDirection \ FillMode \ FilterConnection \ + FilterFieldValue \ FilterOperator \ FilterOperator2 \ FormulaLanguage \ @@ -3350,6 +3351,7 @@ $(eval $(call gb_UnoApiTarget_add_idlfiles,offapi,offapi/com/sun/star/sheet,\ SubTotalColumn \ TableFilterField \ TableFilterField2 \ + TableFilterField3 \ TableOperationMode \ TablePageBreakData \ TableValidationVisibility \ @@ -3445,6 +3447,7 @@ $(eval $(call gb_UnoApiTarget_add_idlfiles,offapi,offapi/com/sun/star/sheet,\ XSheetConditionalEntry \ XSheetFilterDescriptor \ XSheetFilterDescriptor2 \ + XSheetFilterDescriptor3 \ XSheetFilterable \ XSheetFilterableEx \ XSheetLinkable \ diff --git a/offapi/com/sun/star/sheet/FilterFieldValue.idl b/offapi/com/sun/star/sheet/FilterFieldValue.idl new file mode 100644 index 000000000000..1e157fba2f16 --- /dev/null +++ b/offapi/com/sun/star/sheet/FilterFieldValue.idl @@ -0,0 +1,54 @@ +/* + * Version: MPL 1.1 / GPLv3+ / LGPLv3+ + * + * The contents of this file are subject to the Mozilla Public License Version + * 1.1 (the "License"); you may not use this file except in compliance with + * the License or as specified alternatively below. You may obtain a copy of + * the License at http://www.mozilla.org/MPL/ + * + * Software distributed under the License is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License + * for the specific language governing rights and limitations under the + * License. + * + * Major Contributor(s): + * Copyright (C) 2011 Kohei Yoshida <kohei.yoshida@suse.com> + * + * All Rights Reserved. + * + * For minor contributions see the git repository. + * + * Alternatively, the contents of this file may be used under the terms of + * either the GNU General Public License Version 3 or later (the "GPLv3+"), or + * the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"), + * in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable + * instead of those above. + */ + +#ifndef __com_sun_star_sheet_FilterFieldValue_idl__ +#define __com_sun_star_sheet_FilterFieldValue_idl__ + +module com { module sun { module star { module sheet { + +/** + * @since LibreOffice 3.5 + */ +struct FilterFieldValue +{ + /** selects whether the <member>TableFilterFieldValue::NumericValue</member> + or the <member>TableFilterFieldValue::StringValue</member> is used. + */ + boolean IsNumeric; + + /** specifies a numeric value for the condition. + */ + double NumericValue; + + /** specifies a string value for the condition. + */ + string StringValue; +}; + +}; }; }; }; + +#endif diff --git a/offapi/com/sun/star/sheet/TableFilterField3.idl b/offapi/com/sun/star/sheet/TableFilterField3.idl new file mode 100644 index 000000000000..8ddd2a95d6cb --- /dev/null +++ b/offapi/com/sun/star/sheet/TableFilterField3.idl @@ -0,0 +1,62 @@ +/* + * Version: MPL 1.1 / GPLv3+ / LGPLv3+ + * + * The contents of this file are subject to the Mozilla Public License Version + * 1.1 (the "License"); you may not use this file except in compliance with + * the License or as specified alternatively below. You may obtain a copy of + * the License at http://www.mozilla.org/MPL/ + * + * Software distributed under the License is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License + * for the specific language governing rights and limitations under the + * License. + * + * Major Contributor(s): + * Copyright (C) 2011 Kohei Yoshida <kohei.yoshida@suse.com> + * + * All Rights Reserved. + * + * For minor contributions see the git repository. + * + * Alternatively, the contents of this file may be used under the terms of + * either the GNU General Public License Version 3 or later (the "GPLv3+"), or + * the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"), + * in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable + * instead of those above. + */ + +#ifndef __com_sun_star_sheet_TableFilterField3_idl__ +#define __com_sun_star_sheet_TableFilterField3_idl__ + +#include <com/sun/star/sheet/FilterConnection.idl> +#include <com/sun/star/sheet/FilterOperator2.idl> +#include <com/sun/star/sheet/FilterFieldValue.idl> + +module com { module sun { module star { module sheet { + +/** + * @since LibreOffice 3.5 + */ +struct TableFilterField3 +{ + /** specifies how the condition is connected to the previous condition. + */ + FilterConnection Connection; + + /** specifies which field (column) is used for the condition. + */ + long Field; + + /** specifies the type of the condition as defined in + <type>FilterOperator2</type>. + */ + long Operator; + + /** specifies values to match against. Each filter field may have one or + more values.*/ + sequence<FilterFieldValue> Values; +}; + +}; }; }; }; + +#endif diff --git a/offapi/com/sun/star/sheet/XSelectedSheetsSupplier.idl b/offapi/com/sun/star/sheet/XSelectedSheetsSupplier.idl index fe4957927f7a..6b16af5567e5 100644 --- a/offapi/com/sun/star/sheet/XSelectedSheetsSupplier.idl +++ b/offapi/com/sun/star/sheet/XSelectedSheetsSupplier.idl @@ -32,6 +32,9 @@ module com { module sun { module star { module sheet { +/** + * @since LibreOffice 3.5 + */ interface XSelectedSheetsSupplier: com::sun::star::uno::XInterface { /** diff --git a/offapi/com/sun/star/sheet/XSheetFilterDescriptor3.idl b/offapi/com/sun/star/sheet/XSheetFilterDescriptor3.idl new file mode 100644 index 000000000000..58f7ef8f1395 --- /dev/null +++ b/offapi/com/sun/star/sheet/XSheetFilterDescriptor3.idl @@ -0,0 +1,65 @@ +/* + * Version: MPL 1.1 / GPLv3+ / LGPLv3+ + * + * The contents of this file are subject to the Mozilla Public License Version + * 1.1 (the "License"); you may not use this file except in compliance with + * the License or as specified alternatively below. You may obtain a copy of + * the License at http://www.mozilla.org/MPL/ + * + * Software distributed under the License is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License + * for the specific language governing rights and limitations under the + * License. + * + * Major Contributor(s): + * Copyright (C) 2011 Kohei Yoshida <kohei.yoshida@suse.com> + * + * All Rights Reserved. + * + * For minor contributions see the git repository. + * + * Alternatively, the contents of this file may be used under the terms of + * either the GNU General Public License Version 3 or later (the "GPLv3+"), or + * the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"), + * in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable + * instead of those above. + */ + +#ifndef __com_sun_star_sheet_XSheetFilterDescriptor3_idl__ +#define __com_sun_star_sheet_XSheetFilterDescriptor3_idl__ + +#include <com/sun/star/sheet/TableFilterField3.idl> +#include <com/sun/star/uno/XInterface.idl> + +module com { module sun { module star { module sheet { + +/** provides access to a collection of filter conditions (filter fields). + + <p>This interface uses the <type>TableFilterField3</type> struct. + whereas the <type>XSheetFilterDescriptor2</type> interface uses the + <type>TableFilterField2</type> struct.</p> + + @see SheetFilterDescriptor2 + + @since LibreOffice 3.5 + */ +interface XSheetFilterDescriptor3: com::sun::star::uno::XInterface +{ + //------------------------------------------------------------------------- + + /** returns the collection of filter fields. + */ + sequence<TableFilterField3> getFilterFields3(); + + //------------------------------------------------------------------------- + + /** sets a new collection of filter fields. + */ + void setFilterFields3( [in] sequence<TableFilterField3> aFilterFields ); + +}; + +}; }; }; }; + +#endif + |