| KeyTreeModel.java |
1 /**
2 * Distribution License:
3 * BibleDesktop is free software; you can redistribute it and/or modify it under
4 * the terms of the GNU General Public License, version 2 as published by
5 * the Free Software Foundation. This program is distributed in the hope
6 * that it will be useful, but WITHOUT ANY WARRANTY; without even the
7 * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
8 * See the GNU General Public License for more details.
9 *
10 * The License is available on the internet at:
11 * http://www.gnu.org/copyleft/gpl.html
12 * or by writing to:
13 * Free Software Foundation, Inc.
14 * 59 Temple Place - Suite 330
15 * Boston, MA 02111-1307, USA
16 *
17 * Copyright: 2005
18 * The copyright to this program is held by it's authors.
19 *
20 * ID: $Id:KeyTreeModel.java 1253 2007-03-16 21:16:26Z dmsmith $
21 */
22 package org.crosswire.bibledesktop.passage;
23
24 import javax.swing.tree.DefaultTreeModel;
25
26 import org.crosswire.jsword.passage.Key;
27
28 /**
29 * A TreeModel that helps with working with Keys.
30 *
31 * @see gnu.gpl.License for license details.<br>
32 * The copyright to this program is held by it's authors.
33 * @author Joe Walker [joe at eireneh dot com]
34 */
35 public class KeyTreeModel extends DefaultTreeModel {
36 /**
37 * Simple ctor
38 *
39 * @param key
40 * The root TreeNode
41 */
42 public KeyTreeModel(Key key) {
43 super(new KeyTreeNode(key, null));
44 this.key = key;
45 }
46
47 /**
48 * What key is this tree editing
49 *
50 * @return Returns the key.
51 */
52 public Key getKey() {
53 return key;
54 }
55
56 /**
57 * Sets the key is this tree editing
58 */
59 public void setKey(Key key) {
60 this.key = key;
61 setRoot(new KeyTreeNode(key, null));
62 }
63
64 /**
65 * The key that this tree is displaying.
66 */
67 private Key key;
68
69 /**
70 * Serialization ID
71 */
72 private static final long serialVersionUID = 3977303235050353714L;
73 }
74