From ed5640d8b587fbcfed7dd7967f3de04b37a76f26 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 7 Apr 2024 11:06:44 +0200 Subject: Adding upstream version 4:7.4.7. Signed-off-by: Daniel Baumann --- offapi/com/sun/star/form/component/CheckBox.idl | 73 ++++++++ offapi/com/sun/star/form/component/ComboBox.idl | 63 +++++++ .../com/sun/star/form/component/CommandButton.idl | 106 +++++++++++ .../com/sun/star/form/component/CurrencyField.idl | 62 +++++++ offapi/com/sun/star/form/component/DataForm.idl | 196 +++++++++++++++++++++ .../sun/star/form/component/DatabaseCheckBox.idl | 51 ++++++ .../sun/star/form/component/DatabaseComboBox.idl | 79 +++++++++ .../star/form/component/DatabaseCurrencyField.idl | 46 +++++ .../sun/star/form/component/DatabaseDateField.idl | 46 +++++ .../star/form/component/DatabaseFormattedField.idl | 59 +++++++ .../star/form/component/DatabaseImageControl.idl | 106 +++++++++++ .../sun/star/form/component/DatabaseListBox.idl | 157 +++++++++++++++++ .../star/form/component/DatabaseNumericField.idl | 46 +++++ .../star/form/component/DatabasePatternField.idl | 60 +++++++ .../star/form/component/DatabaseRadioButton.idl | 46 +++++ .../sun/star/form/component/DatabaseTextField.idl | 59 +++++++ .../sun/star/form/component/DatabaseTimeField.idl | 46 +++++ offapi/com/sun/star/form/component/DateField.idl | 65 +++++++ offapi/com/sun/star/form/component/FileControl.idl | 63 +++++++ offapi/com/sun/star/form/component/FixedText.idl | 51 ++++++ offapi/com/sun/star/form/component/Form.idl | 70 ++++++++ .../com/sun/star/form/component/FormattedField.idl | 57 ++++++ offapi/com/sun/star/form/component/GridControl.idl | 168 ++++++++++++++++++ offapi/com/sun/star/form/component/GroupBox.idl | 47 +++++ offapi/com/sun/star/form/component/HTMLForm.idl | 84 +++++++++ .../com/sun/star/form/component/HiddenControl.idl | 54 ++++++ offapi/com/sun/star/form/component/ImageButton.idl | 94 ++++++++++ offapi/com/sun/star/form/component/ListBox.idl | 70 ++++++++ .../sun/star/form/component/NavigationToolBar.idl | 124 +++++++++++++ .../com/sun/star/form/component/NumericField.idl | 64 +++++++ .../com/sun/star/form/component/PatternField.idl | 63 +++++++ offapi/com/sun/star/form/component/RadioButton.idl | 95 ++++++++++ .../sun/star/form/component/RichTextControl.idl | 74 ++++++++ offapi/com/sun/star/form/component/ScrollBar.idl | 60 +++++++ offapi/com/sun/star/form/component/SpinButton.idl | 60 +++++++ .../com/sun/star/form/component/SubmitButton.idl | 55 ++++++ offapi/com/sun/star/form/component/TextField.idl | 70 ++++++++ offapi/com/sun/star/form/component/TimeField.idl | 65 +++++++ 38 files changed, 2854 insertions(+) create mode 100644 offapi/com/sun/star/form/component/CheckBox.idl create mode 100644 offapi/com/sun/star/form/component/ComboBox.idl create mode 100644 offapi/com/sun/star/form/component/CommandButton.idl create mode 100644 offapi/com/sun/star/form/component/CurrencyField.idl create mode 100644 offapi/com/sun/star/form/component/DataForm.idl create mode 100644 offapi/com/sun/star/form/component/DatabaseCheckBox.idl create mode 100644 offapi/com/sun/star/form/component/DatabaseComboBox.idl create mode 100644 offapi/com/sun/star/form/component/DatabaseCurrencyField.idl create mode 100644 offapi/com/sun/star/form/component/DatabaseDateField.idl create mode 100644 offapi/com/sun/star/form/component/DatabaseFormattedField.idl create mode 100644 offapi/com/sun/star/form/component/DatabaseImageControl.idl create mode 100644 offapi/com/sun/star/form/component/DatabaseListBox.idl create mode 100644 offapi/com/sun/star/form/component/DatabaseNumericField.idl create mode 100644 offapi/com/sun/star/form/component/DatabasePatternField.idl create mode 100644 offapi/com/sun/star/form/component/DatabaseRadioButton.idl create mode 100644 offapi/com/sun/star/form/component/DatabaseTextField.idl create mode 100644 offapi/com/sun/star/form/component/DatabaseTimeField.idl create mode 100644 offapi/com/sun/star/form/component/DateField.idl create mode 100644 offapi/com/sun/star/form/component/FileControl.idl create mode 100644 offapi/com/sun/star/form/component/FixedText.idl create mode 100644 offapi/com/sun/star/form/component/Form.idl create mode 100644 offapi/com/sun/star/form/component/FormattedField.idl create mode 100644 offapi/com/sun/star/form/component/GridControl.idl create mode 100644 offapi/com/sun/star/form/component/GroupBox.idl create mode 100644 offapi/com/sun/star/form/component/HTMLForm.idl create mode 100644 offapi/com/sun/star/form/component/HiddenControl.idl create mode 100644 offapi/com/sun/star/form/component/ImageButton.idl create mode 100644 offapi/com/sun/star/form/component/ListBox.idl create mode 100644 offapi/com/sun/star/form/component/NavigationToolBar.idl create mode 100644 offapi/com/sun/star/form/component/NumericField.idl create mode 100644 offapi/com/sun/star/form/component/PatternField.idl create mode 100644 offapi/com/sun/star/form/component/RadioButton.idl create mode 100644 offapi/com/sun/star/form/component/RichTextControl.idl create mode 100644 offapi/com/sun/star/form/component/ScrollBar.idl create mode 100644 offapi/com/sun/star/form/component/SpinButton.idl create mode 100644 offapi/com/sun/star/form/component/SubmitButton.idl create mode 100644 offapi/com/sun/star/form/component/TextField.idl create mode 100644 offapi/com/sun/star/form/component/TimeField.idl (limited to 'offapi/com/sun/star/form/component') diff --git a/offapi/com/sun/star/form/component/CheckBox.idl b/offapi/com/sun/star/form/component/CheckBox.idl new file mode 100644 index 000000000..b793bc4f0 --- /dev/null +++ b/offapi/com/sun/star/form/component/CheckBox.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_form_component_CheckBox_idl__ +#define __com_sun_star_form_component_CheckBox_idl__ + +#include +#include +#include + + + + module com { module sun { module star { module form { module component { + + +/** specifies the model of a check box control + +

The model supports the properties required for HTML, thus you can build up + HTMLForms with it

