author | Dan Labrecque <dan.labrecque@oracle.com> |
Thu, 24 May 2012 04:16:47 -0400 | |
changeset 827 | 0944d8c0158b |
permissions | -rw-r--r-- |
827
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
1 |
/* |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
2 |
* CDDL HEADER START |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
3 |
* |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
4 |
* The contents of this file are subject to the terms of the |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
5 |
* Common Development and Distribution License (the "License"). |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
6 |
* You may not use this file except in compliance with the License. |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
7 |
* |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
8 |
* You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
9 |
* or http://www.opensolaris.org/os/licensing. |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
10 |
* See the License for the specific language governing permissions |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
11 |
* and limitations under the License. |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
12 |
* |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
13 |
* When distributing Covered Code, include this CDDL HEADER in each |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
14 |
* file and include the License file at usr/src/OPENSOLARIS.LICENSE. |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
15 |
* If applicable, add the following below this CDDL HEADER, with the |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
16 |
* fields enclosed by brackets "[]" replaced with your own identifying |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
17 |
* information: Portions Copyright [yyyy] [name of copyright owner] |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
18 |
* |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
19 |
* CDDL HEADER END |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
20 |
*/ |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
21 |
|
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
22 |
/* |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
23 |
* Copyright (c) 2009, 2012, Oracle and/or its affiliates. All rights reserved. |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
24 |
*/ |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
25 |
|
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
26 |
package com.oracle.solaris.vp.util.misc.property; |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
27 |
|
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
28 |
import javax.swing.event.*; |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
29 |
import com.oracle.solaris.vp.util.misc.ObjectUtil; |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
30 |
|
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
31 |
/** |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
32 |
* The {@code PropertySynchronizer} class provides a base class for |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
33 |
* synchronization between a {@link MutableProperty} and some other {@link |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
34 |
* #getObject object}, so that changes in one will automatically be reflected in |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
35 |
* the other. Besides implementing the abstract methods, subclasses should call |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
36 |
* {@link #objectChanged} whenever that object changes. |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
37 |
*/ |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
38 |
public abstract class PropertySynchronizer<T, O> { |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
39 |
// |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
40 |
// Instance data |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
41 |
// |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
42 |
|
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
43 |
private MutableProperty<T> property; |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
44 |
private O object; |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
45 |
private boolean syncObjectChanges = true; |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
46 |
private boolean syncPropertyChanges = true; |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
47 |
|
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
48 |
private ChangeListener propListener = |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
49 |
new ChangeListener() { |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
50 |
@Override |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
51 |
public void stateChanged(ChangeEvent e) { |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
52 |
propertyChanged(); |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
53 |
} |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
54 |
}; |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
55 |
|
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
56 |
// |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
57 |
// Constructors |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
58 |
// |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
59 |
|
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
60 |
/** |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
61 |
* Constructs a {@code PropertySynchronizer} and {@link #init initializes} |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
62 |
* it. |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
63 |
* |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
64 |
* @param property |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
65 |
* the property to synchronize with the secondary object |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
66 |
* |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
67 |
* @param object |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
68 |
* the secondary object to synchronize with the property |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
69 |
* |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
70 |
* @param initFromProp |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
71 |
* if {@code true}, initial synchronization will be from |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
72 |
* the property to the secondary object; if {@code false}, |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
73 |
* initial synchronization will go in the other direction |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
74 |
*/ |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
75 |
public PropertySynchronizer(MutableProperty<T> property, O object, |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
76 |
boolean initFromProp) { |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
77 |
|
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
78 |
this.property = property; |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
79 |
this.object = object; |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
80 |
property.addChangeListener(propListener); |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
81 |
|
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
82 |
init(initFromProp); |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
83 |
} |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
84 |
|
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
85 |
/** |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
86 |
* Constructs a {@code PropertySynchronizer} with initial synchronization |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
87 |
* from the property to the secondary object. |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
88 |
*/ |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
89 |
public PropertySynchronizer(MutableProperty<T> property, O object) { |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
90 |
this(property, object, true); |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
91 |
} |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
92 |
|
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
93 |
// |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
94 |
// PropertySynchronizer methods |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
95 |
// |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
96 |
|
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
97 |
/** |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
98 |
* Removes the {@code ChangeListener} that keeps the secondary object |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
99 |
* up-to-date with changes in the {@link MutableProperty}. This method |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
100 |
* should be overridden to additionally remove any listener that keeps the |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
101 |
* {@link MutableProperty} up-to-date with changes in the secondary object. |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
102 |
*/ |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
103 |
public void desynchronize() { |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
104 |
property.removeChangeListener(propListener); |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
105 |
} |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
106 |
|
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
107 |
/** |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
108 |
* Indicates whether the {@link #getProperty property} differs from the |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
109 |
* {@link #getObject secondary object}. |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
110 |
* <p/> |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
111 |
* This default implementation compares the property's value with the |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
112 |
* secondary object's {@link #getValue value}. Subclasses may wish to |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
113 |
* compare other attributes. |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
114 |
*/ |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
115 |
protected boolean differ() { |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
116 |
return !ObjectUtil.equals(getValue(), property.getValue()); |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
117 |
} |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
118 |
|
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
119 |
/** |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
120 |
* Initializes this {@code PropertySynchronizer}, calling {@link |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
121 |
* #propertyChanged} if {@code initFromProp} is {@code true}, or {@link |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
122 |
* #objectChanged} if {@code initFromProp} is {@code false}. |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
123 |
*/ |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
124 |
public void init(boolean initFromProp) { |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
125 |
if (initFromProp) { |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
126 |
propertyChanged(); |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
127 |
} else { |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
128 |
objectChanged(); |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
129 |
} |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
130 |
} |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
131 |
|
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
132 |
public O getObject() { |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
133 |
return object; |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
134 |
} |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
135 |
|
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
136 |
public MutableProperty<T> getProperty() { |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
137 |
return property; |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
138 |
} |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
139 |
|
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
140 |
/** |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
141 |
* Gets whether changes in the {@link #getObject secondary object} |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
142 |
* are propagated to the {@link #getProperty property}. |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
143 |
*/ |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
144 |
protected boolean getSyncObjectChanges() { |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
145 |
return syncObjectChanges; |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
146 |
} |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
147 |
|
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
148 |
/** |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
149 |
* Gets whether changes in the {@link #getProperty property} are propagated |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
150 |
* to the {@link #getObject secondary object}. |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
151 |
*/ |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
152 |
protected boolean getSyncPropertyChanges() { |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
153 |
return syncPropertyChanges; |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
154 |
} |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
155 |
|
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
156 |
/** |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
157 |
* Gets the value of the {@link #getObject secondary object}. |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
158 |
*/ |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
159 |
protected abstract T getValue(); |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
160 |
|
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
161 |
/** |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
162 |
* {@link #syncObjectChanges Updates} the {@link #getProperty property} with |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
163 |
* the value of the {@link #getObject secondary object}, if they {@link |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
164 |
* #differ differ}. This method should be called by subclasses when the |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
165 |
* secondary object changes. |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
166 |
*/ |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
167 |
protected void objectChanged() { |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
168 |
if (syncObjectChanges) { |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
169 |
if (differ()) { |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
170 |
boolean saved = getSyncPropertyChanges(); |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
171 |
// Disable property change syncs to avoid loops |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
172 |
setSyncPropertyChanges(false); |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
173 |
try { |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
174 |
syncObjectChanges(); |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
175 |
} finally { |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
176 |
setSyncPropertyChanges(saved); |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
177 |
} |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
178 |
} |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
179 |
} |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
180 |
} |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
181 |
|
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
182 |
/** |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
183 |
* {@link #syncPropertyChanges Updates} the {@link #getObject secondary |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
184 |
* object} with the value of the {@link #getProperty property}, if they |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
185 |
* {@link #differ differ}. This method is called whenever the property |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
186 |
* changes. |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
187 |
*/ |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
188 |
protected void propertyChanged() { |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
189 |
if (syncPropertyChanges) { |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
190 |
if (differ()) { |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
191 |
boolean saved = getSyncObjectChanges(); |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
192 |
// Disable object change syncs to avoid loops |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
193 |
setSyncObjectChanges(false); |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
194 |
try { |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
195 |
syncPropertyChanges(); |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
196 |
} finally { |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
197 |
setSyncObjectChanges(saved); |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
198 |
} |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
199 |
} |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
200 |
} |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
201 |
} |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
202 |
|
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
203 |
/** |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
204 |
* Sets whether changes in the {@link #getObject secondary object} |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
205 |
* are propagated to the {@link #getProperty property}. |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
206 |
*/ |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
207 |
protected void setSyncObjectChanges(boolean syncObjectChanges) { |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
208 |
if (this.syncObjectChanges != syncObjectChanges) { |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
209 |
this.syncObjectChanges = syncObjectChanges; |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
210 |
} |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
211 |
} |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
212 |
|
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
213 |
/** |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
214 |
* Sets whether changes in the {@link #getProperty property} |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
215 |
* are propagated to the {@link #getObject secondary object}. |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
216 |
*/ |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
217 |
protected void setSyncPropertyChanges(boolean syncPropertyChanges) { |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
218 |
if (this.syncPropertyChanges != syncPropertyChanges) { |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
219 |
this.syncPropertyChanges = syncPropertyChanges; |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
220 |
} |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
221 |
} |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
222 |
|
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
223 |
/** |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
224 |
* Sets the value in the {@link #getObject secondary object}. |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
225 |
*/ |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
226 |
protected abstract void setValue(T value); |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
227 |
|
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
228 |
/** |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
229 |
* Does the actual work of propagating changes in the {@code #getObject |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
230 |
* secondary object} to the {@link #getProperty property}. Called by {@link |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
231 |
* #objectChanged} after verifing that the two {@link #differ differ} and |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
232 |
* that such changes {@link #getSyncObjectChanges should be propagated}. |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
233 |
* <p/> |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
234 |
* This default implementation sets the {@link #getValue value} of the |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
235 |
* secondary object in the property. |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
236 |
*/ |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
237 |
protected void syncObjectChanges() { |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
238 |
T value = getValue(); |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
239 |
property.setValue(value); |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
240 |
} |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
241 |
|
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
242 |
/** |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
243 |
* Does the actual work of propagating changes in the {@link #getProperty |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
244 |
* property} to the {@code #getObject secondary object}. Called by {@link |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
245 |
* #propertyChanged} after verifing that the two {@link #differ differ} and |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
246 |
* that such changes {@link #getSyncPropertyChanges should be propagated}. |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
247 |
* <p/> |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
248 |
* This default implementation {@link #setValue sets} the value of the |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
249 |
* property in the secondary object. |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
250 |
*/ |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
251 |
protected void syncPropertyChanges() { |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
252 |
T value = getProperty().getValue(); |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
253 |
setValue(value); |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
254 |
} |
0944d8c0158b
7169052 Integrate Visual Panels into Userland
Dan Labrecque <dan.labrecque@oracle.com>
parents:
diff
changeset
|
255 |
} |