1/************************************************************************* 2 * 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 * 5 * Copyright 2000, 2010 Oracle and/or its affiliates. 6 * 7 * OpenOffice.org - a multi-platform office productivity suite 8 * 9 * This file is part of OpenOffice.org. 10 * 11 * OpenOffice.org is free software: you can redistribute it and/or modify 12 * it under the terms of the GNU Lesser General Public License version 3 13 * only, as published by the Free Software Foundation. 14 * 15 * OpenOffice.org is distributed in the hope that it will be useful, 16 * but WITHOUT ANY WARRANTY; without even the implied warranty of 17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18 * GNU Lesser General Public License version 3 for more details 19 * (a copy is included in the LICENSE file that accompanied this code). 20 * 21 * You should have received a copy of the GNU Lesser General Public License 22 * version 3 along with OpenOffice.org. If not, see 23 * <http://www.openoffice.org/license.html> 24 * for a copy of the LGPLv3 License. 25 * 26 ************************************************************************/ 27#ifndef __com_sun_star_awt_tree_XMutableTreeNode_idl__ 28#define __com_sun_star_awt_tree_XMutableTreeNode_idl__ 29 30#ifndef __com_sun_star_awt_tree_XTreeNode_idl__ 31#include <com/sun/star/awt/tree/XTreeNode.idl> 32#endif 33 34#ifndef __com_sun_star_lang_IllegalArgumentException_idl__ 35#include <com/sun/star/lang/IllegalArgumentException.idl> 36#endif 37 38#ifndef __com_sun_star_lang_IndexOutOfBoundsException_idl__ 39#include <com/sun/star/lang/IndexOutOfBoundsException.idl> 40#endif 41 42//============================================================================= 43 44module com { module sun { module star { module awt { module tree { 45 46//============================================================================= 47 48/** Represents a mutable tree node as used by the <type>MutableTreeDataModel</type> 49 */ 50published interface XMutableTreeNode : XTreeNode 51{ 52 /** appends <var>ChildNode</var> to this instance. 53 54 @throws ::com::sun::star::lang::IllegalArgumentException 55 if <var>ChildNode</var> is not a valid node of the corresponding <type>XTreeDataModel</type>. 56 */ 57 void appendChild( [in] XMutableTreeNode ChildNode ) 58 raises( com::sun::star::lang::IllegalArgumentException ); 59 60 /** inserts <var>ChildNode</var> to this instance at the given index. 61 62 @param Index 63 the index where the node will be inserted to this instance. 64 65 @throws ::com::sun::star::lang::IllegalArgumentException 66 if <var>ChildNode</var> is not a valid node of the corresponding <type>XTreeDataModel</type>. 67 68 @throws ::com::sun::star::lang::IndexOutOfBoundsException 69 if <var>Index</var> is less than 0 or greater then <member>XTreeNode::getChildCount()</member>. 70 */ 71 void insertChildByIndex( [in] long Index, [in] XMutableTreeNode ChildNode ) 72 raises( com::sun::star::lang::IllegalArgumentException, 73 com::sun::star::lang::IndexOutOfBoundsException ); 74 75 /** removes the node from this instance at the specified index. 76 77 @param Index 78 the index of the node to be removed from this instance. 79 80 @throws ::com::sun::star::lang::IndexOutOfBoundsException 81 if <var>Index</var> is less than 0 or greater then <member>XTreeNode::getChildCount()</member>. 82 */ 83 void removeChildByIndex( [in] long Index ) 84 raises( com::sun::star::lang::IndexOutOfBoundsException ); 85 86 /** Changes if the children of this node are created on demand. 87 88 @see XTreeNode::hasChildrenOnDemand() 89 */ 90 void setHasChildrenOnDemand( [in] boolean ChildrenOnDemand ); 91 92 /** sets the display value of this node */ 93 void setDisplayValue( [in] any Value ); 94 95 /** Stores an implementation dependend value. 96 97 <p>You can use this attribute to store data for this node that 98 is independend of the display value</p> 99 */ 100 [attribute] any DataValue; 101 102 /** The URL for a graphic that is rendered before the text part of this node. 103 <p>If this URL is empty, no graphic is rendered. 104 */ 105 void setNodeGraphicURL( [in] string URL ); 106 107 /** The URL for a graphic that is rendered to visualize expanded non leaf nodes. 108 <p>If <var>URL</var> is empty, <member>XTreeControl::DefaultExpandedGraphicURL</member> is used. 109 */ 110 void setExpandedGraphicURL( [in] string URL ); 111 112 /** The URL for a graphic that is rendered to visualize collapsed non leaf nodes. 113 <p>If <var>URL</var> is empty, <member>XTreeControl::DefaultCollapsedGraphicURL</member> is used. 114 */ 115 void setCollapsedGraphicURL( [in] string URL ); 116}; 117 118//============================================================================= 119 120}; }; }; }; }; 121 122#endif 123