+ */ +published service CheckBox +{ + service com::sun::star::awt::UnoControlCheckBoxModel; + + service com::sun::star::form::FormControlModel; + + /** can be used to reset the control to its default state. + + @see CheckBox::DefaultState + */ + interface com::sun::star::form::XReset; + + + /** contains a default value for the control. + +

This value is used when the control is initially displayed, and for resetting it.

+ + @see com::sun::star::awt::UnoControlCheckBoxModel::State + @see com::sun::star::form::XReset + */ + [property] short DefaultState; + + + /** contains a reference value which is used for submission in a HTML + form + +

When submitting a HTMLForm which contains a check box, + which is checked, the RefValue is used for submission. + */ + [property] string RefValue; +}; + + +}; }; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/form/component/ComboBox.idl b/offapi/com/sun/star/form/component/ComboBox.idl new file mode 100644 index 000000000..33c4e5e9d --- /dev/null +++ b/offapi/com/sun/star/form/component/ComboBox.idl @@ -0,0 +1,63 @@ +/* -*- 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_form_component_ComboBox_idl__ +#define __com_sun_star_form_component_ComboBox_idl__ + +#include + +#include + +#include + + + + module com { module sun { module star { module form { module component { + + +/** specifies a component which allows the input of text or selection + of text from a list of text values. + */ +published service ComboBox +{ + service com::sun::star::awt::UnoControlComboBoxModel; + + service com::sun::star::form::FormControlModel; + + /** can be used to reset the control to its default text. + + @see ComboBox::DefaultText + */ + interface com::sun::star::form::XReset; + + /** contains a default value for the control. + +

This value is used when the control is initially displayed, and for resetting it.

+ + @see com::sun::star::awt::UnoControlComboBoxModel::Text + @see com::sun::star::form::XReset + */ + [property] string DefaultText; +}; + + +}; }; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/form/component/CommandButton.idl b/offapi/com/sun/star/form/component/CommandButton.idl new file mode 100644 index 000000000..451326ce6 --- /dev/null +++ b/offapi/com/sun/star/form/component/CommandButton.idl @@ -0,0 +1,106 @@ +/* -*- 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_form_component_CommandButton_idl__ +#define __com_sun_star_form_component_CommandButton_idl__ + +#include +#include +#include +#include +#include +#include + + + + module com { module sun { module star { module form { module component { + + +/** specifies the control model for a clickable button which is part of a form + component hierarchy. + + @see ImageButton + */ +published service CommandButton +{ + service com::sun::star::awt::UnoControlButtonModel; + + service com::sun::star::form::FormControlModel; + + /** supplies the image producer when the button is to display an image. + +

If the com::sun::star::awt::UnoControlButtonModel::ImageURL points to the location of an + image to be displayed on the button, this interface can be used to retrieve an image + producer, which itself will supply the image.

+ +

Usually, a control belonging to the model will use this interface to obtain the + image to be painted

+ */ + interface com::sun::star::form::XImageProducerSupplier; + + + /** describes the action to be executed by the button when pressed. + */ + [property] com::sun::star::form::FormButtonType ButtonType; + + /** describes the frame, where to open the document specified by the TargetURL. + +

This property is evaluated if the button is of type URL.

+ +

As always, there is a number of target names which have a special meaning, and force + a special com::sun::star::frame::Frame to be used.

+ */ + [property] string TargetFrame; + + /** specifies the URL, which should be opened if the button was clicked. + +

This property is evaluated if the button is of type URL.

+ + @see com::sun::star::form::FormButtonType + */ + [property] string TargetURL; + + /** specifies the default toggle state for the button, used when it is reset. + +

This property is meaningful only when com::sun::star::awt::UnoControlButtonModel::Toggle + is `TRUE`. In this case, the DefaultState controls to which State the button will + be reset.

+ +

For a given implementation of the interface, if this (optional) property is present, then also the optional + interface com::sun::star::form::XReset must be present.

+ */ + [optional, property] boolean DefaultState; + + /** allows resetting the button + +

This property is meaningful only when com::sun::star::awt::UnoControlButtonModel::Toggle + is `TRUE`. In this case, the DefaultState controls to which State the button will + be reset, when com::sun::star::form::XReset::reset() is invoked.

+ +

For a given implementation of the interface, if this (optional) interface is present, then also the optional + property #DefaultState must be present.

+ */ + [optional] interface ::com::sun::star::form::XReset; +}; + + +}; }; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/form/component/CurrencyField.idl b/offapi/com/sun/star/form/component/CurrencyField.idl new file mode 100644 index 000000000..a5c35ae09 --- /dev/null +++ b/offapi/com/sun/star/form/component/CurrencyField.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_form_component_CurrencyField_idl__ +#define __com_sun_star_form_component_CurrencyField_idl__ + +#include + +#include + +#include + + + + module com { module sun { module star { module form { module component { + + +/** This service specifies the ControlModel for an edit field which + contains a currency value. + */ +published service CurrencyField +{ + service com::sun::star::awt::UnoControlCurrencyFieldModel; + + service com::sun::star::form::FormControlModel; + + /** can be used to reset the control to its default state. + + @see CurrencyField::DefaultValue + */ + interface com::sun::star::form::XReset; + + /** contains a default value for the control. + + @see com::sun::star::awt::UnoControlCurrencyFieldModel::Value + @see com::sun::star::form::XReset + */ + [property] double DefaultValue; + +}; + + +}; }; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/form/component/DataForm.idl b/offapi/com/sun/star/form/component/DataForm.idl new file mode 100644 index 000000000..23ad3f15b --- /dev/null +++ b/offapi/com/sun/star/form/component/DataForm.idl @@ -0,0 +1,196 @@ +/* -*- 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_form_component_DataForm_idl__ +#define __com_sun_star_form_component_DataForm_idl__ + +#include +#include +#include +#include +#include +#include +#include + + +module com { module sun { module star { module form { + + published interface XReset; + published interface XDatabaseParameterBroadcaster; + +module component { +/** This service specifies a form which is connected to a database and + displays the results of SQL queries. It provides the possibility of + adding new data records, modifying existing ones, or deleting them. + +

A database form is a special kind of enhanced database row set + which provides all information for displaying the data and has more + possibilities for configuring the data manipulation.

+ +*/ +published service DataForm +{ + service com::sun::star::sdb::RowSet; + service com::sun::star::form::component::Form; + + /** is used to reset controls belonging to the form, and to reset database fields to which the + controls are bound + +

A DataForm is reset either on explicit request, or after it is moved + to the insertion row.

+ +

The insertion row is a virtual row which is used to insert new records. It is reached + by calling com::sun::star::sdbc::XResultSetUpdate::moveToInsertRow(). + The com::sun::star::sdb::RowSet service specifies exactly which notifications + happen in which order when calling com::sun::star::sdbc::XResultSetUpdate::moveToInsertRow(), + and a DataForm implementation extends this with the following contract: +

  • After all notifications as defined in the com::sun::star::sdb::RowSet + service have been sent, the DataForm resets itself, if all + com::sun::star::form::XResetListeners approve this.
  • +
  • After the reset happened, the com::sun::star::sdb::RowSet::IsModified + property is reset to `FALSE`. This property might have been switched to `TRUE` during listener + notifications, since listeners are allowed to change field values. Also, the + com::sun::star::form::XReset::reset() implementations of bound control + models might have modified the fields they're bound to (by filling them with default values).
  • +
  • The reset listeners are notified of the completed reset operation.
  • +

+ */ + interface com::sun::star::form::XReset; + + /** used to load/unload the form +

Loading a form is basically the same as executing the underlying row set. In fact, all the + functionality of this interface could be simulated by using setting some properties manually, + com::sun::star::sdbc::XRowSet::execute(), moving the row set cursor and so on.

+ +

One main difference between XLoadable::load() and com::sun::star::sdbc::XRowSet::execute() + is that if you use the former, the row set is positioned on the first record, while in the latter case + it is position before the it.

+ */ + interface com::sun::star::form::XLoadable; + + /** can be used to allow an interaction handler to supply missing data during a load process. + +

If data is needed during loading a form, then this is usually obtained via broadcaster-listener + mechanisms. An example for this (and currently the only one) are parameter values.

+

However, if you use this method, you can pass an interaction handler which should supply these + additional data.

+ + @see com::sun::star::sdb::InteractionHandler + */ + interface com::sun::star::sdb::XCompletedExecution; + + /** can be used for filling parameters. + +

You can add your component as + com::sun::star::form::XDatabaseParameterListener + to a form to get notified whenever the form needs parameter values to be filled in
+ In a first approach, the form tries to fill any parameters from its master-detail relation + (if any). All values which can't be filled are then passed to all listeners, which can + fill them by their own choice.

+ +

This is slightly changed if the form is loaded using the + com::sun::star::sdb::XCompletedExecution::connectWithCompletion() method. In this case, the parameters + are obtained from the interaction handler, not from the listeners

+ + @see XCompletedExecution + @see MasterFields + @see DetailFields + */ + interface com::sun::star::form::XDatabaseParameterBroadcaster; + + /** is used for subforms and contains the names of columns of the parent form. + +

These columns are typically the foreign key fields of the parent form. + The values of these columns are used to identify the data for the subform. + Each time the parent form changes its current row, the subform requeries + it's data based on the values of the master fields.

+ +

If the form is no sub form (e.g. its parent is not a form itself), this + property is not evaluated.

+ */ + [property] sequence MasterFields; + + /** is used for subforms and contains the names of the columns of the subform + which are related to the master fields of the parent form. + +

Entries in this sequence can either denote column names in the sub form, + or parameter names.
+ For instance, you could base the form on the SQL statement + SELECT * FROM invoices WHERE cust_ref = :cid, and add cid + to the DetailFields property. In this case, the parameter will be filled from + the corresponding master field.
+ Alternatively, you could simply base your form on the table invoices, + and add the column name cust_ref to the DetailFields. In this case, + and implicit filter clause WHERE cust_ref = :<new_param_name> will + be created, and the artificial parameter will be filled from the corresponding + master field.
+ 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. +

+ +

The columns specified herein typically represent a part of the primary key + fields or their aliases of the detail form.

+ +

If the form is no sub form (e.g. its parent is not a form itself), this + property is not evaluated.

+ */ + [property] sequence DetailFields; + + /** returns the kind of tabulator controlling. + */ + [property] com::sun::star::form::TabulatorCycle Cycle; + + /** determines how a navigation bar for this form should act. + */ + [property] com::sun::star::form::NavigationBarMode NavigationBarMode; + + /** determines if insertions into the form's row set are allowed. + +

Note that this is a recommendation for user interface components displaying the + form. Form implementations may decide to allow for insertions done via the API, even + if the property is set to `FALSE`, but the user interface should respect the property + value.

+ */ + [property] boolean AllowInserts; + + /** determines if modifications of the current record of the form are allowed. + +

Note that this is a recommendation for user interface components displaying the + form. Form implementations may decide to allow for updates done via the API, even + if the property is set to `FALSE`, but the user interface should respect the property + value.

+ */ + [property] boolean AllowUpdates; + + /** determines if deletions of records of the form are allowed. + +

Note that this is a recommendation for user interface components displaying the + form. Form implementations may decide to allow for deletions done via the API, even + if the property is set to `FALSE`, but the user interface should respect the property + value.

+ */ + [property] boolean AllowDeletes; +}; + + +}; }; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/form/component/DatabaseCheckBox.idl b/offapi/com/sun/star/form/component/DatabaseCheckBox.idl new file mode 100644 index 000000000..cdf1e2347 --- /dev/null +++ b/offapi/com/sun/star/form/component/DatabaseCheckBox.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_form_component_DatabaseCheckBox_idl__ +#define __com_sun_star_form_component_DatabaseCheckBox_idl__ + +#include + +#include + + + + module com { module sun { module star { module form { module component { + + +/** This service specifies a check box which is data-aware, and can be bound to a database field. + +

