blob: 9ea24f80f911d2fb700abfe6bcf58ffaaaba3b2b [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_awt_tree_XMutableTreeNode_idl__
#define __com_sun_star_awt_tree_XMutableTreeNode_idl__
#ifndef __com_sun_star_awt_tree_XTreeNode_idl__
#include <com/sun/star/awt/tree/XTreeNode.idl>
#endif
#ifndef __com_sun_star_lang_IllegalArgumentException_idl__
#include <com/sun/star/lang/IllegalArgumentException.idl>
#endif
#ifndef __com_sun_star_lang_IndexOutOfBoundsException_idl__
#include <com/sun/star/lang/IndexOutOfBoundsException.idl>
#endif
//=============================================================================
module com { module sun { module star { module awt { module tree {
//=============================================================================
/** Represents a mutable tree node as used by the <type>MutableTreeDataModel</type>
*/
published interface XMutableTreeNode : XTreeNode
{
/** appends <var>ChildNode</var> to this instance.
@throws ::com::sun::star::lang::IllegalArgumentException
if <var>ChildNode</var> is not a valid node of the corresponding <type>XTreeDataModel</type>.
*/
void appendChild( [in] XMutableTreeNode ChildNode )
raises( com::sun::star::lang::IllegalArgumentException );
/** inserts <var>ChildNode</var> to this instance at the given index.
@param Index
the index where the node will be inserted to this instance.
@throws ::com::sun::star::lang::IllegalArgumentException
if <var>ChildNode</var> is not a valid node of the corresponding <type>XTreeDataModel</type>.
@throws ::com::sun::star::lang::IndexOutOfBoundsException
if <var>Index</var> is less than 0 or greater then <member>XTreeNode::getChildCount()</member>.
*/
void insertChildByIndex( [in] long Index, [in] XMutableTreeNode ChildNode )
raises( com::sun::star::lang::IllegalArgumentException,
com::sun::star::lang::IndexOutOfBoundsException );
/** removes the node from this instance at the specified index.
@param Index
the index of the node to be removed from this instance.
@throws ::com::sun::star::lang::IndexOutOfBoundsException
if <var>Index</var> is less than 0 or greater then <member>XTreeNode::getChildCount()</member>.
*/
void removeChildByIndex( [in] long Index )
raises( com::sun::star::lang::IndexOutOfBoundsException );
/** Changes if the children of this node are created on demand.
@see XTreeNode::hasChildrenOnDemand()
*/
void setHasChildrenOnDemand( [in] boolean ChildrenOnDemand );
/** sets the display value of this node */
void setDisplayValue( [in] any Value );
/** Stores an implementation dependend value.
<p>You can use this attribute to store data for this node that
is independend of the display value</p>
*/
[attribute] any DataValue;
/** The URL for a graphic that is rendered before the text part of this node.
<p>If this URL is empty, no graphic is rendered.
*/
void setNodeGraphicURL( [in] string URL );
/** The URL for a graphic that is rendered to visualize expanded non leaf nodes.
<p>If <var>URL</var> is empty, <member>XTreeControl::DefaultExpandedGraphicURL</member> is used.
*/
void setExpandedGraphicURL( [in] string URL );
/** The URL for a graphic that is rendered to visualize collapsed non leaf nodes.
<p>If <var>URL</var> is empty, <member>XTreeControl::DefaultCollapsedGraphicURL</member> is used.
*/
void setCollapsedGraphicURL( [in] string URL );
};
//=============================================================================
}; }; }; }; };
#endif