blob: bde5a8116e21dbf4da62e0a5c387db8baa4b5c8e [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_inspection_XPropertyControlFactory_idl__
#define __com_sun_star_inspection_XPropertyControlFactory_idl__
#ifndef __com_sun_star_lang_IllegalArgumentException_idl__
#include <com/sun/star/lang/IllegalArgumentException.idl>
#endif
//=============================================================================
module com { module sun { module star { module inspection {
published interface XPropertyControl;
//-----------------------------------------------------------------------------
/** a factory for <type>XPropertyControl</type>s
@since OpenOffice 2.0.3
*/
published interface XPropertyControlFactory
{
/** creates a <type>XPropertyControl</type>
<p>A <type>XPropertyControlFactory</type> can create any of the control types denoted by
the <type>PropertyControlType</type> constants.</p>
@param ControlType
the type of the requested control
@param CreateReadOnly
determines whether the newly created control should be readonly.
<p>If this argument is <TRUE/>, this does not necessarily mean that the property cannot be
changed at all in the <type>ObjectInspector</type>. Instead, an <type>XPropertyHandler</type>
can still decide that there is a dedicated UI for entering the property value,
which is usually triggered by a <member>LineDescriptor::PrimaryButton</member>.</p>
<p>Note that this parameter might be ignored if the <member>XObjectInspectorModel::IsReadOnly</member>
attribute is <TRUE/>, in which case all created property controls must be readonly.</p>
@returns
a control of the given type.
@throws com::sun::star::lang::IllegalArgumentException
if the given <arg>ControlType</arg> is not a value <type>PropertyControlType</type>
*/
XPropertyControl createPropertyControl( [in] short ControlType, [in] boolean CreateReadOnly )
raises ( com::sun::star::lang::IllegalArgumentException );
};
//=============================================================================
}; }; }; };
#endif