Mostly, you will create data-aware checkboxes as tristate checkboxes, because this + is a requirement to correctly handle `NULL` values in databases.

+ + @see ::com::sun::star::awt::UnoControlCheckBoxModel::TriState + */ +published service DatabaseCheckBox +{ + service com::sun::star::form::component::CheckBox; + + service com::sun::star::form::DataAwareControlModel; + +}; + + +}; }; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/form/component/DatabaseComboBox.idl b/offapi/com/sun/star/form/component/DatabaseComboBox.idl new file mode 100644 index 000000000..64711a452 --- /dev/null +++ b/offapi/com/sun/star/form/component/DatabaseComboBox.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_form_component_DatabaseComboBox_idl__ +#define __com_sun_star_form_component_DatabaseComboBox_idl__ + +#include + +#include + +#include + + + + module com { module sun { module star { module form { module component { + + +/** This service specifies a combo box which is data-aware, and can be bound to a database field. + +

Like most other data aware controls, such a combo box will display the actual content + of the field it is bound to. In addition, as a combo box contains a list where the user + can choose items to fill into the control, this list can be filled with different data from + a database, too.

+ */ +published service DatabaseComboBox +{ + service com::sun::star::form::component::ComboBox; + + service com::sun::star::form::DataAwareControlModel; + + + /** determines if an empty text should be treated as a `NULL` value. + +

When the user enters text into a combo box, and after this, the control + content is to be committed into the database field the control is bound to, + a decision must be made how to deal with empty strings.
+ This is controlled by #ConvertEmptyToNull.

+ +

If the property is set to `TRUE`, and an empty text is to be committed, this is + converted into `NULL`, else it is written as empty string.

+ */ + [property] boolean ConvertEmptyToNull; + + /** describes the source of items in the combo box's list. + +

The concrete meaning of this property depends on the value of #ListSourceType

+ */ + [property] string ListSource; + + /** specifies the kind of list source. + +

Note: A value of com::sun::star::form::ListSourceType::VALUELIST + is not valid for a combo box. It won't be rejected when setting it, but controls will usually ignore it + and leave the list empty.

+ */ + [property] com::sun::star::form::ListSourceType ListSourceType; +}; + + +}; }; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/form/component/DatabaseCurrencyField.idl b/offapi/com/sun/star/form/component/DatabaseCurrencyField.idl new file mode 100644 index 000000000..c6afae618 --- /dev/null +++ b/offapi/com/sun/star/form/component/DatabaseCurrencyField.idl @@ -0,0 +1,46 @@ +/* -*- 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_form_component_DatabaseCurrencyField_idl__ +#define __com_sun_star_form_component_DatabaseCurrencyField_idl__ + +#include + +#include + + + + module com { module sun { module star { module form { module component { + + +/** This service specifies a currency field which is data-aware, and can be bound to a database field. + */ +published service DatabaseCurrencyField +{ + service com::sun::star::form::component::CurrencyField; + + service com::sun::star::form::DataAwareControlModel; + +}; + + +}; }; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/form/component/DatabaseDateField.idl b/offapi/com/sun/star/form/component/DatabaseDateField.idl new file mode 100644 index 000000000..c09e8a9fd --- /dev/null +++ b/offapi/com/sun/star/form/component/DatabaseDateField.idl @@ -0,0 +1,46 @@ +/* -*- 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_form_component_DatabaseDateField_idl__ +#define __com_sun_star_form_component_DatabaseDateField_idl__ + +#include + +#include + + + + module com { module sun { module star { module form { module component { + + +/** This service specifies a date field which is data-aware, and can be bound to a database field. + */ +published service DatabaseDateField +{ + service com::sun::star::form::component::DateField; + + service com::sun::star::form::DataAwareControlModel; + +}; + + +}; }; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/form/component/DatabaseFormattedField.idl b/offapi/com/sun/star/form/component/DatabaseFormattedField.idl new file mode 100644 index 000000000..42b6d5be7 --- /dev/null +++ b/offapi/com/sun/star/form/component/DatabaseFormattedField.idl @@ -0,0 +1,59 @@ +/* -*- 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_form_component_DatabaseFormattedField_idl__ +#define __com_sun_star_form_component_DatabaseFormattedField_idl__ + +#include + +#include + + + + module com { module sun { module star { module form { module component { + + +/** This service specifies a formatted field model which is data-aware, and can be bound to a database field. + */ +published service DatabaseFormattedField +{ + service com::sun::star::form::component::FormattedField; + + service com::sun::star::form::DataAwareControlModel; + + + /** determines if an empty text should be treated as a `NULL` value. + +

When the user enters text into a formatted field control, and after this, the control + content is to be committed into the database field the control is bound to, + a decision must be made how to deal with empty strings.
+ This is controlled by #ConvertEmptyToNull.

+ +

If the property is set to `TRUE`, and an empty text is to be committed, this is + converted into `NULL`, else it is written as empty string.

+ */ + [property] boolean ConvertEmptyToNull; + +}; + + +}; }; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/form/component/DatabaseImageControl.idl b/offapi/com/sun/star/form/component/DatabaseImageControl.idl new file mode 100644 index 000000000..11c90358b --- /dev/null +++ b/offapi/com/sun/star/form/component/DatabaseImageControl.idl @@ -0,0 +1,106 @@ +/* -*- 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_form_component_DatabaseImageControl_idl__ +#define __com_sun_star_form_component_DatabaseImageControl_idl__ + +#include + +#include + +#include + + + + module com { module sun { module star { module form { module component { + + +/** specifies the model of a control used for displaying images stored in a database. + +

As every com::sun::star::form::DataAwareControlModel, an image control + can be bound to a database field. This means that for instance with every record change, the content + of the database field is taken, interpreted as image, and displayed in the control.
+ Unlike other more text-based controls, it does not interpret the content of the field as text or double, + but as binary stream (see com::sun::star::sdb::XColumn::getBinaryStream()).

+ +

Usually, an image control model can be bound to binary columns only, namely + com::sun::star::sdbc::DataType::BINARY, + com::sun::star::sdbc::DataType::VARBINARY, + com::sun::star::sdbc::DataType::LONGVARBINARY, + com::sun::star::sdbc::DataType::OTHER, + com::sun::star::sdbc::DataType::LONGVARCHAR

+ +

+ +

Note that besides taking the image to be displayed from the bound field, there is another option. The + com::sun::star::awt::UnoControlImageControlModel::ImageURL property specifies + the URL of an image to be displayed. If this property is changed from outside, the respective file + is loaded and set as image source.

+ +

In a usual data form, the scenario will be as follows: +

  • There is a DatabaseImageControl as part of the document model, which acts as + control model for a com::sun::star::form::control::ImageControl.
  • + +
  • The control is a com::sun::star::awt::XImageConsumer for the + com::sun::star::awt::XImageProducer supplied by the model.
  • + +
  • Whenever the form's cursor is positioned on a new record, the column the control + model is bound to is examined for a binary data stream. This stream is set as source + at the image producer, which notifies it's consumers, which leads to the control + displaying the image.
  • + +
  • When the user by some interaction tells the control to contain a new image, this is + exchanged by URL. For example, implementations of the control service may allow the user + to browse for image. After this, the URL of the image is set as + com::sun::star::awt::UnoControlImageControlModel::ImageURL + property at the model.
    + Now the control loads the image determined by the property value, and starts producing + a new data stream, which is displayed by the control (which is a consumer for this stream).
    + From now on, the control and thus the database record counts as modified. If the cursor of the + form is moved further, the modified record is saved, means the content of the image pointed to + by com::sun::star::awt::UnoControlImageControlModel::ImageURL + is saved into the column.
  • +
+

+ */ +published service DatabaseImageControl +{ + service com::sun::star::awt::UnoControlImageControlModel; + + service com::sun::star::form::DataAwareControlModel; + + /** supplies the caller with a com::sun::star::awt::XImageProducer. + +

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.

+ */ + interface com::sun::star::form::XImageProducerSupplier; + + + /** indicates if it is possible to change the image being displayed. + */ + [property] boolean ReadOnly; + +}; + + +}; }; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/form/component/DatabaseListBox.idl b/offapi/com/sun/star/form/component/DatabaseListBox.idl new file mode 100644 index 000000000..0b8f95210 --- /dev/null +++ b/offapi/com/sun/star/form/component/DatabaseListBox.idl @@ -0,0 +1,157 @@ +/* -*- 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_form_component_DatabaseListBox_idl__ +#define __com_sun_star_form_component_DatabaseListBox_idl__ + +#include + +#include + +#include + + + + module com { module sun { module star { module form { module component { + + +/** This service specifies a data-aware list box control model. + +

The base service for list boxes (ListBox) offers only + one possibility to specify the list entries: + The display strings in the + com::sun::star::awt::UnoControlListBoxModel::StringItemList + property and the corresponding values in the ListBox::ListSource + property.

+ +

This service here extends this mimic. It allows to fill the list from a data source. + This means that a second result set is opened, which works on the same connection as the + form which the list box belongs to, but can be based on an arbitrary table or SQL statement.

+ +

For instance, you may have a form which is bound to a table invoice, and you use it + to enter invoices for your customers. Probably, you will have a second table (say customer), + which (among other data) contains a unique key for identifying customers. In your invoice table, you will + have a foreign key referring to these customers.
+ Now, besides the result set the form is based on (all your invoices), the list box can be instructed + to open a second result set, this time for the customer table, and fill its list with entries + from this result set.
+ Additionally, it allows to model the relation between the two tables: When the user selects a customer from + the list, this customer has the unique id we just talked about (which is not necessarily visible to the + user in any way). The list box then automatically transfers this id into the foreign key column of + invoice, thus allowing the user to transparently work with human-readable strings instead of + pure numbers.
+ Let's call this result set the list is filled from the list result set here ...

+ +

The display strings are always taken from the first column of that result set, + and the corresponding value as per the BoundColumn property.

+ */ +published service DatabaseListBox +{ + service com::sun::star::form::component::ListBox; + + service com::sun::star::form::DataAwareControlModel; + + + /** specifies which column of the list result set should be used for data exchange. + +

When you make a selection from a list box, the "BoundColumn" + property reflects which column value of a result set should + be used as the value of the component. If the control is bound + to a database field, the column value is stored in the + database field identified by the property + com::sun::star::form::DataAwareControlModel::DataField. + +

+
-1
+
The index (starting at 0) of the selected list box entry + is stored in the current database field.
+ +
0 or greater
+
The column value of the result set at the position + (0-indexed) is stored in the current database field. + In particular, for value 0, the selected (displayed) + list box string is stored.
+

+ +

The bound column property is only used if a list source is defined + and the list source matches with the types + com::sun::star::form::ListSourceType::TABLE, + com::sun::star::form::ListSourceType::QUERY, + com::sun::star::form::ListSourceType::SQL or + com::sun::star::form::ListSourceType::SQLPASSTHROUGH. + Otherwise the property is ignored, as there is no result set from which to + get the column values.

+ */ + [property] short BoundColumn; + + + /** describes the kind of list source used. + +

Depending on the value of this property, the way the value of ListBox::ListSource + is evaluated varies. +

+
com::sun::star::form::ListSourceType::VALUELIST
+
The elements in the string sequence in ListBox::ListSource + build up the entry list.
+ +
com::sun::star::form::ListSourceType::TABLE
+
The first element of the string sequence in ListBox::ListSource + determines the table which the list result set should be based on.
+ +
com::sun::star::form::ListSourceType::QUERY
+
The first element of the string sequence in ListBox::ListSource + determines the query which the list result set should be based on.
+ For retrieving the query, the connection which the data form is working with + (com::sun::star::sdb::RowSet::ActiveConnection) is queried for + the com::sun::star::sdb::XQueriesSupplier interface.
+ +
com::sun::star::form::ListSourceType::SQL
+
The first element of the string sequence in ListBox::ListSource + contains the SQL statement which the list result set should be based on.

+ +
com::sun::star::form::ListSourceType::SQLPASSTHROUGH
+
The first element of the string sequence in ListBox::ListSource + contains the SQL statement which the list result set should be based on.
+ The statement is not analyzed by the parser. This means that you can use database specific + SQL features here, but, on the other hand, lose features like parameter value substitution.
+ +
com::sun::star::form::ListSourceType::TABLEFIELDS
+
The first element of the string sequence in ListBox::ListSource + determines the table whose column names should fill the list.
+
+

+ + */ + [property] com::sun::star::form::ListSourceType ListSourceType; + + /** The selected values. + */ + [property, transient, optional] sequence< any > SelectedValues; + + /** The selected value, if there is at most one. + */ + [property, transient, optional] any SelectedValue; + +}; + + +}; }; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/form/component/DatabaseNumericField.idl b/offapi/com/sun/star/form/component/DatabaseNumericField.idl new file mode 100644 index 000000000..244f31c1a --- /dev/null +++ b/offapi/com/sun/star/form/component/DatabaseNumericField.idl @@ -0,0 +1,46 @@ +/* -*- 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_form_component_DatabaseNumericField_idl__ +#define __com_sun_star_form_component_DatabaseNumericField_idl__ + +#include + +#include + + + + module com { module sun { module star { module form { module component { + + +/** This service specifies a numeric field which is data-aware, and can be bound to a database field. + */ +published service DatabaseNumericField +{ + service com::sun::star::form::component::NumericField; + + service com::sun::star::form::DataAwareControlModel; + +}; + + +}; }; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/form/component/DatabasePatternField.idl b/offapi/com/sun/star/form/component/DatabasePatternField.idl new file mode 100644 index 000000000..d0ce8a475 --- /dev/null +++ b/offapi/com/sun/star/form/component/DatabasePatternField.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_form_component_DatabasePatternField_idl__ +#define __com_sun_star_form_component_DatabasePatternField_idl__ + +#include + +#include + + + + module com { module sun { module star { module form { module component { + + +/** This service specifies a data-aware control model for entering text which matches a specific + pattern. + */ +published service DatabasePatternField +{ + service com::sun::star::form::component::PatternField; + + service com::sun::star::form::DataAwareControlModel; + + + /** determines if an empty text should be treated as a `NULL` value. + +

When the user enters text into a pattern field, and after this, the control + content is to be committed into the database field the control is bound to, + a decision must be made how to deal with empty strings.
+ This is controlled by this property.

+ +

If the property is set to `TRUE`, and an empty text is to be committed, this is + converted into `NULL`, else it is written as empty string.

+ */ + [property] boolean ConvertEmptyToNull; + +}; + + +}; }; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/form/component/DatabaseRadioButton.idl b/offapi/com/sun/star/form/component/DatabaseRadioButton.idl new file mode 100644 index 000000000..0455dc02e --- /dev/null +++ b/offapi/com/sun/star/form/component/DatabaseRadioButton.idl @@ -0,0 +1,46 @@ +/* -*- 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_form_component_DatabaseRadioButton_idl__ +#define __com_sun_star_form_component_DatabaseRadioButton_idl__ + +#include + +#include + + + + module com { module sun { module star { module form { module component { + + +/** This service specifies a radio button which is data-aware, and can be bound to a database field. + */ +published service DatabaseRadioButton +{ + service com::sun::star::form::component::RadioButton; + + service com::sun::star::form::DataAwareControlModel; + +}; + + +}; }; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/form/component/DatabaseTextField.idl b/offapi/com/sun/star/form/component/DatabaseTextField.idl new file mode 100644 index 000000000..573407fde --- /dev/null +++ b/offapi/com/sun/star/form/component/DatabaseTextField.idl @@ -0,0 +1,59 @@ +/* -*- 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_form_component_DatabaseTextField_idl__ +#define __com_sun_star_form_component_DatabaseTextField_idl__ + +#include + +#include + + + + module com { module sun { module star { module form { module component { + + +/** This service specifies a text field which is data-aware, and can be bound to a database field. + */ +published service DatabaseTextField +{ + service com::sun::star::form::component::TextField; + + service com::sun::star::form::DataAwareControlModel; + + + /** determines if an empty text should be treated as a `NULL` value. + +

When the user enters text into a text field, and after this, the control + content is to be committed into the database field the control is bound to, + a decision must be made how to deal with empty strings.
+ This is controlled by this property.

+ +

If the property is set to `TRUE`, and an empty text is to be committed, this is + converted into `NULL`, else it is written as empty string.

+ */ + [property] boolean ConvertEmptyToNull; + +}; + + +}; }; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/form/component/DatabaseTimeField.idl b/offapi/com/sun/star/form/component/DatabaseTimeField.idl new file mode 100644 index 000000000..08d305e12 --- /dev/null +++ b/offapi/com/sun/star/form/component/DatabaseTimeField.idl @@ -0,0 +1,46 @@ +/* -*- 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_form_component_DatabaseTimeField_idl__ +#define __com_sun_star_form_component_DatabaseTimeField_idl__ + +#include + +#include + + + + module com { module sun { module star { module form { module component { + + +/** This service specifies a data-aware field for inputting a time value. + */ +published service DatabaseTimeField +{ + service com::sun::star::form::component::TimeField; + + service com::sun::star::form::DataAwareControlModel; + +}; + + +}; }; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/form/component/DateField.idl b/offapi/com/sun/star/form/component/DateField.idl new file mode 100644 index 000000000..099a7cb40 --- /dev/null +++ b/offapi/com/sun/star/form/component/DateField.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_form_component_DateField_idl__ +#define __com_sun_star_form_component_DateField_idl__ + +#include + +#include + +#include + + + + module com { module sun { module star { module form { module component { + + +/** specifies the model of a date field control, which is an edit field used to enter a date. +*/ +published service DateField +{ + service com::sun::star::awt::UnoControlDateFieldModel; + + service com::sun::star::form::FormControlModel; + + /** resets the control. + +

