f@0: /* f@0: CCmI Editor - A Collaborative Cross-Modal Diagram Editing Tool f@0: f@0: Copyright (C) 2011 Queen Mary University of London (http://ccmi.eecs.qmul.ac.uk/) f@0: f@0: This program is free software: you can redistribute it and/or modify f@0: it under the terms of the GNU General Public License as published by f@0: the Free Software Foundation, either version 3 of the License, or f@0: (at your option) any later version. f@0: f@0: This program is distributed in the hope that it will be useful, f@0: but WITHOUT ANY WARRANTY; without even the implied warranty of f@0: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the f@0: GNU General Public License for more details. f@0: f@0: You should have received a copy of the GNU General Public License f@0: along with this program. If not, see . f@0: */ f@0: package uk.ac.qmul.eecs.ccmi.diagrammodel; f@0: f@0: import java.util.EventObject; f@0: f@0: /** f@0: * An event that is triggered in the {@code DiagramModel} when an action f@0: * happens that can involve all the tree nodes of the model's {@code DiagramTree} f@0: * rather than only nodes or edges. f@0: * f@0: * Particularly such actions happens when the user set the notes for a tree node or when f@0: * they bookmark a tree node. f@0: * f@0: */ f@0: @SuppressWarnings("serial") f@0: public class DiagramTreeNodeEvent extends EventObject { f@0: /** f@0: * Creates a new event related to a change in a tree node on either notes or bookmarks. f@0: * In order to get the status of the tree node before the change the old value is passed as f@0: * parameter to this constructor. f@0: * For {@code setNotes} this value is the notes before the change. For {@code removeBookmark} it f@0: * will be the bookmark that has just been removed. Finally for {@code putBookmark()} the value is the f@0: * new bookmark. f@0: * f@0: * @see uk.ac.qmul.eecs.ccmi.diagrammodel.TreeModel uk.ac.qmul.eecs.ccmi.diagrammodel.TreeModel f@0: * f@0: * @param treeNode the tree node where the action happened f@0: * @param value the value that the tree node had before this action. f@0: * @param source the source of the action f@0: */ f@0: public DiagramTreeNodeEvent(DiagramTreeNode treeNode, String value, Object source){ f@0: super(source); f@0: this.treeNode = treeNode; f@0: this.value = value; f@0: } f@0: f@0: /** f@0: * Returns the tree node on which a new note has been set or a bookmark has been added/removed. f@0: * f@0: * @return the tree node this event refers to. f@0: */ f@0: public DiagramTreeNode getTreeNode() { f@0: return treeNode; f@0: } f@0: f@0: /** f@0: * Returns the old value before the action (the old notes for {@code setNotes()}, f@0: * and the bookmark key for {@code putBookmark() and removeBookmark()}. f@0: * f@0: * @return the old value before the action f@0: */ f@0: public String getValue() { f@0: return value; f@0: } f@0: f@0: private DiagramTreeNode treeNode; f@0: private String value; f@0: }