blob: 152bac0286425e4e8af042756924acbde28877ba [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_XMutableTreeDataModel_idl__
#define __com_sun_star_awt_tree_XMutableTreeDataModel_idl__
#ifndef __com_sun_star_awt_tree_XTreeDataModel_idl__
#include <com/sun/star/awt/tree/XTreeDataModel.idl>
#endif
#ifndef __com_sun_star_awt_tree_XMutableTreeNode_idl__
#include <com/sun/star/awt/tree/XMutableTreeNode.idl>
#endif
//=============================================================================
module com { module sun { module star { module awt { module tree {
//=============================================================================
/** This is the editable version of the <type>XTreeDataModel</type>.
<p>Note that only <type>XTreeNode</type> created from the same instance with <member>createNode</member>
are valids nodes for this instance.</p>
*/
published interface XMutableTreeDataModel : XTreeDataModel
{
/** creates a new tree node with the given value and given settings.
@param DisplayValue
should be convertable to a string and is used by the <type>XTreeControl</type>
as a textual represenation of the created node.
@param ChildrenOnDemand
if <TRUE/> is used as a parameter, the created node will be treated as a non-leaf
node by the <type>XTreeControl</type>, even when it has no child nodes.
@returns
a new <type>XMutableTreeNode</type> that can be used for this model.
@see XTreeNode::getDisplayValue()
@see XTreeNode::hasChildrenOnDemand()
*/
XMutableTreeNode createNode( [in] any DisplayValue, [in] boolean ChildrenOnDemand );
/** changes the root node of this model to <var>RootNode</var>.
@param RootNode
the <type>XMutableTreeNode</type> that becomes the new root node of this model.
@throws ::com::sun::star::lang::IllegalArgumentException
if <var>RootNode</var> is not a valid node of this <type>XTreeDataModel</type>.
*/
void setRoot( [in] XMutableTreeNode RootNode )
raises( ::com::sun::star::lang::IllegalArgumentException );
};
//=============================================================================
}; }; }; }; };
#endif