If you do not set a value for the #DefaultDate, then resetting the control + will result in setting to the current system date. This is for HTML compatibility.

+ */ + interface com::sun::star::form::XReset; + + + /** contains a default value for the control. + +

This value is used when the control is initially displayed, and for resetting it.

+ + @see com::sun::star::awt::UnoControlDateFieldModel::Date + @see com::sun::star::form::XReset + */ + [property] long DefaultDate; + +}; + + +}; }; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/form/component/FileControl.idl b/offapi/com/sun/star/form/component/FileControl.idl new file mode 100644 index 000000000..0e5c977f8 --- /dev/null +++ b/offapi/com/sun/star/form/component/FileControl.idl @@ -0,0 +1,63 @@ +/* -*- 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_form_component_FileControl_idl__ +#define __com_sun_star_form_component_FileControl_idl__ + +#include + +#include + +#include + + + module com { module sun { module star { module form { module component { + + +/** This service specifies the control model of an edit field for a + file name. + */ +published service FileControl +{ + service com::sun::star::awt::UnoControlFileControlModel; + + service com::sun::star::form::FormControlModel; + + /** can be used to reset the control to its default text. + + @see FileControl::DefaultText + */ + interface com::sun::star::form::XReset; + + /** contains a default value for the control. + +

This value is used when the control is initially displayed, and for resetting it.

+ + @see com::sun::star::awt::UnoControlFileControlModel::Text + @see com::sun::star::form::XReset + */ + [property] string DefaultText; + +}; + + +}; }; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/form/component/FixedText.idl b/offapi/com/sun/star/form/component/FixedText.idl new file mode 100644 index 000000000..5cdc4e4a5 --- /dev/null +++ b/offapi/com/sun/star/form/component/FixedText.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_form_component_FixedText_idl__ +#define __com_sun_star_form_component_FixedText_idl__ + +#include + +#include + + + + module com { module sun { module star { module form { module component { + + +/** This service specifies the control model for a text which can be + displayed, but not edited by the user. + +

These kind of controls is usually used to label other controls.

