1 /*******************************************************************************
2 * Copyright (c) 2007, 2010 Association for Decentralized Information Management
4 * All rights reserved. This program and the accompanying materials
5 * are made available under the terms of the Eclipse Public License v1.0
6 * which accompanies this distribution, and is available at
7 * http://www.eclipse.org/legal/epl-v10.html
10 * VTT Technical Research Centre of Finland - initial API and implementation
11 *******************************************************************************/
12 package org.simantics.browsing.ui.common.node;
15 * A tag interface for indicating that a browser node may be considered in-line
16 * modifiable. It is used by model browser menu extensions to check whether to
17 * show the "rename" option to the user or not.
20 * There are several ways of specifying the actual modification procedure for
24 * <li>To specify your own custom deletion logic, you can make your node
25 * implement {@link IModifiableNode}</li>
26 * <li>If your nodes are backed by database resources, you can make the nodes
27 * adaptable to Resource (which {@link AbstractNode} already is), and make your
28 * specific resource type adaptable to {@link StringModifier} (see <a
29 * href="https://www.simantics.org/wiki/index.php/Resource_Adaptation"
30 * >instructions</a>)</li>
31 * <li>Specify your own Eclipse command framework <code>IHandler</code>, using the
32 * org.eclipse.ui.handlers extension point, that is active only for your
33 * particular node input. Don't use this method unless you have to.</li>
36 * @see IModifiableNode
38 public interface IModifiable {