blob: e96ce0480a38c5d111e24fec07aba512928de0c2 [file] [log] [blame]
/**************************************************************
*
* 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
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*
*************************************************************/
#ifndef __com_sun_star_text_XDependentTextField_idl__
#define __com_sun_star_text_XDependentTextField_idl__
#ifndef __com_sun_star_text_XTextField_idl__
#include <com/sun/star/text/XTextField.idl>
#endif
#ifndef __com_sun_star_beans_XPropertySet_idl__
#include <com/sun/star/beans/XPropertySet.idl>
#endif
#ifndef __com_sun_star_lang_IllegalArgumentException_idl__
#include <com/sun/star/lang/IllegalArgumentException.idl>
#endif
//=============================================================================
module com { module sun { module star { module text {
//=============================================================================
/** makes it possible to attach this <type>TextField</type> to a
<type>TextFieldMaster</type>.
*/
published interface XDependentTextField: com::sun::star::text::XTextField
{
//-------------------------------------------------------------------------
/** method must be called to attach the
<type>TextFieldMaster</type> to this <type>TextField</type>.
<p>A <type>TextFieldMaster</type> can only be assigned once.
</p>
@example Create and insert a user field (with a
<code>UserField</code>):
<listing>
// Create a fieldmaster for our newly created User Text field, and access it's
// XPropertySet interface
XPropertySet xMasterPropSet = (XPropertySet) UnoRuntime.queryInterface(
XPropertySet.class, mxDocFactory.createInstance(
"com.sun.star.text.FieldMaster.User"));
// Set the name and value of the FieldMaster
xMasterPropSet.setPropertyValue ("Name", "UserEmperor");
xMasterPropSet.setPropertyValue ("Value", new Integer(42));
// Attach the field master to the user field
xUserField.attachTextFieldMaster (xMasterPropSet);
// Move the cursor to the end of the document
mxDocCursor.gotoEnd(false);
// insert a paragraph break using the XSimpleText interface
mxDocText.insertControlCharacter(
mxDocCursor, ControlCharacter.PARAGRAPH_BREAK, false);
// Insert the user field at the end of the document
mxDocText.insertTextContent(mxDocText.getEnd(), xUserField, false);
</listing>
*/
void attachTextFieldMaster( [in] com::sun::star::beans::XPropertySet xFieldMaster )
raises( com::sun::star::lang::IllegalArgumentException );
//-------------------------------------------------------------------------
/** @returns
the previously attached <type>TextFieldMaster</type>
*/
com::sun::star::beans::XPropertySet getTextFieldMaster();
};
//=============================================================================
}; }; }; };
#endif