+ + @see com::sun::star::form::DataAwareControlModel::LabelControl + */ +published service FixedText +{ + service com::sun::star::awt::UnoControlFixedTextModel; + + service com::sun::star::form::FormControlModel; + +}; + + +}; }; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/form/component/Form.idl b/offapi/com/sun/star/form/component/Form.idl new file mode 100644 index 000000000..43ba74c36 --- /dev/null +++ b/offapi/com/sun/star/form/component/Form.idl @@ -0,0 +1,70 @@ +/* -*- 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_form_component_Form_idl__ +#define __com_sun_star_form_component_Form_idl__ + +#include +#include +#include +#include +#include + + + + module com { module sun { module star { module form { module component { + + +/** This service specifies a form which is a group of FormComponents. + +

A form fulfills several tasks, like storing the structure of its + form components, storing the information concerning tab ordering + and control grouping, and last but not least, it provides the + event environment for its contained elements.

+ +

A form acts on the one hand like a container of FormComponents + and on the other hand like a FormComponent. This generic + construction allows the definition of hierarchies of forms and their + dependent subforms.

+ + @see com::sun::star::form::FormControlModel + */ +published service Form +{ + service com::sun::star::form::FormComponent; + + service com::sun::star::form::FormComponents; + + /** identifies a component as form. + */ + interface com::sun::star::form::XForm; + + + /** This interface has to be implemented to supply the information for tab ordering and component grouping. + + @see com::sun::star::form::FormControlModel::TabIndex + */ + interface com::sun::star::awt::XTabControllerModel; +}; + + +}; }; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/form/component/FormattedField.idl b/offapi/com/sun/star/form/component/FormattedField.idl new file mode 100644 index 000000000..fd9817667 --- /dev/null +++ b/offapi/com/sun/star/form/component/FormattedField.idl @@ -0,0 +1,57 @@ +/* -*- 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_form_component_FormattedField_idl__ +#define __com_sun_star_form_component_FormattedField_idl__ + +#include + +#include + +#include + + + + module com { module sun { module star { module form { module component { + + +/** This service specifies the control model of an edit field for entering text which can be + (nearly) arbitrarily formatted. + + @see com::sun::star::util::XNumberFormatsSupplier + */ +published service FormattedField +{ + service com::sun::star::awt::UnoControlFormattedFieldModel; + + service com::sun::star::form::FormControlModel; + + /** can be used to reset the control to its default state. + + @see com::sun::star::awt::UnoControlFormattedFieldModel::EffectiveValue + @see com::sun::star::awt::UnoControlFormattedFieldModel::EffectiveDefault + */ + interface com::sun::star::form::XReset; +}; + + +}; }; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/form/component/GridControl.idl b/offapi/com/sun/star/form/component/GridControl.idl new file mode 100644 index 000000000..0a8db09f2 --- /dev/null +++ b/offapi/com/sun/star/form/component/GridControl.idl @@ -0,0 +1,168 @@ +/* -*- 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_form_component_GridControl_idl__ +#define __com_sun_star_form_component_GridControl_idl__ + +#include +#include + +#include + +#include +#include + +#include + +#include + +#include + +#include + +#include + +#include + +#include + + + + module com { module sun { module star { module form { module component { + + +/** specifies a model for a control which can display form data in a table-like way. + +

In opposite to other form controls, grid controls do not only + display the single current value of a column they are bound to. Moreover, they do + display not only the current row of the form, but all rows (at least potentially, limited + by the control size, of course).

+ +

The table rows in a grid control correspond to the rows in the DataForm + the control belongs to, and the columns correspond to single columns of the form's row set.

+ +

Columns of a grid control are modeled by own objects, too. They are very similar to usual + com::sun::star::form::DataAwareControlModels modeling other "single-value" controls, but they are not described + as own services. Instead, they need to be created using the com::sun::star::form::XGridColumnFactory interface.

+ */ +published service GridControl +{ + service com::sun::star::form::FormControlModel; + + /** provides basic functionality of a container of com::sun::star::form::FormComponents. + +

All the container-related methods of this service related to control models, + this is what are the container elements for a GridControl.

+ +

As the com::sun::star::form::FormComponents service also specifies + the com::sun::star::script::XEventAttacherManager service, grid control + models also provide a scripting environment for their columns.

+ */ + service com::sun::star::form::FormComponents; + + /** allows to create column models to be inserted into the control model. + +

Note that the object returned by the com::sun::star::form::XGridColumnFactory::createColumn() + method is not part of the grid control, yet. It needs to be inserted using any of the + container interfaces.

+ +

You always need to use this interface for creating columns for the grid control. + Column models not created this way will not be accepted when inserted later on.

+ */ + interface com::sun::star::form::XGridColumnFactory; + + /** gives access to the currently selection. + +

In a grid control, single columns can be selected (at most one at a time).
+ For various unfortunate reasons, this selection is an aspect of the model, not of the + control as you would expect.

+ +

This interface is deprecated, new implementations should not use it anymore, as it is to + be superseded by a solution which is bound to the control, not the model.

+ + @deprecated + */ + interface com::sun::star::view::XSelectionSupplier; + + /** resets the control. + +

The reset of the control is forwarded to all its elements, means to all the column models. + As grid columns are very much like data-aware stand-alone controls, you can find a description + of the reset functionality in com::sun::star::form::DataAwareControlModel::XReset. + */ + interface com::sun::star::form::XReset; + + + /** returns the border style of the control. + +

+        0: No border
+        1: 3D border
+        2: simple border
+        
+ */ + [property] short Border; + + + /** specifies the color of the border, if present + +

Not every border style (see #Border) may support coloring. + For instance, usually a border with 3D effect will ignore the BorderColor setting.

+ + @since OOo 2.0 + */ + [optional, property] long BorderColor; + + + /** determines whether the control is enabled or disabled. + */ + [property] boolean Enabled; + + + /** contains the font attributes of the text in the control. + */ + [property] com::sun::star::awt::FontDescriptor FontDescriptor; + + + /** specifies the height of a row of the grid. + +

If the value is set to `NULL`, the height is determined automatically according + to the current font used.

+ + @see GridControl::FontDescriptor + */ + [property] long RowHeight; + + + /** determines whether the control can be reached by the tabulator key. + */ + [property] boolean Tabstop; + + + /** specifies the text color (RGB) of the control. + */ + [property] com::sun::star::util::Color TextColor; + +}; + + +}; }; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/form/component/GroupBox.idl b/offapi/com/sun/star/form/component/GroupBox.idl new file mode 100644 index 000000000..ba23f276a --- /dev/null +++ b/offapi/com/sun/star/form/component/GroupBox.idl @@ -0,0 +1,47 @@ +/* -*- 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_form_component_GroupBox_idl__ +#define __com_sun_star_form_component_GroupBox_idl__ + +#include + +#include + + + + module com { module sun { module star { module form { module component { + + +/** This service specifies a model for a control which can be used to visually + group controls. + */ +published service GroupBox +{ + service com::sun::star::awt::UnoControlGroupBoxModel; + + service com::sun::star::form::FormControlModel; + +}; + + +}; }; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/form/component/HTMLForm.idl b/offapi/com/sun/star/form/component/HTMLForm.idl new file mode 100644 index 000000000..acb40e5df --- /dev/null +++ b/offapi/com/sun/star/form/component/HTMLForm.idl @@ -0,0 +1,84 @@ +/* -*- 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_form_component_HTMLForm_idl__ +#define __com_sun_star_form_component_HTMLForm_idl__ + +#include + +#include + +#include + +#include + +#include + + + + module com { module sun { module star { module form { module component { + + +/** This service specifies the special kind of Forms for HTML documents. + +

An HTMLForm fulfills the specification of forms in HTML. It supplies + the possibility of submitting or resetting the contents of a form. + For more information on HTML forms, please see the documentation of HTML.

+ */ +published service HTMLForm +{ + service com::sun::star::form::component::Form; + + /** resets the control. + */ + interface com::sun::star::form::XReset; + + /** allows to submit changes. + +

When a form is submitted, the data contained in the form is sent + to the target URL as a series of name/value pairs. The name portion + of each pair is the name of a form component as specified by its NAME + attribute. In most cases the value portion is the value displayed + by the element, for example, the text displayed in a text field.

+ */ + interface com::sun::star::form::XSubmit; + + /** describes the frame, where to open the document specified by the TargetURL. + */ + [property] string TargetFrame; + + + /** specifies the URL, which should be used for submission. + */ + [property] string TargetURL; + + /** specifies the kind of submission. + */ + [property] com::sun::star::form::FormSubmitMethod SubmitMethod; + + /** specifies the kind of encoding for submission. + */ + [property] com::sun::star::form::FormSubmitEncoding SubmitEncoding; +}; + + +}; }; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/form/component/HiddenControl.idl b/offapi/com/sun/star/form/component/HiddenControl.idl new file mode 100644 index 000000000..3994b54e4 --- /dev/null +++ b/offapi/com/sun/star/form/component/HiddenControl.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_form_component_HiddenControl_idl__ +#define __com_sun_star_form_component_HiddenControl_idl__ + +#include + + + + module com { module sun { module star { module form { module component { + + +/** This service specifies the model of a hidden control. + +

The only sense of a hidden control is to store data in the form which is + not visible to the user.

+ +

Usually, hidden controls are used in com::sun::star::form::component::HTMLForms, + where they contain data which is to be submitted.
+ Nevertheless, you can use them in your own forms for storing any data, for instance + to evaluate it in some scripting macro.

