summaryrefslogtreecommitdiffstats
path: root/offapi/com/sun/star/report
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-27 16:51:28 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-27 16:51:28 +0000
commit940b4d1848e8c70ab7642901a68594e8016caffc (patch)
treeeb72f344ee6c3d9b80a7ecc079ea79e9fba8676d /offapi/com/sun/star/report
parentInitial commit. (diff)
downloadlibreoffice-upstream.tar.xz
libreoffice-upstream.zip
Adding upstream version 1:7.0.4.upstream/1%7.0.4upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'offapi/com/sun/star/report')
-rw-r--r--offapi/com/sun/star/report/Calculation.idl123
-rw-r--r--offapi/com/sun/star/report/FixedLine.idl33
-rw-r--r--offapi/com/sun/star/report/FixedText.idl34
-rw-r--r--offapi/com/sun/star/report/ForceNewPage.idl56
-rw-r--r--offapi/com/sun/star/report/FormatCondition.idl32
-rw-r--r--offapi/com/sun/star/report/FormattedField.idl35
-rw-r--r--offapi/com/sun/star/report/Function.idl35
-rw-r--r--offapi/com/sun/star/report/Group.idl34
-rw-r--r--offapi/com/sun/star/report/GroupKeepTogether.idl48
-rw-r--r--offapi/com/sun/star/report/GroupOn.idl79
-rw-r--r--offapi/com/sun/star/report/Groups.idl33
-rw-r--r--offapi/com/sun/star/report/ImageControl.idl35
-rw-r--r--offapi/com/sun/star/report/KeepTogether.idl51
-rw-r--r--offapi/com/sun/star/report/ReportControlFormat.idl33
-rw-r--r--offapi/com/sun/star/report/ReportControlModel.idl35
-rw-r--r--offapi/com/sun/star/report/ReportDefinition.idl36
-rw-r--r--offapi/com/sun/star/report/ReportEngine.idl37
-rw-r--r--offapi/com/sun/star/report/ReportPrintOption.idl54
-rw-r--r--offapi/com/sun/star/report/Section.idl36
-rw-r--r--offapi/com/sun/star/report/SectionPageBreak.idl50
-rw-r--r--offapi/com/sun/star/report/Shape.idl34
-rw-r--r--offapi/com/sun/star/report/XFixedLine.idl79
-rw-r--r--offapi/com/sun/star/report/XFixedText.idl40
-rw-r--r--offapi/com/sun/star/report/XFormatCondition.idl49
-rw-r--r--offapi/com/sun/star/report/XFormattedField.idl55
-rw-r--r--offapi/com/sun/star/report/XFunction.idl69
-rw-r--r--offapi/com/sun/star/report/XFunctions.idl64
-rw-r--r--offapi/com/sun/star/report/XFunctionsSupplier.idl39
-rw-r--r--offapi/com/sun/star/report/XGroup.idl130
-rw-r--r--offapi/com/sun/star/report/XGroups.idl65
-rw-r--r--offapi/com/sun/star/report/XImageControl.idl75
-rw-r--r--offapi/com/sun/star/report/XReportComponent.idl189
-rw-r--r--offapi/com/sun/star/report/XReportControlFormat.idl566
-rw-r--r--offapi/com/sun/star/report/XReportControlModel.idl97
-rw-r--r--offapi/com/sun/star/report/XReportDefinition.idl309
-rw-r--r--offapi/com/sun/star/report/XReportEngine.idl136
-rw-r--r--offapi/com/sun/star/report/XSection.idl165
-rw-r--r--offapi/com/sun/star/report/XShape.idl73
-rw-r--r--offapi/com/sun/star/report/inspection/DataProviderHandler.idl43
-rw-r--r--offapi/com/sun/star/report/inspection/DefaultComponentInspectorModel.idl83
-rw-r--r--offapi/com/sun/star/report/inspection/ReportComponentHandler.idl43
-rw-r--r--offapi/com/sun/star/report/meta/XFormulaParser.idl60
-rw-r--r--offapi/com/sun/star/report/meta/XFunctionCategory.idl64
-rw-r--r--offapi/com/sun/star/report/meta/XFunctionDescription.idl73
-rw-r--r--offapi/com/sun/star/report/meta/XFunctionManager.idl62
-rw-r--r--offapi/com/sun/star/report/modules.idl38
46 files changed, 3609 insertions, 0 deletions
diff --git a/offapi/com/sun/star/report/Calculation.idl b/offapi/com/sun/star/report/Calculation.idl
new file mode 100644
index 000000000..fc8259df4
--- /dev/null
+++ b/offapi/com/sun/star/report/Calculation.idl
@@ -0,0 +1,123 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_report_Calculation_idl__
+#define __com_sun_star_report_Calculation_idl__
+
+
+
+ module com { module sun { module star { module report {
+
+
+/** Specifies how to calculate a value.
+ @see XFormattedField
+ */
+constants Calculation
+{
+
+ /** returns the average of a field.
+ */
+ const short NONE = 0;
+
+ /** returns the average of a field.
+ */
+ const short AVERAGE = 1;
+
+ /** returns the correlation of two fields.
+ */
+ const short CORRELATION = 2;
+
+ /** counts the number of values, from the field.
+ */
+ const short COUNT = 3;
+
+ /** returns the measure of the linear relation between paired variables.
+ */
+ const short COVARIANCE = 4;
+
+ /** returns the number of none repeating values, from the field.
+ */
+ const short DISTINCTCOUNT = 5;
+
+ /** returns the largest value from the field.
+ */
+ const short MAXIMUM = 6;
+
+ /** returns the middle value in a sequence of numeric values.
+ */
+ const short MEDIAN = 7;
+
+ /** returns the smallest value from the field.
+ */
+ const short MINIMUM = 8;
+
+ /** returns the most frequently returning value from the field.
+ */
+ const short MODE = 9;
+
+ /** returns the Nth largest value from the field.
+ */
+ const short NTHLARGEST = 10;
+
+ /** returns the Nth most commonly occurring value from the field.
+ */
+ const short NTHMOSTFREQUENT = 11;
+
+ /** returns the Nth smallest value from the field.
+ */
+ const short NTHSMALLEST = 12;
+
+ /** returns as a percentage of the grand total summary.
+ */
+ const short PERCENTAGE = 13;
+
+ /** returns the value for a specified percentile in a Number or Currency field.
+ */
+ const short PERCENTILE = 14;
+
+ /** returns how much each value in the field deviate from the mean or average value for that field.
+ */
+ const short POPSTANDARDDEVIATION = 15;
+
+ /** returns the square of the standard deviation.
+ */
+ const short POPVARIANCE = 16;
+
+ /** returns the sample standard deviation for the field.
+ */
+ const short SAMPLESTANDARDDEVIATION = 17;
+
+ /** returns the sample variance for the field.
+ */
+ const short SAMPLEVARIANCE = 18;
+
+ /** returns the total of all the values for the field.
+ */
+ const short SUM = 19;
+
+ /** returns the weighted average for the field.
+ */
+ const short WEIGHTEDAVG = 20;
+};
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/report/FixedLine.idl b/offapi/com/sun/star/report/FixedLine.idl
new file mode 100644
index 000000000..260068621
--- /dev/null
+++ b/offapi/com/sun/star/report/FixedLine.idl
@@ -0,0 +1,33 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_report_FixedLine_idl__
+#define __com_sun_star_report_FixedLine_idl__
+
+#include <com/sun/star/report/XFixedLine.idl>
+
+
+ module com { module sun { module star { module report {
+
+service FixedLine : XFixedLine;
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/report/FixedText.idl b/offapi/com/sun/star/report/FixedText.idl
new file mode 100644
index 000000000..a6c983964
--- /dev/null
+++ b/offapi/com/sun/star/report/FixedText.idl
@@ -0,0 +1,34 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_report_FixedText_idl__
+#define __com_sun_star_report_FixedText_idl__
+
+
+#include <com/sun/star/report/XFixedText.idl>
+
+ module com { module sun { module star { module report {
+
+
+service FixedText : XFixedText;
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/report/ForceNewPage.idl b/offapi/com/sun/star/report/ForceNewPage.idl
new file mode 100644
index 000000000..76dd0e4a9
--- /dev/null
+++ b/offapi/com/sun/star/report/ForceNewPage.idl
@@ -0,0 +1,56 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_report_ForceNewPage_idl__
+#define __com_sun_star_report_ForceNewPage_idl__
+
+
+
+ module com { module sun { module star { module report {
+
+
+/** Specifies if the section will be printed on a separate page.
+ <p>This does not apply to page header or page footer.</p>
+ @see XSection
+ */
+constants ForceNewPage
+{
+
+ /** The current section is printed on the current page.
+ */
+ const short NONE = 0;
+
+ /** The current section is printed at the top of a new page.
+ */
+ const short BEFORE_SECTION = 1;
+
+ /** The next section following the current section is printed at the top of a new page.
+ */
+ const short AFTER_SECTION = 2;
+
+ /** The current section is printed at the top of a new page as well as the next section.
+ */
+ const short BEFORE_AFTER_SECTION = 3;
+};
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/report/FormatCondition.idl b/offapi/com/sun/star/report/FormatCondition.idl
new file mode 100644
index 000000000..44b53dda5
--- /dev/null
+++ b/offapi/com/sun/star/report/FormatCondition.idl
@@ -0,0 +1,32 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#ifndef __com_sun_star_report_FormatCondition_idl__
+#define __com_sun_star_report_FormatCondition_idl__
+
+#include <com/sun/star/report/XFormatCondition.idl>
+
+ module com { module sun { module star { module report {
+
+service FormatCondition : XFormatCondition;
+
+}; }; }; };
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/report/FormattedField.idl b/offapi/com/sun/star/report/FormattedField.idl
new file mode 100644
index 000000000..ba378edfe
--- /dev/null
+++ b/offapi/com/sun/star/report/FormattedField.idl
@@ -0,0 +1,35 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#ifndef __com_sun_star_report_FormattedField_idl__
+#define __com_sun_star_report_FormattedField_idl__
+
+#include <com/sun/star/report/XFormattedField.idl>
+
+
+ module com { module sun { module star { module report {
+
+
+service FormattedField : XFormattedField;
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/report/Function.idl b/offapi/com/sun/star/report/Function.idl
new file mode 100644
index 000000000..4a463f323
--- /dev/null
+++ b/offapi/com/sun/star/report/Function.idl
@@ -0,0 +1,35 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#ifndef __com_sun_star_report_Function_idl__
+#define __com_sun_star_report_Function_idl__
+
+#include <com/sun/star/report/XFunction.idl>
+
+ module com { module sun { module star { module report {
+
+service Function : XFunction
+{
+ create();
+};
+
+}; }; }; };
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/report/Group.idl b/offapi/com/sun/star/report/Group.idl
new file mode 100644
index 000000000..5cf13a619
--- /dev/null
+++ b/offapi/com/sun/star/report/Group.idl
@@ -0,0 +1,34 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#ifndef __com_sun_star_report_Group_idl__
+#define __com_sun_star_report_Group_idl__
+
+#include <com/sun/star/report/XGroup.idl>
+
+
+ module com { module sun { module star { module report {
+
+service Group : XGroup;
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/report/GroupKeepTogether.idl b/offapi/com/sun/star/report/GroupKeepTogether.idl
new file mode 100644
index 000000000..ff52a8a48
--- /dev/null
+++ b/offapi/com/sun/star/report/GroupKeepTogether.idl
@@ -0,0 +1,48 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_report_GroupKeepTogether_idl__
+#define __com_sun_star_report_GroupKeepTogether_idl__
+
+
+
+ module com { module sun { module star { module report {
+
+
+/** Specifies if groups in a multi column report where the group has the property
+ XGroup::KeepTogether set to WHOLE_GROUP or WITH_FIRST_DETAIL will keep together by page or column.
+ @see XGroup
+ */
+constants GroupKeepTogether
+{
+
+ /** Groups are kept together by page.
+ */
+ const short PER_PAGE = 0;
+
+ /** Groups are kept together by column.
+ */
+ const short PER_COLUMN = 1;
+};
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/report/GroupOn.idl b/offapi/com/sun/star/report/GroupOn.idl
new file mode 100644
index 000000000..5ddf96187
--- /dev/null
+++ b/offapi/com/sun/star/report/GroupOn.idl
@@ -0,0 +1,79 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_report_GroupOn_idl__
+#define __com_sun_star_report_GroupOn_idl__
+
+
+
+ module com { module sun { module star { module report {
+
+
+/** Specifies how to group data.
+ @see XGroup
+ */
+constants GroupOn
+{
+
+ /** The same value in the column value or expression.
+ */
+ const short DEFAULT = 0;
+
+ /** The same first nth of characters in the column value or expression.
+ */
+ const short PREFIX_CHARACTERS = 1;
+
+ /** Dates in the same calendar year.
+ */
+ const short YEAR= 2;
+
+ /** Dates in the same calendar quarter.
+ */
+ const short QUARTAL = 3;
+
+ /** Dates in the same month.
+ */
+ const short MONTH = 4;
+
+ /** Dates in the same week.
+ */
+ const short WEEK = 5;
+
+ /** Dates on the same date.
+ */
+ const short DAY = 6;
+
+ /** Times in the same hour.
+ */
+ const short HOUR = 7;
+
+ /** Times in the same minute.
+ */
+ const short MINUTE = 8;
+
+ /** Values within an interval you specify.
+ */
+ const short INTERVAL = 9;
+};
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/report/Groups.idl b/offapi/com/sun/star/report/Groups.idl
new file mode 100644
index 000000000..7c142a3d1
--- /dev/null
+++ b/offapi/com/sun/star/report/Groups.idl
@@ -0,0 +1,33 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_report_Groups_idl__
+#define __com_sun_star_report_Groups_idl__
+
+#include <com/sun/star/report/XGroups.idl>
+
+
+ module com { module sun { module star { module report {
+
+service Groups : XGroups;
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/report/ImageControl.idl b/offapi/com/sun/star/report/ImageControl.idl
new file mode 100644
index 000000000..29045e671
--- /dev/null
+++ b/offapi/com/sun/star/report/ImageControl.idl
@@ -0,0 +1,35 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#ifndef __com_sun_star_report_ImageControl_idl__
+#define __com_sun_star_report_ImageControl_idl__
+
+#include <com/sun/star/report/XImageControl.idl>
+
+
+ module com { module sun { module star { module report {
+
+
+service ImageControl : XImageControl;
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/report/KeepTogether.idl b/offapi/com/sun/star/report/KeepTogether.idl
new file mode 100644
index 000000000..05b75b034
--- /dev/null
+++ b/offapi/com/sun/star/report/KeepTogether.idl
@@ -0,0 +1,51 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_report_KeepTogether_idl__
+#define __com_sun_star_report_KeepTogether_idl__
+
+
+
+ module com { module sun { module star { module report {
+
+
+/** Specifies that a group header, detail, and footer section is printed on the same page.
+ @see XGroup
+ */
+constants KeepTogether
+{
+
+ /** Prints the group without keeping the header, detail, and footer together on the same page.
+ */
+ const short NO = 0;
+
+ /** Prints the group header, detail, and footer together on the same page.
+ */
+ const short WHOLE_GROUP = 1;
+
+ /** Prints the group header on a page when the first detail record can fit on the same page.
+ */
+ const short WITH_FIRST_DETAIL = 2;
+};
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/report/ReportControlFormat.idl b/offapi/com/sun/star/report/ReportControlFormat.idl
new file mode 100644
index 000000000..7d41c11b8
--- /dev/null
+++ b/offapi/com/sun/star/report/ReportControlFormat.idl
@@ -0,0 +1,33 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_report_ReportControlFormat_idl__
+#define __com_sun_star_report_ReportControlFormat_idl__
+
+#include <com/sun/star/report/XReportControlFormat.idl>
+
+
+ module com { module sun { module star { module report {
+
+
+service ReportControlFormat : XReportControlFormat;
+
+}; }; }; };
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/report/ReportControlModel.idl b/offapi/com/sun/star/report/ReportControlModel.idl
new file mode 100644
index 000000000..27314fa46
--- /dev/null
+++ b/offapi/com/sun/star/report/ReportControlModel.idl
@@ -0,0 +1,35 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#ifndef __com_sun_star_report_ReportControlModel_idl__
+#define __com_sun_star_report_ReportControlModel_idl__
+
+#include <com/sun/star/report/XReportControlModel.idl>
+
+
+ module com { module sun { module star { module report {
+
+
+service ReportControlModel : XReportControlModel;
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/report/ReportDefinition.idl b/offapi/com/sun/star/report/ReportDefinition.idl
new file mode 100644
index 000000000..bc01c0551
--- /dev/null
+++ b/offapi/com/sun/star/report/ReportDefinition.idl
@@ -0,0 +1,36 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#ifndef __com_sun_star_report_ReportDefinition_idl__
+#define __com_sun_star_report_ReportDefinition_idl__
+
+#include <com/sun/star/report/XReportDefinition.idl>
+
+
+ module com { module sun { module star { module report {
+
+
+service ReportDefinition : XReportDefinition;
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/report/ReportEngine.idl b/offapi/com/sun/star/report/ReportEngine.idl
new file mode 100644
index 000000000..4d58b6f84
--- /dev/null
+++ b/offapi/com/sun/star/report/ReportEngine.idl
@@ -0,0 +1,37 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_report_ReportEngine_idl__
+#define __com_sun_star_report_ReportEngine_idl__
+
+#include <com/sun/star/report/XReportEngine.idl>
+
+module com { module sun { module star { module report {
+
+/**
+ @since LibreOffice 4.1
+*/
+
+service ReportEngine : XReportEngine;
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/report/ReportPrintOption.idl b/offapi/com/sun/star/report/ReportPrintOption.idl
new file mode 100644
index 000000000..4a8d867c8
--- /dev/null
+++ b/offapi/com/sun/star/report/ReportPrintOption.idl
@@ -0,0 +1,54 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_report_ReportPrintOption_idl__
+#define __com_sun_star_report_ReportPrintOption_idl__
+
+
+
+ module com { module sun { module star { module report {
+
+
+/** Specifies whether a page header or footer is printed on the same page as the report header or report footer.
+ */
+constants ReportPrintOption
+{
+
+ /** The page header/footer is printed on all pages.
+ */
+ const short ALL_PAGES = 0;
+
+ /** The page header/footer is not printed on the same page as the report header.
+ */
+ const short NOT_WITH_REPORT_HEADER = 1;
+
+ /** The page header/footer is not printed on the same page as the report footer.
+ */
+ const short NOT_WITH_REPORT_FOOTER = 2;
+
+ /** The page header/footer is not printed on the same page as the report header or footer.
+ */
+ const short NOT_WITH_REPORT_HEADER_FOOTER = 3;
+};
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/report/Section.idl b/offapi/com/sun/star/report/Section.idl
new file mode 100644
index 000000000..8afb8faf6
--- /dev/null
+++ b/offapi/com/sun/star/report/Section.idl
@@ -0,0 +1,36 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_report_Section_idl__
+#define __com_sun_star_report_Section_idl__
+
+#include <com/sun/star/report/XSection.idl>
+
+
+ module com { module sun { module star { module report {
+ interface XGroup;
+
+
+
+service Section : XSection;
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/report/SectionPageBreak.idl b/offapi/com/sun/star/report/SectionPageBreak.idl
new file mode 100644
index 000000000..019027f1b
--- /dev/null
+++ b/offapi/com/sun/star/report/SectionPageBreak.idl
@@ -0,0 +1,50 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_report_SectionPageBreak_idl__
+#define __com_sun_star_report_SectionPageBreak_idl__
+
+
+
+ module com { module sun { module star { module report {
+
+
+/** Specifies that page breaks are allowed inside this section.
+ @see XSection
+ */
+constants SectionPageBreak
+{
+
+ /** Page breaks will never be inserted. If the section doesn't fit on a page than the content will be cut.
+ */
+ const short NONE = 0;
+
+ /** If the section doesn't fit on page than a page break will be inserted as long as the section fits. Inner sections will doesn't contain further page breaks.
+ */
+ const short SECTION = 1;
+
+ /** If the section doesn't fit on page than a page break will be inserted as long as the section fits.
+ */
+ const short AUTO = 2;
+};
+}; }; }; };
+/*=============================================================================
+=============================================================================*/
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/report/Shape.idl b/offapi/com/sun/star/report/Shape.idl
new file mode 100644
index 000000000..e4512ac26
--- /dev/null
+++ b/offapi/com/sun/star/report/Shape.idl
@@ -0,0 +1,34 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_report_Shape_idl__
+#define __com_sun_star_report_Shape_idl__
+
+#include <com/sun/star/report/XShape.idl>
+
+
+ module com { module sun { module star { module report {
+
+
+service Shape : XShape;
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/report/XFixedLine.idl b/offapi/com/sun/star/report/XFixedLine.idl
new file mode 100644
index 000000000..a6141d5a9
--- /dev/null
+++ b/offapi/com/sun/star/report/XFixedLine.idl
@@ -0,0 +1,79 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_report_XFixedLine_idl__
+#define __com_sun_star_report_XFixedLine_idl__
+
+#include <com/sun/star/report/XReportControlModel.idl>
+#include <com/sun/star/drawing/CircleKind.idl>
+#include <com/sun/star/drawing/LineStyle.idl>
+
+#include <com/sun/star/util/Color.idl>
+#include <com/sun/star/drawing/LineDash.idl>
+
+ module com { module sun { module star { module report {
+
+interface XFixedLine
+{
+ interface XReportControlModel;
+
+ /** specifies the orientation of the control.
+
+ <pre>
+ 0: horizontal
+ 1: vertical (default)
+ </pre>
+ */
+ [attribute,bound] long Orientation
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** This property contains the type of the line.
+ */
+ [attribute,bound] com::sun::star::drawing::LineStyle LineStyle;
+
+
+ /** This property contains the dash of the line.
+ */
+ [attribute,bound] com::sun::star::drawing::LineDash LineDash;
+
+
+ /** This property contains the line color.
+ */
+ [attribute,bound] com::sun::star::util::Color LineColor;
+
+
+ /** This property contains the extent of transparency.
+ */
+ [attribute,bound] short LineTransparence;
+
+
+ /** This property contains the width of the line in 1/100th mm.
+ */
+ [attribute,bound] long LineWidth;
+
+};
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/report/XFixedText.idl b/offapi/com/sun/star/report/XFixedText.idl
new file mode 100644
index 000000000..d9658fde2
--- /dev/null
+++ b/offapi/com/sun/star/report/XFixedText.idl
@@ -0,0 +1,40 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_report_XFixedText_idl__
+#define __com_sun_star_report_XFixedText_idl__
+
+#include <com/sun/star/report/XReportControlModel.idl>
+
+ module com { module sun { module star { module report {
+
+interface XFixedText
+{
+ interface XReportControlModel;
+
+ /** specifies the label of the control.
+ */
+ [attribute,bound] string Label;
+};
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/report/XFormatCondition.idl b/offapi/com/sun/star/report/XFormatCondition.idl
new file mode 100644
index 000000000..bc6383310
--- /dev/null
+++ b/offapi/com/sun/star/report/XFormatCondition.idl
@@ -0,0 +1,49 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_report_XFormatCondition_idl__
+#define __com_sun_star_report_XFormatCondition_idl__
+
+#include <com/sun/star/report/XReportControlFormat.idl>
+
+ module com { module sun { module star { module report {
+/** specifies a format condition for a control.
+*/
+interface XFormatCondition
+{
+ interface XReportControlFormat;
+
+ /** gives access to the properties.
+ */
+ interface com::sun::star::beans::XPropertySet;
+
+ /** specifies if the condition is enabled or not.
+ */
+ [attribute,bound] boolean Enabled;
+
+ /** defines the formula of the format condition.
+ If the formula evaluates to `TRUE` then the format will be applied.
+ */
+ [attribute,bound] string Formula;
+};
+
+
+}; }; }; };
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/report/XFormattedField.idl b/offapi/com/sun/star/report/XFormattedField.idl
new file mode 100644
index 000000000..7e3d51cf3
--- /dev/null
+++ b/offapi/com/sun/star/report/XFormattedField.idl
@@ -0,0 +1,55 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_report_XFormattedField_idl__
+#define __com_sun_star_report_XFormattedField_idl__
+
+#include <com/sun/star/report/XReportControlModel.idl>
+#include <com/sun/star/util/XNumberFormatsSupplier.idl>
+
+
+ module com { module sun { module star { module report {
+
+/** describes a control which can be used for displaying values with an arbitrary formatting.
+
+ @see com::sun::star::report::XReportControlModel
+ @see com::sun::star::util::XNumberFormatsSupplier
+*/
+interface XFormattedField
+{
+ interface XReportControlModel;
+
+ /** specifies the format to be used when formatting the field input
+ and output.
+
+ <p>This value is meaningful relative to the FormatsSupplier attribute
+ only.</p>
+ */
+ [attribute,bound] long FormatKey;
+
+ /** supplies the formats the field should work with.
+ */
+ [attribute,bound] com::sun::star::util::XNumberFormatsSupplier FormatsSupplier;
+};
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/report/XFunction.idl b/offapi/com/sun/star/report/XFunction.idl
new file mode 100644
index 000000000..8c961f5c1
--- /dev/null
+++ b/offapi/com/sun/star/report/XFunction.idl
@@ -0,0 +1,69 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_report_XFunction_idl__
+#define __com_sun_star_report_XFunction_idl__
+
+#include <com/sun/star/beans/XPropertySet.idl>
+#include <com/sun/star/beans/Optional.idl>
+#include <com/sun/star/lang/XComponent.idl>
+#include <com/sun/star/container/XChild.idl>
+ module com { module sun { module star { module report {
+/** specifies a format condition for a control.
+*/
+interface XFunction
+{
+ /** gives access to the properties.
+ */
+ interface com::sun::star::beans::XPropertySet;
+
+ /** allows life-time control of function instances.
+ */
+ interface com::sun::star::lang::XComponent;
+
+ /** allows the navigation to the functions object.
+ The method setParent from XChild is not supported and will throw an exception when called.
+ */
+ interface com::sun::star::container::XChild;
+
+ /** specifies if the function should be evaluated before the report element will be executed.
+ */
+ [attribute,bound] boolean PreEvaluated;
+
+ /** specifies if sub reports should be traversed as well.
+ */
+ [attribute,bound] boolean DeepTraversing;
+
+ /** defines the name of the function
+ */
+ [attribute,bound] string Name;
+
+ /** defines the formula of this function
+ */
+ [attribute,bound] string Formula;
+
+ /** defines the formula for the initial value
+ */
+ [attribute,bound] com::sun::star::beans::Optional<string> InitialFormula;
+};
+
+
+}; }; }; };
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/report/XFunctions.idl b/offapi/com/sun/star/report/XFunctions.idl
new file mode 100644
index 000000000..cc299cbe9
--- /dev/null
+++ b/offapi/com/sun/star/report/XFunctions.idl
@@ -0,0 +1,64 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_report_XFunctions_idl__
+#define __com_sun_star_report_XFunctions_idl__
+
+#include <com/sun/star/container/XChild.idl>
+#include <com/sun/star/container/XContainer.idl>
+#include <com/sun/star/container/XIndexContainer.idl>
+#include <com/sun/star/lang/XComponent.idl>
+#include <com/sun/star/report/XFunction.idl>
+
+module com { module sun { module star { module report {
+
+interface XReportDefinition;
+
+/** This interface specifies the functions collections of the report definition or a group.
+ @see XFunction
+ @see XReportDefinition
+ */
+interface XFunctions
+{
+ /** allows to register listeners to be notified of changes in the container.
+ */
+ interface com::sun::star::container::XContainer;
+ /** gives access to the group elements.
+ The elements are of type XFunction.
+ */
+ interface com::sun::star::container::XIndexContainer;
+
+ /** allows the navigation to the report or group object.
+ The method setParent from XChild is not supported and will throw an exception when called.
+ */
+ interface com::sun::star::container::XChild;
+
+ /** allows life-time control of the functions instance.
+ */
+ interface com::sun::star::lang::XComponent;
+
+ /** factory method for XFunction.
+ */
+ com::sun::star::report::XFunction createFunction();
+};
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/report/XFunctionsSupplier.idl b/offapi/com/sun/star/report/XFunctionsSupplier.idl
new file mode 100644
index 000000000..7909ff710
--- /dev/null
+++ b/offapi/com/sun/star/report/XFunctionsSupplier.idl
@@ -0,0 +1,39 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_report_XFunctionsSupplier_idl__
+#define __com_sun_star_report_XFunctionsSupplier_idl__
+
+#include <com/sun/star/beans/XPropertySet.idl>
+#include <com/sun/star/container/XNameContainer.idl>
+ module com { module sun { module star { module report {
+
+interface XFunctions;
+/** specifies the functions supplier which are located in a report definition or a group.
+*/
+interface XFunctionsSupplier
+{
+ /** access to the functions
+ */
+ [attribute,readonly] com::sun::star::report::XFunctions Functions;
+};
+
+}; }; }; };
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/report/XGroup.idl b/offapi/com/sun/star/report/XGroup.idl
new file mode 100644
index 000000000..790f9a3cc
--- /dev/null
+++ b/offapi/com/sun/star/report/XGroup.idl
@@ -0,0 +1,130 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_report_XGroup_idl__
+#define __com_sun_star_report_XGroup_idl__
+
+#include <com/sun/star/container/NoSuchElementException.idl>
+#include <com/sun/star/report/XSection.idl>
+#include <com/sun/star/report/XGroups.idl>
+#include <com/sun/star/report/XFunctions.idl>
+
+ module com { module sun { module star { module report {
+
+
+/** identifies a XGroup.
+ A group is always a child of the groups collection in the report.
+ @see XReportDefinition
+ @see XGroups
+ */
+interface XGroup
+{
+ /** allows access to the groups collection of the report.
+ */
+ interface com::sun::star::container::XChild;
+
+ /** allows access to the properties of the instance.
+ */
+ interface com::sun::star::beans::XPropertySet;
+
+ /** allows life-time control of group instances.
+ */
+ interface com::sun::star::lang::XComponent;
+
+ /** gives access to functions defined in the group definition.
+ */
+ interface XFunctionsSupplier;
+
+ /** Defines if the group is sorted ascending or descending.
+ The default is `TRUE`.
+ */
+ [attribute,bound] boolean SortAscending;
+
+ /** Defines if a group has a header.
+ */
+ [attribute,bound] boolean HeaderOn;
+
+ /** Defines if a group has a footer.
+ */
+ [attribute,bound] boolean FooterOn;
+
+ /** returns the group header.
+ @throws com::sun::star::container::NoSuchElementException
+ If the group has the header disabled.
+ @see XSection
+ */
+
+ [attribute,readonly] XSection Header
+ {
+ get raises (com::sun::star::container::NoSuchElementException);
+ };
+
+ /** returns the group footer.
+ @throws com::sun::star::container::NoSuchElementException
+ If the group has the footer disabled.
+ @see XSection
+ */
+ [attribute,readonly,bound] XSection Footer
+ {
+ get raises (com::sun::star::container::NoSuchElementException);
+ };
+
+ /** Specifies how to group data.
+ @see GroupOn
+ */
+ [attribute,bound] short GroupOn
+ {
+ set raises (com::sun::star::lang::IllegalArgumentException);
+ };
+
+ /** Defines an interval value that rows are grouped by.
+ */
+ [attribute,bound] long GroupInterval;
+
+ /** Specifies if a group header, detail, and footer section is printed on the same page.
+ @see KeepTogether
+ */
+ [attribute,bound] short KeepTogether
+ {
+ set raises (com::sun::star::lang::IllegalArgumentException);
+ };
+
+ /** Specifies the parent of the group.
+ @see XChild
+ */
+ [attribute,readonly] com::sun::star::report::XGroups Groups;
+
+ /** Defines either a column name or an expression.
+ */
+ [attribute,bound] string Expression;
+
+ /** Specifies that the group header should always be printed on a new column.
+ */
+ [attribute,bound] boolean StartNewColumn;
+
+ /** Specifies that the group header should always be printed on a new page and the reset of the page number to zero.
+ */
+ [attribute,bound] boolean ResetPageNumber;
+};
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/report/XGroups.idl b/offapi/com/sun/star/report/XGroups.idl
new file mode 100644
index 000000000..02784eeea
--- /dev/null
+++ b/offapi/com/sun/star/report/XGroups.idl
@@ -0,0 +1,65 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_report_XGroups_idl__
+#define __com_sun_star_report_XGroups_idl__
+
+#include <com/sun/star/container/XChild.idl>
+#include <com/sun/star/container/XContainer.idl>
+#include <com/sun/star/container/XIndexContainer.idl>
+#include <com/sun/star/lang/XComponent.idl>
+
+ module com { module sun { module star { module report {
+interface XReportDefinition;
+interface XGroup;
+
+/** This interface specifies the groups collections of the report definition.
+ @see XGroup
+ @see XReportDefinition
+ */
+interface XGroups
+{
+ /** allows to register listeners to be notified of changes in the container.
+ */
+ interface com::sun::star::container::XContainer;
+ /** gives access to the group elements.
+ The elements are of type XGroup.
+ */
+ interface com::sun::star::container::XIndexContainer;
+
+ /** allows the navigation to the report object.
+ */
+ interface com::sun::star::container::XChild;
+
+ /** allows life-time control of the groups instance.
+ */
+ interface com::sun::star::lang::XComponent;
+
+ /** factory method for XGroup.
+ */
+ com::sun::star::report::XGroup createGroup();
+
+ [attribute,readonly] com::sun::star::report::XReportDefinition ReportDefinition;
+};
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/report/XImageControl.idl b/offapi/com/sun/star/report/XImageControl.idl
new file mode 100644
index 000000000..6701aa86b
--- /dev/null
+++ b/offapi/com/sun/star/report/XImageControl.idl
@@ -0,0 +1,75 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_report_XImageControl_idl__
+#define __com_sun_star_report_XImageControl_idl__
+
+#include <com/sun/star/report/XReportControlModel.idl>
+#include <com/sun/star/form/XImageProducerSupplier.idl>
+
+
+ module com { module sun { module star { module report {
+
+interface XImageControl
+{
+ interface XReportControlModel;
+
+ /** supplies the caller with a com::sun::star::awt::XImageProducer.
+
+ <p>Other components can register as com::sun::star::awt::XImageConsumer
+ at this producer. Then they will be notified of any change in the image to be displayed.</p>
+
+ <p>Whenever the com::sun::star::awt::UnoControlImageControlModel::ImageURL
+ property is changed, the model loads the specified image, and sets it as image source
+ at its com::sun::star::awt::XImageProducer. Then, all
+ com::sun::star::awt::XImageConsumers are notified and supplied with
+ the binary data of the image.<br/>
+ Usually, controls acting for an ImageControl model are consumers, and use the
+ data stream to display the image</p>
+ */
+ interface com::sun::star::form::XImageProducerSupplier;
+
+ /** specifies a URL to an image to use for the control.
+ */
+ [attribute,bound] string ImageURL;
+
+ /** defines how to scale the image
+
+ <p>If this property is present, it supersedes the ScaleImage property.</p>
+
+ <p>The value of this property is one of the com::sun::star::awt::ImageScaleMode constants.</p>
+
+ @since OOo 3.2
+ */
+ [attribute,bound] short ScaleMode
+ {
+ set raises (com::sun::star::lang::IllegalArgumentException);
+ };
+
+ /** Specifies that the IRI given in the data field should be preserved, otherwise the content will be inserted in the resulting report document.
+ If the data field contains something different as string then this attribute will be ignored.
+ */
+ [attribute,bound] boolean PreserveIRI;
+};
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/report/XReportComponent.idl b/offapi/com/sun/star/report/XReportComponent.idl
new file mode 100644
index 000000000..fd48f3d5c
--- /dev/null
+++ b/offapi/com/sun/star/report/XReportComponent.idl
@@ -0,0 +1,189 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_report_XReportComponent_idl__
+#define __com_sun_star_report_XReportComponent_idl__
+
+#include <com/sun/star/container/XChild.idl>
+
+#include <com/sun/star/lang/XComponent.idl>
+
+#include <com/sun/star/container/XNamed.idl>
+
+#include <com/sun/star/beans/XPropertySet.idl>
+#include <com/sun/star/util/XCloneable.idl>
+#include <com/sun/star/awt/XControlModel.idl>
+#include <com/sun/star/drawing/XShape.idl>
+
+
+ module com { module sun { module star { module report {
+ interface XSection;
+/** describes a component which may be part of a report.
+
+ @see XReportDefinition
+ */
+interface XReportComponent
+{
+ interface com::sun::star::util::XCloneable;
+ /** identifies the component as a candidate for being part of a report.
+ <p>This interface also provides the access to the component's parent.</p>
+ */
+ interface com::sun::star::container::XChild;
+
+ /** allows life-time control of report components.
+ */
+ interface com::sun::star::lang::XComponent;
+
+ interface com::sun::star::drawing::XShape;
+
+ /** gives access to the properties.
+ */
+ interface com::sun::star::beans::XPropertySet;
+
+ /** the name of the component.
+ */
+ [attribute,bound] string Name
+ {
+ set raises ( com::sun::star::beans::PropertyVetoException );
+ };
+
+ /** specifies the height of the control.
+ */
+ [attribute,bound] long Height
+ {
+ set raises ( com::sun::star::beans::PropertyVetoException );
+ };
+
+ /** specifies the horizontal position of the control.
+ */
+ [attribute,bound] long PositionX;
+
+ /** specifies the vertical position of the control.
+ */
+ [attribute,bound] long PositionY;
+
+ /** specifies the width of the control.
+ */
+ [attribute,bound] long Width
+ {
+ set raises ( com::sun::star::beans::PropertyVetoException );
+ };
+
+ /** Specifies that the control containing data shall automatically grow to the optimal height
+ to show the data without wasting space.
+ */
+
+ [attribute, bound] boolean AutoGrow
+ {
+ set raises(com::sun::star::beans::UnknownPropertyException);
+ get raises(com::sun::star::beans::UnknownPropertyException);
+ };
+
+ /** specifies the border style of the control.
+
+ <pre>
+ 0: No border
+ 2: simple border
+ </pre>
+ */
+ [attribute,bound] short ControlBorder
+ {
+ set raises ( com::sun::star::lang::IllegalArgumentException,com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+
+ /** specifies the color of the border, if present
+
+ <p>Not every border style (see Border) may support coloring.
+ For instance, usually a border with 3D effect will ignore the BorderColor setting.</p>
+ */
+ [attribute,bound] long ControlBorderColor
+ {
+ set raises ( com::sun::star::lang::IllegalArgumentException,com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** Specifies that recurring values are printed.
+ If set to `TRUE` then the value will be printed every time. If set to `FALSE` then the value will only be printed once.
+ The default value is `TRUE`.
+ */
+ [attribute,bound] boolean PrintRepeatedValues
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** is used for subreports and contains the names of columns of the parent report.
+ <p> These columns are typically the foreign key fields of the parent report.
+ The values of these columns are used to identify the data for the subreport.
+ Each time the parent report changes its current row, the subreport requeries
+ it's data based on the values of the master fields.</p>
+ <p>If the report is no sub report (e.g. its parent is not a report itself), this
+ property is not evaluated.</p>
+
+ */
+ [attribute,bound] sequence<string> MasterFields
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /**is used for subreports and contains the names of the columns of the subreport
+ which are related to the master fields of the parent report.
+ <p>Entries in this sequence can either denote column names in the sub report,
+ or parameter names.<br/>
+ For instance, you could base the report on the SQL statement
+ <code>SELECT * FROM invoices WHERE cust_ref = :cid</code>, and add <code>cid</code>
+ to the DetailFields property. In this case, the parameter will be filled from
+ the corresponding master field.<br/>
+ Alternatively, you could simply base your report on the table <code>invoices</code>,
+ and add the column name <code>cust_ref</code> to the DetailFields. In this case,
+ and implicit filter clause <code>WHERE cust_ref = :&lt;new_param_name&gt;</code> will
+ be created, and the artificial parameter will be filled from the corresponding
+ master field.<br/>
+ If a string in this property denotes both a column name and a parameter name, it
+ is undefined which way it is interpreted, but implementations of the service are required
+ to either decide for the parameter or the column, and proceed as usual.
+ </p>
+ <p>The columns specified herein typically represent a part of the primary key
+ fields or their aliases of the detail report.</p>
+ <p>If the report is no sub report (e.g. its parent is not a report itself), this
+ property is not evaluated.</p>
+ *
+ */
+ [attribute,bound] sequence<string> DetailFields
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+
+ /** Specifies the section where the control belongs to.
+ This is a shortcut to get control hierarchy up.
+ This value is `NULL` when the control was not inserted in any section.
+ */
+ [attribute,readonly] com::sun::star::report::XSection Section;
+};
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/report/XReportControlFormat.idl b/offapi/com/sun/star/report/XReportControlFormat.idl
new file mode 100644
index 000000000..767addd5b
--- /dev/null
+++ b/offapi/com/sun/star/report/XReportControlFormat.idl
@@ -0,0 +1,566 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_report_XReportControlFormat_idl__
+#define __com_sun_star_report_XReportControlFormat_idl__
+
+#include <com/sun/star/awt/FontDescriptor.idl>
+#include <com/sun/star/awt/FontSlant.idl>
+#include <com/sun/star/beans/XPropertySet.idl>
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+#include <com/sun/star/lang/Locale.idl>
+#include <com/sun/star/style/ParagraphAdjust.idl>
+#include <com/sun/star/style/VerticalAlignment.idl>
+#include <com/sun/star/util/Color.idl>
+
+ module com { module sun { module star { module report {
+
+/** specifies a format condition for a control.
+*/
+interface XReportControlFormat
+{
+ /** specifies the background color (RGB) of the control.
+ */
+ [attribute,bound] com::sun::star::util::Color ControlBackground
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** determines if the background color is set to transparent.
+ */
+ [attribute,bound] boolean ControlBackgroundTransparent
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** specifies the horizontal alignment of the text.
+ @see ::com::sun::star::style::ParagraphAdjust
+ */
+ [attribute,bound] short ParaAdjust
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+
+ /** specifies the font attributes of the text in the control.
+ */
+ [attribute,bound] com::sun::star::awt::FontDescriptor FontDescriptor
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** specifies the font attributes of the text in the control.
+ */
+ [attribute,bound] com::sun::star::awt::FontDescriptor FontDescriptorAsian
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** specifies the font attributes of the text in the control.
+ */
+ [attribute,bound] com::sun::star::awt::FontDescriptor FontDescriptorComplex
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+
+ /** specifies the com::sun::star::text::FontEmphasis
+ value of the text in the control.
+ */
+ [attribute,bound] short ControlTextEmphasis
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** contains the font emphasis value as com::sun::star::text::FontEmphasis.
+ */
+ [attribute,bound] short CharEmphasis
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** determines whether text is formatted in two lines.
+ <p>It is linked to the properties CharCombinePrefix and CharCombineSuffix.</p>
+ */
+ [attribute,bound] boolean CharCombineIsOn
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+ /** contains the prefix (usually parenthesis) before text that is formatted in two lines.
+ <p>It is linked to the properties CharCombineIsOn and CharCombineSuffix.</p>
+ */
+ [attribute,bound] string CharCombinePrefix
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+ /** contains the suffix (usually parenthesis) after text that is formatted in two lines.
+ <p>It is linked to the properties CharCombineIsOn and CharCombinePrefix.</p>
+ */
+ [attribute,bound] string CharCombineSuffix
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** If this optional property is `TRUE`, then the characters are invisible.
+
+ @since OOo 2.0
+ */
+ [attribute,bound] boolean CharHidden
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** specifies if the characters are formatted and
+ displayed with a shadow effect.
+ */
+ [attribute,bound] boolean CharShadowed
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** specifies if the characters are formatted and
+ displayed with a contour effect.
+ */
+ [attribute,bound] boolean CharContoured
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** optional property which contains the value of the case-mapping of the
+ text for formatting and displaying.
+
+ @see CaseMap
+ */
+ [attribute,bound] short CharCaseMap
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** contains the value of the locale.
+ */
+ [attribute,bound] com::sun::star::lang::Locale CharLocale
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** specifies the percentage by which to raise/lower superscript/subscript
+ characters.
+
+ <p>Negative values denote subscripts and positive values superscripts.</p>
+ */
+ [attribute,bound] short CharEscapement
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** This is the additional height used for subscript or superscript
+ characters in units of percent.
+ For subscript characters the value is negative and for
+ superscript characters positive.
+ */
+ [attribute,bound] byte CharEscapementHeight
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** optional property to determine whether the kerning tables from the current font are used.
+ <p>Automatic <em>kerning</em> applies a spacing in between certain
+ pairs of characters to make the text look better.</p>
+ */
+ [attribute,bound] boolean CharAutoKerning
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** optional property which contains the value of the kerning of the characters.
+ */
+ [attribute,bound] short CharKerning
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** If this optional property is `TRUE`, then the characters are flashing.
+ */
+ [attribute,bound] boolean CharFlash
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** specifies the com::sun::star::text::FontRelief
+ value of the text in the control.
+ */
+ [attribute,bound] short CharRelief
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** This attribute specifies the name of the font style.
+
+
+
+ <p>It may contain more than one name separated by comma.</p>
+ */
+ [attribute,bound] string CharFontName
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** This attribute contains the name of the font style.
+
+ <p>This attribute may be empty.</p>
+ */
+ [attribute,bound] string CharFontStyleName
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** This attribute contains font family as specified in
+ com.sun.star.awt.FontFamily .
+ */
+ [attribute,bound] short CharFontFamily
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** This attribute contains the text encoding of the font as specified in
+ com.sun.star.awt.CharSet.
+ */
+ [attribute,bound] short CharFontCharSet
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** This attribute contains the font pitch as specified in com.sun.star.awt.FontPitch.
+ */
+ [attribute,bound] short CharFontPitch
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** specifies the text color (RGB) of the control.
+ */
+ [attribute,bound] com::sun::star::util::Color CharColor
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+
+ /** specifies the text line color (RGB) of the control.
+ */
+ [attribute,bound] com::sun::star::util::Color CharUnderlineColor
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** This value contains the height of the characters in point.
+ */
+ [attribute,bound] float CharHeight
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+
+ /** This attribute contains the value for the character underline.@see com::sun::star::awt::FontUnderline
+ */
+ [attribute,bound] short CharUnderline
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+
+ /** This attribute contains the value of the font weight.@see com::sun::star::awt::FontWeight
+ */
+ [attribute,bound] float CharWeight
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+
+ /** This attribute contains the value of the posture of the document.@see com::sun::star::awt::FontSlant
+ */
+ [attribute,bound] com::sun::star::awt::FontSlant CharPosture
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** determines the type of the strike out of the character.
+ @see com::sun::star::awt::FontStrikeout
+ */
+ [attribute,bound] short CharStrikeout
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** If this attribute is `TRUE`, the underline and strike-through
+ properties are not applied to white spaces.
+ */
+ [attribute,bound] boolean CharWordMode
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** determines the rotation of a character in degree.
+ <p>Depending on the implementation only certain values may be allowed.
+ </p>
+ */
+ [attribute,bound] short CharRotation
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** determines the percentage value for scaling the width of characters.
+
+ <p>The value refers to the original width which is denoted by 100,
+ and it has to be greater than 0.</p>
+
+ */
+ [attribute,bound] short CharScaleWidth
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** specifies the vertical alignment of the text in the control.
+ @see com::sun::star::style::VerticalAlignment
+ */
+ [attribute,bound] com::sun::star::style::VerticalAlignment VerticalAlign
+ {
+ set raises ( com::sun::star::lang::IllegalArgumentException,com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** contains the URL of a hyperlink (if set).
+ */
+ [attribute,bound] string HyperLinkURL
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** contains the name of the target for a hyperlink (if set).
+ */
+ [attribute,bound] string HyperLinkTarget
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** contains the name of the hyperlink (if set).
+ */
+ [attribute,bound] string HyperLinkName
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** contains the character style name for visited hyperlinks.
+ */
+ [attribute,bound] string VisitedCharStyleName
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** contains the character style name for unvisited hyperlinks.
+ */
+ [attribute,bound] string UnvisitedCharStyleName
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+ /** This value contains the height of the characters in point.
+ */
+ [attribute,bound] float CharHeightAsian
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+ /** This property contains the value of the font weight.@see com::sun::star::awt::FontWeight
+ */
+ [attribute,bound] float CharWeightAsian
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+ /** This property specifies the name of the font style.
+ <p>It may contain more than one name separated by comma.</p>
+ */
+ [attribute,bound] string CharFontNameAsian
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+ /** This property contains the name of the font style.
+ <p>This property may be empty.</p>
+ */
+ [attribute,bound] string CharFontStyleNameAsian
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+ /** This property contains font family as specified in
+ com.sun.star.awt.FontFamily .
+ */
+ [attribute,bound] short CharFontFamilyAsian
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+ /** This property contains the text encoding of the font as specified in
+ com.sun.star.awt.CharSet.
+ */
+ [attribute,bound] short CharFontCharSetAsian
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+ /** This property contains the font pitch as specified in com.sun.star.awt.FontPitch.
+ */
+ [attribute,bound] short CharFontPitchAsian
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+ /** This property contains the value of the posture of the document.@see com::sun::star::awt::FontSlant
+ */
+ [attribute,bound] com::sun::star::awt::FontSlant CharPostureAsian
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** contains the value of the locale.
+ */
+ [attribute,bound] com::sun::star::lang::Locale CharLocaleAsian
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** This value contains the height of the characters in point.
+ */
+ [attribute,bound] float CharHeightComplex
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+ /** This property contains the value of the font weight.@see com::sun::star::awt::FontWeight
+ */
+ [attribute,bound] float CharWeightComplex
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+ /** This property specifies the name of the font style.
+ <p>It may contain more than one name separated by comma.</p>
+ */
+ [attribute,bound] string CharFontNameComplex
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+ /** This property contains the name of the font style.
+ <p>This property may be empty.</p>
+ */
+ [attribute,bound] string CharFontStyleNameComplex
+
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+ /** This property contains font family as specified in
+ com.sun.star.awt.FontFamily .
+ */
+ [attribute,bound] short CharFontFamilyComplex
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+ /** This property contains the text encoding of the font as specified in
+ com.sun.star.awt.CharSet.
+ */
+ [attribute,bound] short CharFontCharSetComplex
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+ /** This property contains the font pitch as specified in com.sun.star.awt.FontPitch.
+ */
+ [attribute,bound] short CharFontPitchComplex
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+ /** This property contains the value of the posture of the document.@see com::sun::star::awt::FontSlant
+ */
+ [attribute,bound] com::sun::star::awt::FontSlant CharPostureComplex
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** contains the value of the locale.
+ */
+ [attribute,bound] com::sun::star::lang::Locale CharLocaleComplex
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+};
+
+
+}; }; }; };
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/report/XReportControlModel.idl b/offapi/com/sun/star/report/XReportControlModel.idl
new file mode 100644
index 000000000..319b4817c
--- /dev/null
+++ b/offapi/com/sun/star/report/XReportControlModel.idl
@@ -0,0 +1,97 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_report_XReportControlModel_idl__
+#define __com_sun_star_report_XReportControlModel_idl__
+
+#include <com/sun/star/report/XReportComponent.idl>
+#include <com/sun/star/report/XReportControlFormat.idl>
+#include <com/sun/star/container/XContainer.idl>
+#include <com/sun/star/container/XIndexContainer.idl>
+#include <com/sun/star/report/XFormatCondition.idl>
+
+ module com { module sun { module star { module report {
+
+interface XReportControlModel
+{
+ /** allows the creation of sub reports.
+ */
+ interface XReportComponent;
+
+ interface XReportControlFormat;
+
+ /** allows to register listeners to be notified of changes in the container.
+ */
+ interface com::sun::star::container::XContainer;
+
+ /** gives access to the com::sun::star::report::XFormatCondition elements by index.
+ */
+ interface com::sun::star::container::XIndexContainer;
+
+ /** Creates a format condition.
+ @return
+ report component
+ */
+ XFormatCondition createFormatCondition() raises( com::sun::star::uno::Exception );
+
+
+ /** Specifies which content should be shown.
+
+ The value can be
+
+ - the name of a database column.
+ The format to use is <code>field:[name]</code>
+ - the name of a function defined in the report or a group.
+ The format to use is <code>rpt:[functionName]</code>
+ - an expression like <code>rpt:24+24-47</code>
+
+ @see http://wiki.openoffice.org/wiki/SUN_Report_Builder
+ @see http://wiki.openoffice.org/wiki/SUN_Report_Builder#Syntax
+ @see http://wiki.openoffice.org/wiki/Base/Reports/Functions
+ */
+ [attribute,bound] string DataField
+ {
+ set raises ( com::sun::star::lang::IllegalArgumentException,com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** Specifies that the element gets printed when the group changes.
+ The default value is `TRUE`.
+ */
+ [attribute,bound] boolean PrintWhenGroupChange
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** Describes the print expression of the report control model.
+ If the expression evaluates to true than the report control model will be printed otherwise not.
+ */
+ [attribute,bound] string ConditionalPrintExpression
+ {
+ set raises ( com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+};
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/report/XReportDefinition.idl b/offapi/com/sun/star/report/XReportDefinition.idl
new file mode 100644
index 000000000..cf412e96e
--- /dev/null
+++ b/offapi/com/sun/star/report/XReportDefinition.idl
@@ -0,0 +1,309 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_report_XReportDefinition_idl__
+#define __com_sun_star_report_XReportDefinition_idl__
+
+#include <com/sun/star/report/XReportComponent.idl>
+#include <com/sun/star/report/XFunctionsSupplier.idl>
+#include <com/sun/star/view/PaperOrientation.idl>
+#include <com/sun/star/container/NoSuchElementException.idl>
+#include <com/sun/star/style/GraphicLocation.idl>
+#include <com/sun/star/view/PaperFormat.idl>
+#include <com/sun/star/util/XCloseable.idl>
+#include <com/sun/star/ui/XUIConfigurationManagerSupplier.idl>
+#include <com/sun/star/document/XDocumentSubStorageSupplier.idl>
+#include <com/sun/star/frame/XModel.idl>
+#include <com/sun/star/document/XViewDataSupplier.idl>
+#include <com/sun/star/frame/XLoadable.idl>
+#include <com/sun/star/embed/XVisualObject.idl>
+#include <com/sun/star/document/XStorageBasedDocument.idl>
+#include <com/sun/star/awt/Size.idl>
+#include <com/sun/star/util/XModifiable2.idl>
+#include <com/sun/star/document/XEventBroadcaster.idl>
+#include <com/sun/star/lang/DisposedException.idl>
+#include <com/sun/star/style/XStyleFamiliesSupplier.idl>
+
+module com { module sun { module star { module sdbc {
+published interface XConnection;
+};};};};
+
+ module com { module sun { module star { module report {
+
+ interface XSection;
+ interface XGroups;
+
+/** identifies a XReportComponent as being a (sub-) report.
+
+ <p>This interface does not really provide an own functionality, it is only for easier
+ runtime identification of report components.</p>
+
+ <p>A report fulfills several tasks, like storing the structure of its
+ report components and it provides the
+ event environment for its contained elements.</p>
+
+ @see XReportComponent
+ */
+interface XReportDefinition
+{
+ /** allows the access to the model embedded in the database storage.
+ */
+ interface com::sun::star::frame::XModel;
+
+ /** offers a simple way to initialize a component.
+ */
+ interface com::sun::star::frame::XLoadable;
+
+ /** represents common visualization functionality for the embedded report.
+ */
+ interface com::sun::star::embed::XVisualObject;
+
+ /** allows to initialize the document with a storage.
+ */
+ interface com::sun::star::document::XStorageBasedDocument;
+
+ /** gives access to some properties describing all open views to a document.
+ */
+ interface com::sun::star::document::XViewDataSupplier;
+
+ /** allows to close the document.
+ */
+ interface com::sun::star::util::XCloseable;
+
+ /** allows to retrieve the user interface configuration manager related to an object.
+ */
+ interface com::sun::star::ui::XUIConfigurationManagerSupplier;
+
+ interface com::sun::star::document::XDocumentSubStorageSupplier;
+
+ /** provides access to the collection of style families.
+
+ <p>A spreadsheet document contains 2 families of styles:
+ "PageStyles" and "CellStyles".</p>
+ */
+ interface com::sun::star::style::XStyleFamiliesSupplier;
+
+ /** a storable document should provide information about his modify state
+
+ <p>
+ With this interface it's possible too, to reset the modify state.
+ That can be necessary to prevent code against problem during closing
+ of the document without saving any changes.
+ </p>
+ */
+ interface com::sun::star::util::XModifiable2;
+
+ /** allows the creation of sub reports.
+ */
+ interface XReportComponent;
+
+ /** gives access to functions defined in the report definition.
+ */
+ interface XFunctionsSupplier;
+
+ /** makes it possible to register listeners which are called whenever
+ a document event occurs.
+ This is a workaround due to the fact that this interface can not be directly inherited from com::sun::star::document::XEventBroadcaster
+ because the methods addEventListener and removeEventListener are already defined in com::sun::star::lang::XComponent.
+ A queryInterface call is still supported to the com::sun::star::document::XEventBroadcaster interface.
+ */
+ com::sun::star::document::XEventBroadcaster getEventBroadcaster()
+ raises( ::com::sun::star::lang::DisposedException,
+ ::com::sun::star::uno::Exception );
+
+ /** returns a sequence of the currently supported output formats.
+ */
+ sequence<string> getAvailableMimeTypes()
+ raises( ::com::sun::star::lang::DisposedException,
+ ::com::sun::star::uno::Exception );
+
+
+ /** Represents the output format (media (mime) type) of the resulting document when executing this report.
+ */
+ [attribute,bound] string MimeType
+ {
+ set raises (com::sun::star::lang::IllegalArgumentException);
+ };
+
+ /** Represents the title of the report in print preview.
+ */
+ [attribute,bound] string Caption;
+
+ /** Specifies whether groups in a multi column report are kept together.
+ @see com::sun::star::report::GroupKeepTogether
+ */
+ [attribute,bound] short GroupKeepTogether
+ {
+ set raises (com::sun::star::lang::IllegalArgumentException);
+ };
+
+ /** Represents the location of the page header.
+ @see ReportPrintOption
+ */
+ [attribute,bound] short PageHeaderOption;
+
+ /** Represents the location of the page footer.
+ @see ReportPrintOption
+ */
+ [attribute,bound] short PageFooterOption;
+
+
+ /** is the command which should be executed, the type of command depends
+ on the CommandType.
+ <p>In case of a #CommandType of CommandType::COMMAND,
+ means in case the #Command specifies an SQL statement, the inherited
+ com::sun::star::sdbc::RowSet::EscapeProcessing
+ becomes relevant:<br/>
+ It then can be to used to specify whether the SQL statement should be analyzed on the
+ client side before sending it to the database server.<br/>
+ The default value for com::sun::star::sdbc::RowSet::EscapeProcessing
+ is `TRUE`. By switching it to `FALSE`, you can pass backend-specific SQL statements,
+ which are not standard SQL, to your database.</p>
+
+
+ @see com::sun::star::sdb::CommandType
+ */
+ [attribute,bound] string Command;
+
+ /** specifies the type of the command to be executed to retrieve a result set.
+
+ <p>#Command needs to be interpreted depending on the value of this property.</p>
+
+ <p>This property is only meaningful together with the #Command
+ property, thus either <em>both</em> or <em>none</em> of them are present.</p>
+
+ @see com::sun::star::sdb::CommandType
+ */
+ [attribute,bound] long CommandType;
+
+ /** specifies an additional filter to optionally use.
+
+ <p>The Filter string has to form a SQL WHERE-clause, <em>without</em> the WHERE-string itself.</p>
+
+ <p>If a #DataSourceName, #Command and #CommandType
+ are specified, a RowSet can be created with this information. If the results provided by the
+ row set are to be additionally filtered, the Filter property can be used.</p>
+
+ <p>Note that the Filter property does not make sense if a ResultSet has been specified
+ in the DataAccessDescriptor.</p>
+
+ @see com::sun::star::sdb::RowSet
+ @see ResultSet
+ */
+ [attribute,bound] string Filter;
+
+ /** specifies if the #Command should be analyzed on the client side before sending it
+ to the database server.
+
+ <p>The default value of this property is `TRUE`. By switching it to `FALSE`, you can pass
+ backend-specific SQL statements, which are not standard SQL, to your database.</p>
+
+ <p>This property is usually present together with the #Command and
+ #CommandType properties, and is evaluated if and only if #CommandType
+ equals CommandType::COMMAND.</p>
+ */
+ [attribute,bound] boolean EscapeProcessing;
+
+ /** specifies the active connection which is used to create the resulting report.
+ */
+ [attribute,bound] com::sun::star::sdbc::XConnection ActiveConnection
+ {
+ set raises (com::sun::star::lang::IllegalArgumentException);
+ };
+
+ /** is the name of the datasource to use, this could be a named datasource
+ or the URL of a data access component.
+ */
+ [attribute,bound] string DataSourceName;
+
+ /** Defines that the report header is on.
+ Default is `FALSE`.
+ */
+ [attribute,bound] boolean ReportHeaderOn;
+
+ /** Defines that the report footer is on.
+ Default is `FALSE`.
+ */
+ [attribute,bound] boolean ReportFooterOn;
+
+ /** Defines that the page header is on.
+ Default is `TRUE`.
+ */
+ [attribute,bound] boolean PageHeaderOn;
+
+ /** Defines that the page footer is on.
+ Default is `TRUE`.
+ */
+ [attribute,bound] boolean PageFooterOn;
+
+ /** Represents the groups of the report.
+ */
+ [attribute,readonly] com::sun::star::report::XGroups Groups;
+
+ /** returns the report header if the #ReportHeaderOn is `TRUE`.
+ @throws com::sun::star::container::NoSuchElementException
+ If the report has the report header disabled.
+ @see XSection
+ */
+ [attribute,readonly] com::sun::star::report::XSection ReportHeader
+ {
+ get raises (com::sun::star::container::NoSuchElementException);
+ };
+
+ /** returns the page header if the #PageHeaderOn is `TRUE`.
+ @throws com::sun::star::container::NoSuchElementException
+ If the report has the page header disabled.
+ @see XSection
+ */
+ [attribute,readonly] com::sun::star::report::XSection PageHeader
+ {
+ get raises (com::sun::star::container::NoSuchElementException);
+ };
+
+ /** returns the detail section.
+ @see XSection
+ */
+ [attribute,readonly] com::sun::star::report::XSection Detail;
+
+ /** returns the page footer if the #PageFooterOn is `TRUE`.
+ @throws com::sun::star::container::NoSuchElementException
+ If the report has the page footer disabled.
+ @see XSection
+ */
+ [attribute,readonly] com::sun::star::report::XSection PageFooter
+ {
+ get raises (com::sun::star::container::NoSuchElementException);
+ };
+
+ /** returns the report footer if the #ReportFooterOn is `TRUE`.
+ @throws com::sun::star::container::NullPointerException
+ If the report has the report footer disabled.
+ @see XSection
+ */
+ [attribute,readonly] com::sun::star::report::XSection ReportFooter
+ {
+ get raises (com::sun::star::container::NoSuchElementException);
+ };
+};
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/report/XReportEngine.idl b/offapi/com/sun/star/report/XReportEngine.idl
new file mode 100644
index 000000000..de92bd8b2
--- /dev/null
+++ b/offapi/com/sun/star/report/XReportEngine.idl
@@ -0,0 +1,136 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_report_XReportEngine_idl__
+#define __com_sun_star_report_XReportEngine_idl__
+
+#include <com/sun/star/report/XReportDefinition.idl>
+#include <com/sun/star/beans/XPropertySet.idl>
+#include <com/sun/star/lang/XComponent.idl>
+#include <com/sun/star/util/URL.idl>
+#include <com/sun/star/frame/XModel.idl>
+#include <com/sun/star/task/XStatusIndicator.idl>
+#include <com/sun/star/frame/XFrame.idl>
+#include <com/sun/star/sdbc/XConnection.idl>
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+#include <com/sun/star/lang/DisposedException.idl>
+#include <com/sun/star/uno/Exception.idl>
+
+module com { module sun { module star { module report {
+/** identifies a XReportEngine which allows the creation of OpenDocument files.
+
+ <p>The following events are supported by the report engine.
+ OnPageStarted Is fired when a new page started.
+ OnReportStarted Is fired when a new report started.
+ OnGroupStarted Is fired when a new group started.
+ OnGroupEnded Is fired when the group ended.
+ OnReportEnded Is fired when the report ended.
+ OnPageEnded Is fired when the page ended.
+
+ @see com::sun::star::document::OfficeDocument
+*/
+
+interface XReportEngine
+{
+ /** allows life-time control of report engine.
+ */
+ interface com::sun::star::lang::XComponent;
+
+ /** gives access to the properties.
+ */
+ interface com::sun::star::beans::XPropertySet;
+
+ /** creates a report document.
+ @throws com::sun::star::lang::DisposedException
+ If the report engine is already disposed.
+ @throws com::sun::star::lang::IllegalArgumentException
+ If the report definition was not set or is `NULL`.
+ */
+ com::sun::star::frame::XModel createDocumentModel()
+ raises( ::com::sun::star::lang::DisposedException,
+ com::sun::star::lang::IllegalArgumentException,
+ ::com::sun::star::uno::Exception );
+
+ /** creates a report document.
+ @param frame
+ The frame must have a controller set. This controller will be set at the model.
+ @throws com::sun::star::lang::DisposedException
+ If the report engine is already disposed.
+ @throws com::sun::star::lang::IllegalArgumentException
+ If the report definition was not set or is `NULL`.
+
+ OJ: Has to be discussed if this method is useful.
+ */
+ com::sun::star::frame::XModel createDocumentAlive([in] com::sun::star::frame::XFrame frame)
+ raises( ::com::sun::star::lang::DisposedException,
+ com::sun::star::lang::IllegalArgumentException,
+ ::com::sun::star::uno::Exception );
+
+ /** creates a report document.
+ @return
+ The URL where the new document is located.
+ @throws com::sun::star::lang::DisposedException
+ If the report engine is already disposed.
+ @throws com::sun::star::lang::IllegalArgumentException
+ If the report definition was not set or is `NULL`.
+ */
+ com::sun::star::util::URL createDocument()
+ raises( ::com::sun::star::lang::DisposedException,
+ com::sun::star::lang::IllegalArgumentException,
+ ::com::sun::star::uno::Exception );
+
+ /** allows to interrupt the creation process of the report document.
+ @throws com::sun::star::lang::DisposedException
+ If the report engine is already disposed.
+ */
+ void interrupt()
+ raises( ::com::sun::star::lang::DisposedException,
+ ::com::sun::star::uno::Exception );
+
+ /** specifies the report definition object which is used to create the resulting report.
+ */
+ [attribute,bound] XReportDefinition ReportDefinition
+ {
+ set raises (com::sun::star::lang::IllegalArgumentException);
+ };
+
+ /** specifies the active connection which is used to create the resulting report.
+ */
+ [attribute,bound] com::sun::star::sdbc::XConnection ActiveConnection
+ {
+ set raises (com::sun::star::lang::IllegalArgumentException);
+ };
+
+ /** specifies the status indicator which shows the progress of the report generation process.
+ */
+ [attribute] com::sun::star::task::XStatusIndicator StatusIndicator;
+
+ /** defines the maximum number of rows which should be fetched for the report.
+ If the limit is exceeded, the excess rows are silently dropped.
+ <br/>
+ There is no limitation, if set to zero.
+ */
+ [attribute,bound] long MaxRows;
+};
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/report/XSection.idl b/offapi/com/sun/star/report/XSection.idl
new file mode 100644
index 000000000..ae10e2dd8
--- /dev/null
+++ b/offapi/com/sun/star/report/XSection.idl
@@ -0,0 +1,165 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_report_XSection_idl__
+#define __com_sun_star_report_XSection_idl__
+
+#include <com/sun/star/container/XChild.idl>
+#include <com/sun/star/drawing/XShapes.idl>
+#include <com/sun/star/container/XEnumerationAccess.idl>
+#include <com/sun/star/container/XContainer.idl>
+#include <com/sun/star/util/Color.idl>
+#include <com/sun/star/beans/XPropertySet.idl>
+#include <com/sun/star/report/XReportDefinition.idl>
+#include <com/sun/star/report/XReportComponent.idl>
+
+ module com { module sun { module star { module report {
+ interface XGroup;
+
+/** identifies a XSection inside a report.
+
+ <p>A section acts like a container of report components. This generic
+ construction allows the definition of hierarchies of reports and their
+ dependent subreports.</p>
+
+ @see XReportDefinition
+ @see XGroup
+ */
+interface XSection
+{
+ /** allows to navigate to group or report definition.
+ */
+ interface com::sun::star::container::XChild;
+ /** allows to register listeners to be notified of changes in the container.
+ */
+ interface com::sun::star::container::XContainer;
+
+ /** gives access to the elements by index.
+ */
+ interface com::sun::star::drawing::XShapes;
+
+ /** creates an enumeration of the elements.
+ */
+ interface com::sun::star::container::XEnumerationAccess;
+
+ /** provides generic access to the instance properties
+ */
+ interface com::sun::star::beans::XPropertySet;
+
+ /** allows life-time control of sections.
+ */
+ interface com::sun::star::lang::XComponent;
+
+
+ /** Defines if the section should be visible in report.
+ */
+ [attribute,bound] boolean Visible;
+
+ /** Defines the name of the section.
+ */
+ [attribute,bound] string Name;
+
+ /** Defines the height of the section.
+ */
+ [attribute,bound] unsigned long Height;
+
+ /** Defines the background color of the section.
+ */
+ [attribute,bound] com::sun::star::util::Color BackColor;
+
+ /** determines if the background color is set to transparent.
+ */
+ [attribute,bound] boolean BackTransparent;
+
+ /** Defines the expression which is executed before printing the section.
+ If the return value of the expression is `TRUE` then the section will be printed.
+ */
+ [attribute,bound] string ConditionalPrintExpression;
+
+ /** Specifies whether the section is printed on a separate page.
+ <p>Not valid for page header or page footer.</p>
+ @see ForceNewPage
+ */
+ [attribute,bound] short ForceNewPage
+ {
+ set raises ( com::sun::star::lang::IllegalArgumentException,com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** Specifies whether the section is printed in a new row or column within a multi column report.
+ <p>Not valid for page header or page footer.</p>
+ @see ForceNewPage
+ */
+ [attribute,bound] short NewRowOrCol
+ {
+ set raises ( com::sun::star::lang::IllegalArgumentException,com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** Specifies that the section is printed on one page.
+ <p>Not valid for page header or page footer.</p>
+ */
+ [attribute,bound] boolean KeepTogether
+ {
+ set raises ( com::sun::star::lang::IllegalArgumentException,com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** Specifies that elements with dynamic state will be expanded vertically when then content of the element is larger than it's container.
+ If this property is disabled the content will be truncated when its size is larger than the container.
+ */
+ [attribute,bound] boolean CanGrow
+ {
+ set raises ( com::sun::star::lang::IllegalArgumentException,com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+/**
+ <p>Represents ...</p>
+
+ */
+ [attribute,bound] boolean CanShrink
+ {
+ set raises ( com::sun::star::lang::IllegalArgumentException,com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** Defines that the group header should be repeated on the next page when a group spans more than one page.
+ It only applies to group headers.
+ */
+ [attribute,bound] boolean RepeatSection
+ {
+ set raises ( com::sun::star::lang::IllegalArgumentException,com::sun::star::beans::UnknownPropertyException );
+ get raises ( com::sun::star::beans::UnknownPropertyException );
+ };
+
+ /** Specifies the parent of the section if it is a group header or group footer.
+ */
+ [attribute,readonly] com::sun::star::report::XGroup Group;
+
+ /** Specifies the parent of the section if it is a page header or page footer.
+ */
+ [attribute,readonly] com::sun::star::report::XReportDefinition ReportDefinition;
+};
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/report/XShape.idl b/offapi/com/sun/star/report/XShape.idl
new file mode 100644
index 000000000..edcfe8871
--- /dev/null
+++ b/offapi/com/sun/star/report/XShape.idl
@@ -0,0 +1,73 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_report_XShape_idl__
+#define __com_sun_star_report_XShape_idl__
+
+#include <com/sun/star/report/XReportControlModel.idl>
+#include <com/sun/star/beans/PropertyValue.idl>
+#include <com/sun/star/drawing/XShape.idl>
+#include <com/sun/star/drawing/HomogenMatrix3.idl>
+
+ module com { module sun { module star { module report {
+
+interface XShape
+{
+ interface XReportControlModel;
+
+ /** is used to query or change the ZOrder of this Shape. */
+ [attribute,bound] long ZOrder;
+
+ /** this property lets you get and set the transformation matrix
+ for this shape.
+
+ The transformation is a 3x3 homogeneous matrix and can contain
+ translation, rotation, shearing and scaling.
+ */
+ [attribute,bound] com::sun::star::drawing::HomogenMatrix3 Transformation;
+
+ /** This property contains the CustomShapeEngine service name that has to
+ be used for rendering.
+ */
+ [attribute] string CustomShapeEngine;
+
+ /** This property can be used to store data that the CustomShapeEngine may
+ use for rendering
+ */
+ [attribute] string CustomShapeData;
+
+ /** This property describes the geometry of the CustomShape. The CustomShapeEngine
+ that is used should be able to get on with the content of this property.
+
+ If the CustomShapeEngine property is "com.sun.star.drawing.EnhancedCustomShapeEngine",
+ then this property is containing properties as they are specified in the service
+ com.sun.star.drawing.EnhancedCustomShapeGeometry
+ */
+ [attribute,bound] sequence<::com::sun::star::beans::PropertyValue> CustomShapeGeometry;
+
+ /** determines if the object is opaque or transparent for text.
+ */
+ [attribute,bound] boolean Opaque;
+};
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/report/inspection/DataProviderHandler.idl b/offapi/com/sun/star/report/inspection/DataProviderHandler.idl
new file mode 100644
index 000000000..ad2b2877a
--- /dev/null
+++ b/offapi/com/sun/star/report/inspection/DataProviderHandler.idl
@@ -0,0 +1,43 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#ifndef __com_sun_star_report_inspection_DataProviderHandler_idl__
+#define __com_sun_star_report_inspection_DataProviderHandler_idl__
+
+#include <com/sun/star/inspection/XPropertyHandler.idl>
+
+
+module com { module sun { module star { module report { module inspection {
+
+
+/** implements the default property handler for all known types of com::sun::star::chart2::data::XDataProviders.
+
+ @see com::sun::star::inspection::XPropertyHandler
+*/
+service DataProviderHandler
+{
+ interface com::sun::star::inspection::XPropertyHandler;
+};
+
+
+}; }; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/report/inspection/DefaultComponentInspectorModel.idl b/offapi/com/sun/star/report/inspection/DefaultComponentInspectorModel.idl
new file mode 100644
index 000000000..ed6c9ca72
--- /dev/null
+++ b/offapi/com/sun/star/report/inspection/DefaultComponentInspectorModel.idl
@@ -0,0 +1,83 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_report_inspection_DefaultComponentInspectorModel_idl__
+#define __com_sun_star_report_inspection_DefaultComponentInspectorModel_idl__
+
+#include <com/sun/star/inspection/XObjectInspectorModel.idl>
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+
+
+module com { module sun { module star { module report { module inspection {
+
+
+/** implements a com::sun::star::inspection::XObjectInspectorModel for
+ inspecting form components, in particular all components implementing the ReportComponent
+ service.
+
+ <p>A DefaultComponentInspectorModel provides the following handlers by default:
+ <ul><li>GeometryHandler</li>
+ <li>ReportComponentHandler</li>
+ <li>com::sun::star::form::inspection::EditPropertyHandler</li>
+ </ul></p>
+
+ @see com::sun::star::inspection::XObjectInspectorModel::HandlerFactories
+*/
+service DefaultComponentInspectorModel : com::sun::star::inspection::XObjectInspectorModel
+{
+ /** creates a default DefaultComponentInspectorModel, providing factories for all
+ handlers listed above.
+
+ @since OOo 2.2
+ */
+ createDefault();
+
+ /** creates a default DefaultComponentInspectorModel, providing factories for all
+ handlers listed above, and describing an ObjectInspector which has a help section.
+
+ @param minHelpTextLines
+ denotes the minimum number of lines of text to be reserved for the help
+ section.
+
+ @param maxHelpTextLines
+ denotes the maximum number of lines of text to be reserved for the help
+ section.
+
+ @throws ::com::sun::star::lang::IllegalArgumentException
+ if minHelpTextLines or maxHelpTextLines are negative,
+ or if minHelpTextLines is greater than maxHelpTextLines.
+
+ @see XObjectInspectorModel::HasHelpSection
+ @see XObjectInspectorModel::MinHelpTextLines
+ @see XObjectInspectorModel::MaxHelpTextLines
+
+ @since OOo 2.2
+ */
+ createWithHelpSection(
+ [in] long minHelpTextLines,
+ [in] long maxHelpTextLines
+ )
+ raises ( ::com::sun::star::lang::IllegalArgumentException );
+};
+
+
+}; }; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/report/inspection/ReportComponentHandler.idl b/offapi/com/sun/star/report/inspection/ReportComponentHandler.idl
new file mode 100644
index 000000000..0f51fdfeb
--- /dev/null
+++ b/offapi/com/sun/star/report/inspection/ReportComponentHandler.idl
@@ -0,0 +1,43 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#ifndef __com_sun_star_report_inspection_ReportComponentHandler_idl__
+#define __com_sun_star_report_inspection_ReportComponentHandler_idl__
+
+#include <com/sun/star/inspection/XPropertyHandler.idl>
+
+
+module com { module sun { module star { module report { module inspection {
+
+
+/** implements the default property handler for all known types of com::sun::star::report::XReportComponents.
+
+ @see com::sun::star::inspection::XPropertyHandler
+*/
+service ReportComponentHandler
+{
+ interface com::sun::star::inspection::XPropertyHandler;
+};
+
+
+}; }; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/report/meta/XFormulaParser.idl b/offapi/com/sun/star/report/meta/XFormulaParser.idl
new file mode 100644
index 000000000..e8c756975
--- /dev/null
+++ b/offapi/com/sun/star/report/meta/XFormulaParser.idl
@@ -0,0 +1,60 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_report_meta_XFormulaParser_idl__
+#define __com_sun_star_report_meta_XFormulaParser_idl__
+
+#include <com/sun/star/lang/XComponent.idl>
+#include <com/sun/star/lang/DisposedException.idl>
+#include <com/sun/star/sheet/XFormulaParser.idl>
+#include <com/sun/star/sheet/FormulaOpCodeMapEntry.idl>
+#include <com/sun/star/sheet/XFormulaOpCodeMapper.idl>
+#include <com/sun/star/beans/XPropertySet.idl>
+module com { module sun { module star { module report { module meta {
+/** identifies a XFormulaParser which allows to retrieve the meta data of all supported functions.
+
+*/
+interface XFormulaParser
+{
+ /** allows life-time control of report engine.
+ */
+ interface com::sun::star::lang::XComponent;
+
+ interface com::sun::star::sheet::XFormulaParser;
+
+ /** gives access to the properties.
+ */
+ interface com::sun::star::beans::XPropertySet;
+
+ /** The complete mapping of Names to OpCodes.
+
+ Names and symbols not defined here lead to a parser/print error.
+ */
+ [attribute] sequence< com::sun::star::sheet::FormulaOpCodeMapEntry > OpCodeMap;
+
+ /** return the mapper for op codes.
+ */
+ [attribute,readonly] com::sun::star::sheet::XFormulaOpCodeMapper FormulaOpCodeMapper;
+};
+
+
+}; }; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/report/meta/XFunctionCategory.idl b/offapi/com/sun/star/report/meta/XFunctionCategory.idl
new file mode 100644
index 000000000..d01029cf0
--- /dev/null
+++ b/offapi/com/sun/star/report/meta/XFunctionCategory.idl
@@ -0,0 +1,64 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_report_meta_XFunctionCategory_idl__
+#define __com_sun_star_report_meta_XFunctionCategory_idl__
+
+#include <com/sun/star/container/XIndexAccess.idl>
+#include <com/sun/star/lang/DisposedException.idl>
+#include <com/sun/star/beans/XPropertySet.idl>
+
+module com { module sun { module star { module report { module meta {
+
+interface XFunctionDescription;
+/** identifies a XFunctionCategory which allows to retrieve the meta data of all supported functions.
+
+*/
+
+interface XFunctionCategory
+{
+ /** gives access to the properties.
+ */
+ interface com::sun::star::beans::XPropertySet;
+
+ /** gives access to all categories
+ */
+ interface com::sun::star::container::XIndexAccess;
+
+ /** same as getByIndex.
+ @see com.sun.star.container.XIndexAccess
+ */
+ XFunctionDescription getFunction([in] long position)
+ raises( com::sun::star::lang::IndexOutOfBoundsException,
+ com::sun::star::lang::WrappedTargetException );
+
+ /** returns the localized category's name.
+ */
+ [attribute,readonly] string Name;
+
+ /** specifies the category number.
+ */
+ [attribute,readonly] long Number;
+};
+
+
+}; }; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/report/meta/XFunctionDescription.idl b/offapi/com/sun/star/report/meta/XFunctionDescription.idl
new file mode 100644
index 000000000..30b2f89f7
--- /dev/null
+++ b/offapi/com/sun/star/report/meta/XFunctionDescription.idl
@@ -0,0 +1,73 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_report_meta_XFunctionDescription_idl__
+#define __com_sun_star_report_meta_XFunctionDescription_idl__
+
+#include <com/sun/star/lang/DisposedException.idl>
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+#include <com/sun/star/beans/XPropertySet.idl>
+#include <com/sun/star/sheet/FunctionArgument.idl>
+module com { module sun { module star { module report { module meta {
+
+interface XFunctionCategory;
+
+/** identifies a XFunctionDescription which allows to retrieve the meta data of all supported functions.
+
+*/
+interface XFunctionDescription
+{
+ /** gives access to the properties.
+ */
+ interface com::sun::star::beans::XPropertySet;
+
+ string createFormula([in] sequence< string > arguments )
+ raises( ::com::sun::star::lang::DisposedException,
+ com::sun::star::lang::IllegalArgumentException,
+ ::com::sun::star::uno::Exception );
+
+ /** specifies the category number.
+ */
+ [attribute,readonly] XFunctionCategory Category;
+
+ /** returns the localized function's name.
+ */
+ [attribute,readonly] string Name;
+
+
+ /** returns a localized description of the function.
+ */
+ [attribute,readonly] string Description;
+
+ /** returns the signature of the function.
+ */
+ [attribute,readonly] string Signature;
+
+
+ /** returns a sequence of localized descriptions of the function's
+ arguments (in the order specified by the function).
+ */
+ [attribute,readonly] sequence< com::sun::star::sheet::FunctionArgument > Arguments;
+};
+
+
+}; }; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/report/meta/XFunctionManager.idl b/offapi/com/sun/star/report/meta/XFunctionManager.idl
new file mode 100644
index 000000000..ccfa752c8
--- /dev/null
+++ b/offapi/com/sun/star/report/meta/XFunctionManager.idl
@@ -0,0 +1,62 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_report_meta_XFunctionManager_idl__
+#define __com_sun_star_report_meta_XFunctionManager_idl__
+
+#include <com/sun/star/lang/XComponent.idl>
+#include <com/sun/star/container/XIndexAccess.idl>
+#include <com/sun/star/container/NoSuchElementException.idl>
+#include <com/sun/star/lang/DisposedException.idl>
+#include <com/sun/star/report/meta/XFunctionCategory.idl>
+#include <com/sun/star/report/meta/XFunctionDescription.idl>
+
+module com { module sun { module star { module report { module meta {
+/** identifies a XFunctionManager which allows to retrieve the meta data of all supported functions.
+
+*/
+interface XFunctionManager
+{
+ /** allows life-time control of report engine.
+ */
+ interface com::sun::star::lang::XComponent;
+ /** gives access to all categories
+ */
+ interface com::sun::star::container::XIndexAccess;
+
+ /** same as getByIndex.
+ @param position The position.
+ @see com.sun.star.container.XIndexAccess
+ */
+ XFunctionCategory getCategory([in] long position)
+ raises( com::sun::star::lang::IndexOutOfBoundsException,
+ com::sun::star::lang::WrappedTargetException );
+
+ /** get the function description by name
+ @param name the name of the function
+ */
+ XFunctionDescription getFunctionByName([in] string name)
+ raises( com::sun::star::container::NoSuchElementException);
+};
+
+
+}; }; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/report/modules.idl b/offapi/com/sun/star/report/modules.idl
new file mode 100644
index 000000000..d7929fc04
--- /dev/null
+++ b/offapi/com/sun/star/report/modules.idl
@@ -0,0 +1,38 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef __com_sun_star_modules_report_idl__
+#define __com_sun_star_modules_report_idl__
+
+module com { module sun { module star { module report {
+
+ /** collects services for inspecting report/components
+ @see com::sun::star::inspection::ObjectInspector
+ @see com::sun::star::inspection
+ */
+ module inspection { };
+
+ /** collects services for inspecting the function repository.
+ */
+ module meta { };
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */