1/************************************************************** 2 * 3 * Licensed to the Apache Software Foundation (ASF) under one 4 * or more contributor license agreements. See the NOTICE file 5 * distributed with this work for additional information 6 * regarding copyright ownership. The ASF licenses this file 7 * to you under the Apache License, Version 2.0 (the 8 * "License"); you may not use this file except in compliance 9 * with the License. You may obtain a copy of the License at 10 * 11 * http://www.apache.org/licenses/LICENSE-2.0 12 * 13 * Unless required by applicable law or agreed to in writing, 14 * software distributed under the License is distributed on an 15 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16 * KIND, either express or implied. See the License for the 17 * specific language governing permissions and limitations 18 * under the License. 19 * 20 *************************************************************/ 21 22 23#ifndef __com_sun_star_awt_tree_XMutableTreeNode_idl__ 24#define __com_sun_star_awt_tree_XMutableTreeNode_idl__ 25 26#ifndef __com_sun_star_awt_tree_XTreeNode_idl__ 27#include <com/sun/star/awt/tree/XTreeNode.idl> 28#endif 29 30#ifndef __com_sun_star_lang_IllegalArgumentException_idl__ 31#include <com/sun/star/lang/IllegalArgumentException.idl> 32#endif 33 34#ifndef __com_sun_star_lang_IndexOutOfBoundsException_idl__ 35#include <com/sun/star/lang/IndexOutOfBoundsException.idl> 36#endif 37 38//============================================================================= 39 40module com { module sun { module star { module awt { module tree { 41 42//============================================================================= 43 44/** Represents a mutable tree node as used by the <type>MutableTreeDataModel</type> 45 */ 46published interface XMutableTreeNode : XTreeNode 47{ 48 /** appends <var>ChildNode</var> to this instance. 49 50 @throws ::com::sun::star::lang::IllegalArgumentException 51 if <var>ChildNode</var> is not a valid node of the corresponding <type>XTreeDataModel</type>. 52 */ 53 void appendChild( [in] XMutableTreeNode ChildNode ) 54 raises( com::sun::star::lang::IllegalArgumentException ); 55 56 /** inserts <var>ChildNode</var> to this instance at the given index. 57 58 @param Index 59 the index where the node will be inserted to this instance. 60 61 @throws ::com::sun::star::lang::IllegalArgumentException 62 if <var>ChildNode</var> is not a valid node of the corresponding <type>XTreeDataModel</type>. 63 64 @throws ::com::sun::star::lang::IndexOutOfBoundsException 65 if <var>Index</var> is less than 0 or greater then <member>XTreeNode::getChildCount()</member>. 66 */ 67 void insertChildByIndex( [in] long Index, [in] XMutableTreeNode ChildNode ) 68 raises( com::sun::star::lang::IllegalArgumentException, 69 com::sun::star::lang::IndexOutOfBoundsException ); 70 71 /** removes the node from this instance at the specified index. 72 73 @param Index 74 the index of the node to be removed from this instance. 75 76 @throws ::com::sun::star::lang::IndexOutOfBoundsException 77 if <var>Index</var> is less than 0 or greater then <member>XTreeNode::getChildCount()</member>. 78 */ 79 void removeChildByIndex( [in] long Index ) 80 raises( com::sun::star::lang::IndexOutOfBoundsException ); 81 82 /** Changes if the children of this node are created on demand. 83 84 @see XTreeNode::hasChildrenOnDemand() 85 */ 86 void setHasChildrenOnDemand( [in] boolean ChildrenOnDemand ); 87 88 /** sets the display value of this node */ 89 void setDisplayValue( [in] any Value ); 90 91 /** Stores an implementation dependend value. 92 93 <p>You can use this attribute to store data for this node that 94 is independend of the display value</p> 95 */ 96 [attribute] any DataValue; 97 98 /** The URL for a graphic that is rendered before the text part of this node. 99 <p>If this URL is empty, no graphic is rendered. 100 */ 101 void setNodeGraphicURL( [in] string URL ); 102 103 /** The URL for a graphic that is rendered to visualize expanded non leaf nodes. 104 <p>If <var>URL</var> is empty, <member>XTreeControl::DefaultExpandedGraphicURL</member> is used. 105 */ 106 void setExpandedGraphicURL( [in] string URL ); 107 108 /** The URL for a graphic that is rendered to visualize collapsed non leaf nodes. 109 <p>If <var>URL</var> is empty, <member>XTreeControl::DefaultCollapsedGraphicURL</member> is used. 110 */ 111 void setCollapsedGraphicURL( [in] string URL ); 112}; 113 114//============================================================================= 115 116}; }; }; }; }; 117 118#endif 119