diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 09:06:44 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 09:06:44 +0000 |
commit | ed5640d8b587fbcfed7dd7967f3de04b37a76f26 (patch) | |
tree | 7a5f7c6c9d02226d7471cb3cc8fbbf631b415303 /offapi/com/sun/star/report | |
parent | Initial commit. (diff) | |
download | libreoffice-upstream.tar.xz libreoffice-upstream.zip |
Adding upstream version 4:7.4.7.upstream/4%7.4.7upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'offapi/com/sun/star/report')
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 = :<new_param_name></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: */ |