+ */ +published service HiddenControl +{ + service com::sun::star::form::FormComponent; + + /** specifies the value of the component. + */ + [property] string HiddenValue; + +}; + + +}; }; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/form/component/ImageButton.idl b/offapi/com/sun/star/form/component/ImageButton.idl new file mode 100644 index 000000000..932efe1ef --- /dev/null +++ b/offapi/com/sun/star/form/component/ImageButton.idl @@ -0,0 +1,94 @@ +/* -*- 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_form_component_ImageButton_idl__ +#define __com_sun_star_form_component_ImageButton_idl__ + +#include + +#include + +#include + +#include + +#include + + + + module com { module sun { module star { module form { module component { + + +/** This service specifies the control model for a clickable button which + is represented by an image. + +

The image to be displayed is determined by com::sun::star::awt::UnoControlImageControlModel::ImageURL + property specifies the URL of an image to be displayed.

+ + @see CommandButton +*/ +published service ImageButton +{ + service com::sun::star::awt::UnoControlImageControlModel; + + service com::sun::star::form::FormControlModel; + + + /** supplies the caller with a com::sun::star::awt::XImageProducer. + +

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.

+ +

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.
+ Usually, controls acting for an ImageButton model are consumers, and use the + data stream to display the image

+ */ + interface com::sun::star::form::XImageProducerSupplier; + + /** describes the action to be executed by the button when pressed. + */ + [property] com::sun::star::form::FormButtonType ButtonType; + + /** describes the frame, where to open the document specified by the TargetURL. + +

This property is evaluated if the button is of type URL.

+ +

As always, there is a number of target names which have a special meaning, and force + a special com::sun::star::frame::Frame to be used.

+ */ + [property] string TargetFrame; + + /** specifies the URL, which should be opened if the button was clicked. + +

This property is evaluated if the button is of type URL.

+ + @see com::sun::star::form::FormButtonType + */ + [property] string TargetURL; +}; + + +}; }; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/form/component/ListBox.idl b/offapi/com/sun/star/form/component/ListBox.idl new file mode 100644 index 000000000..48f754435 --- /dev/null +++ b/offapi/com/sun/star/form/component/ListBox.idl @@ -0,0 +1,70 @@ +/* -*- 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_form_component_ListBox_idl__ +#define __com_sun_star_form_component_ListBox_idl__ + +#include + +#include + +#include + + + + module com { module sun { module star { module form { module component { + + +/** specifies a model for a control which allows to choose in a list of alternative values. + */ +published service ListBox +{ + service com::sun::star::awt::UnoControlListBoxModel; + + service com::sun::star::form::FormControlModel; + + /** can be used to reset the control to its default state. + + @see ListBox::DefaultSelection + */ + interface com::sun::star::form::XReset; + + /** contains the indexes of entries of the listbox, which should selected + by default. + +

This selection is used initially or for a reset.

+ + @see com::sun::star::awt::UnoControlListBoxModel::SelectedItems + @see com::sun::star::form::XReset + */ + [property] sequence DefaultSelection; + + + /** contains the values associated to the strings to be displayed + (which are specified by com::sun::star::awt::UnoControlListBoxModel::StringItemList) + */ + [property] sequence ListSource; + +}; + + +}; }; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/form/component/NavigationToolBar.idl b/offapi/com/sun/star/form/component/NavigationToolBar.idl new file mode 100644 index 000000000..165f2f4db --- /dev/null +++ b/offapi/com/sun/star/form/component/NavigationToolBar.idl @@ -0,0 +1,124 @@ +/* -*- 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_form_component_NavigationToolBar_idl__ +#define __com_sun_star_form_component_NavigationToolBar_idl__ + +#include +#include + + + module com { module sun { module star { module form { module component { + + +/** This service specifies the model for control which provides controller + functionality for a DataForm, such as navigating or filtering + the form. + */ +service NavigationToolBar +{ + service com::sun::star::form::FormControlModel; + + /** denotes the border style of the control. + + Allowed values are +
  • 0: no border at all
  • +
  • 1: 3D border
  • +
  • 2: simple flat
  • +
+ */ + [property] short Border; + + /** determines whether the control is enabled or disabled. + */ + [property] boolean Enabled; + + /** contains the font attributes for the text in the control + */ + [property] com::sun::star::awt::FontDescriptor FontDescriptor; + + /** specifies the text color (as RGB value) of the control. + */ + [property] long TextColor; + + /** specifies the text line color (as RGB value) of the control. + +

This color is used if the #FontDescriptor defines + that the text in the control should be underlined or stroke out.

+ */ + [property] long TextLineColor; + + /** specifies the relief for the font described in #FontDescriptor + +

The value must be one of the com::sun::star::text::FontRelief + constants.

+ */ + [property] long FontRelief; + + /** specifies the emphasis mark for the font described in #FontDescriptor + +

The value must be one of the com::sun::star::text::FontEmphasis + constants.

+ */ + [property] long FontEmphasisMark; + + /** specifies the size of the icons in the control + +

At least the following values are to be supported: +

  • 0: small icons (16x16)
  • +
  • 1: medium size icons (26x26)
  • +
+ */ + [property] short IconSize; + + /** determines whether the control should provide functionality for positioning the + parent form + */ + [property] boolean ShowPosition; + + /** determines whether the control should provide functionality for navigating the + parent form + */ + [property] boolean ShowNavigation; + + /** determines whether the control should provide functionality for acting on the current record + of the parent form + */ + [property] boolean ShowRecordActions; + + /** determines whether the control should provide functionality for filtering and sorting the + parent form + */ + [property] boolean ShowFilterSort; + + /** specifies a repeat delay for the control + +

Some buttons of a NavigationToolBar may show repeating behavior, e.g. may be + repeatedly triggered when the user keeps the mouse pressed over such a button.
+ The delay between two such triggers (in milliseconds) is specified with this property. +

+ */ + [property] long RepeatDelay; +}; + + +}; }; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/form/component/NumericField.idl b/offapi/com/sun/star/form/component/NumericField.idl new file mode 100644 index 000000000..dac2ae6a6 --- /dev/null +++ b/offapi/com/sun/star/form/component/NumericField.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_form_component_NumericField_idl__ +#define __com_sun_star_form_component_NumericField_idl__ + +#include + +#include + +#include + + + + module com { module sun { module star { module form { module component { + + +/** specifies a component which allows the input of a numeric value. + */ +published service NumericField +{ + service com::sun::star::awt::UnoControlNumericFieldModel; + + service com::sun::star::form::FormControlModel; + + /** can be used to reset the control to its default value. + + @see NumericField::DefaultValue + */ + interface com::sun::star::form::XReset; + + + /** contains a default value for the control. + +

This value is used when the control is initially displayed, and for resetting it.

+ + @see com::sun::star::awt::UnoControlNumericFieldModel::Value + @see com::sun::star::form::XReset + */ + [property] double DefaultValue; + +}; + + +}; }; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/form/component/PatternField.idl b/offapi/com/sun/star/form/component/PatternField.idl new file mode 100644 index 000000000..b9083c552 --- /dev/null +++ b/offapi/com/sun/star/form/component/PatternField.idl @@ -0,0 +1,63 @@ +/* -*- 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_form_component_PatternField_idl__ +#define __com_sun_star_form_component_PatternField_idl__ + +#include + +#include + +#include + + + + module com { module sun { module star { module form { module component { + + +/** specifies a component which allows the input of text which matches a specific pattern. + */ +published service PatternField +{ + service com::sun::star::awt::UnoControlPatternFieldModel; + + service com::sun::star::form::FormControlModel; + + /** can be used to reset the control to its default text. + + @see PatternField::DefaultText + */ + interface com::sun::star::form::XReset; + + /** contains a default value for the control. + +

This value is used when the control is initially displayed, and for resetting it.

+ + @see com::sun::star::awt::UnoControlPatternFieldModel::Text + @see com::sun::star::form::XReset + */ + [property] string DefaultText; + +}; + + +}; }; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/form/component/RadioButton.idl b/offapi/com/sun/star/form/component/RadioButton.idl new file mode 100644 index 000000000..4c1f6c861 --- /dev/null +++ b/offapi/com/sun/star/form/component/RadioButton.idl @@ -0,0 +1,95 @@ +/* -*- 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_form_component_RadioButton_idl__ +#define __com_sun_star_form_component_RadioButton_idl__ + +#include + +#include + +#include + + + + module com { module sun { module star { module form { module component { + + +/** specifies a component which acts as a radio button as needed in HTMLForms. + +

Radio buttons are controls which can be grouped together, and in every + group, only one of the controls can be check. This means if one of them + is checked by a user interaction, all other controls in the same group + are automatically unchecked

+ +

Like in HTML, radio buttons are grouped together if and only if they have the + same name (see com::sun::star::form::FormComponent::Name).

+ */ +published service RadioButton +{ + service com::sun::star::awt::UnoControlRadioButtonModel; + + service com::sun::star::form::FormControlModel; + + /** can be used to reset the control to its default text. + + @see RadioButton::DefaultState + */ + interface com::sun::star::form::XReset; + + + /** contains a default value for the control. + +

This value is used when the control is initially displayed, and for resetting it.

+ +

In a group of radio buttons only one button should be checked + by default.

+ + @see com::sun::star::awt::UnoControlRadioButtonModel::State + @see com::sun::star::form::XReset + */ + [property] short DefaultState; + + + /** contains a reference value which is used for submission in a HTML + form. + +

If the form the control belongs to is to be submitted (see + com::sun::star::form::XSubmit), and the control is checked, this reference + value is used for submission.

+ */ + [property] string RefValue; + + + /** specifies a value which is to be associated with the control when it's not + selected. + +

In various situations, the #RefValue is associated with the control + if and only if it is selected.
+ #UncheckedRefValue provides an extension of this concept: If present, + the value should be associated with the control when it is not selected.

+ */ + [optional, property] string UncheckedRefValue; +}; + + +}; }; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/form/component/RichTextControl.idl b/offapi/com/sun/star/form/component/RichTextControl.idl new file mode 100644 index 000000000..180da4270 --- /dev/null +++ b/offapi/com/sun/star/form/component/RichTextControl.idl @@ -0,0 +1,74 @@ +/* -*- 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_form_component_RichTextControl_idl__ +#define __com_sun_star_form_component_RichTextControl_idl__ + +#include +#include +#include + + + module com { module sun { module star { module form { module component { + + +/** specifies a component which extends the com::sun::star::awt::UnoControlEditModel + with capabilities to display and input formatted text. +*/ +published service RichTextControl +{ + service com::sun::star::awt::UnoControlEditModel; + + service com::sun::star::form::FormControlModel; + + /** specifies capabilities to provide rich text, as opposed to the simple text provided by the + com::sun::star::awt::UnoControlEditModel + */ + service com::sun::star::text::TextRange; + + /** specifies whether text should be automatically wrapped to fit into the control. + +

If set to `TRUE`, users need to manually press the enter key to insert a line break. + If set to `FALSE`, text is automatically wrapped at the control border.

+ */ + [property] boolean HardLineBreaks; + + /** specifies whether the control should display the text including all its formatting. + +

If this is set to `FALSE`, the control will act as ordinary + com::sun::star::awt::UnoControlEditModel.

+ +

If the property is set to `TRUE`, the control will ignore the following properties: +

    +
  • com::sun::star::awt::UnoControlEditModel::EchoChar
  • +
  • com::sun::star::awt::UnoControlEditModel::MaxTextLen
  • +
  • com::sun::star::awt::UnoControlEditModel::MultiLine
  • +
  • com::sun::star::awt::UnoControlEditModel::Align
  • +
+

+ */ + [property] boolean RichText; +}; + + +}; }; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/form/component/ScrollBar.idl b/offapi/com/sun/star/form/component/ScrollBar.idl new file mode 100644 index 000000000..2f67b4659 --- /dev/null +++ b/offapi/com/sun/star/form/component/ScrollBar.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_form_component_ScrollBar_idl__ +#define __com_sun_star_form_component_ScrollBar_idl__ + +#include +#include +#include + + + +module com { module sun { module star { module form { module component { + + +/** specifies the model of a scroll bar control. +*/ +service ScrollBar +{ + service com::sun::star::awt::UnoControlScrollBarModel; + + service com::sun::star::form::FormControlModel; + + /** resets the control. + */ + interface com::sun::star::form::XReset; + + + /** contains a default value for the control. + +

This value is used when the control is initially displayed, and for resetting it.

+ + @see com::sun::star::awt::UnoControlScrollBarModel::ScrollValue + @see com::sun::star::form::XReset + */ + [property] long DefaultScrollValue; + +}; + + +}; }; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/form/component/SpinButton.idl b/offapi/com/sun/star/form/component/SpinButton.idl new file mode 100644 index 000000000..7feb1459d --- /dev/null +++ b/offapi/com/sun/star/form/component/SpinButton.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_form_component_SpinButton_idl__ +#define __com_sun_star_form_component_SpinButton_idl__ + +#include +#include +#include + + + +module com { module sun { module star { module form { module component { + + +/** specifies the model of a scroll bar control. +*/ +service SpinButton +{ + service com::sun::star::awt::UnoControlSpinButtonModel; + + service com::sun::star::form::FormControlModel; + + /** resets the control. + */ + interface com::sun::star::form::XReset; + + + /** contains a default value for the control. + +

This value is used when the control is initially displayed, and for resetting it.

+ + @see com::sun::star::awt::UnoControlSpinButtonModel::SpinValue + @see com::sun::star::form::XReset + */ + [property] long DefaultSpinValue; + +}; + + +}; }; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/form/component/SubmitButton.idl b/offapi/com/sun/star/form/component/SubmitButton.idl new file mode 100644 index 000000000..3a0cf89b1 --- /dev/null +++ b/offapi/com/sun/star/form/component/SubmitButton.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_form_component_SubmitButton_idl__ +#define __com_sun_star_form_component_SubmitButton_idl__ + +#include +#include +#include + + +module com { module sun { module star { module form { module component { + + +/** specifies the control model for a button, part of a form component hierarchy, + which can be bound to external submissions. + + @see CommandButton + */ +service SubmitButton +{ + service com::sun::star::form::FormControlModel; + + /** allows binding external submissions to the control model + +

Note that the control model itself will not make any use of the submission. + Instead, submissions are triggered by a control (not a control model). + Thus, the com::sun::star::form::control::SubmitButton + control associated with a SubmitButton model is responsible for + using the submission supplied at this model.

+ */ + interface com::sun::star::form::submission::XSubmissionSupplier; +}; + + +}; }; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/form/component/TextField.idl b/offapi/com/sun/star/form/component/TextField.idl new file mode 100644 index 000000000..733edc45d --- /dev/null +++ b/offapi/com/sun/star/form/component/TextField.idl @@ -0,0 +1,70 @@ +/* -*- 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_form_component_TextField_idl__ +#define __com_sun_star_form_component_TextField_idl__ + +#include + +#include +#include +#include + + + + module com { module sun { module star { module form { module component { + + +/** specifies a component which allows the input of text, either single- or multi-line. + */ +published service TextField +{ + service com::sun::star::awt::UnoControlEditModel; + + service com::sun::star::form::FormControlModel; + + /** specifies optional capabilities for displaying and inputting formatted text. + +

If the RichTextControl::RichText property is set to `TRUE`, + then the TextField component will disable it's reset capabilities. This means + that all calls to com::sun::star::form::XReset::reset() will be ignored.

+ */ + [optional] service RichTextControl; + + /** can be used to reset the control to its default text. + + @see TextField::DefaultText + */ + interface com::sun::star::form::XReset; + + /** contains a default value for the control. + +

This value is used when the control is initially displayed, and for resetting it.

+ + @see com::sun::star::awt::UnoControlEditModel::Text + @see com::sun::star::form::XReset + */ + [property] string DefaultText; +}; + + +}; }; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/form/component/TimeField.idl b/offapi/com/sun/star/form/component/TimeField.idl new file mode 100644 index 000000000..79d937ac4 --- /dev/null +++ b/offapi/com/sun/star/form/component/TimeField.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_form_component_TimeField_idl__ +#define __com_sun_star_form_component_TimeField_idl__ + +#include + +#include + +#include + + + + module com { module sun { module star { module form { module component { + + +/** specifies the control model for a field which can be used to input time values. + */ +published service TimeField +{ + service com::sun::star::awt::UnoControlTimeFieldModel; + + service com::sun::star::form::FormControlModel; + + /** resets the control. + +

If you do not set a value for the #DefaultTime, then resetting the control + will result in setting to the current system time. This is for HTML compatibility.

+ */ + interface com::sun::star::form::XReset; + + + /** contains a default value for the control. + +

This value is used when the control is initially displayed, and for resetting it.

+ + @see com::sun::star::awt::UnoControlTimeFieldModel::Time + @see com::sun::star::form::XReset + */ + [property] long DefaultTime; + +}; + + +}; }; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ -- cgit v1.2.3