|
What this is
Other links
The source code
/*
* Sun Public License Notice
*
* The contents of this file are subject to the Sun Public License
* Version 1.0 (the "License"). You may not use this file except in
* compliance with the License. A copy of the License is available at
* http://www.sun.com/
*
* The Original Code is Forte for Java, Community Edition. The Initial
* Developer of the Original Code is Sun Microsystems, Inc. Portions
* Copyright 1997-2002 Sun Microsystems, Inc. All Rights Reserved.
*/
package org.netbeans.modules.mdrxml.looks;
import java.lang.ref.WeakReference;
import java.io.IOException;
import java.awt.datatransfer.Transferable;
import org.openide.actions.PropertiesAction;
import org.openide.nodes.*;
import org.openide.util.NbBundle;
import org.openide.util.actions.SystemAction;
import org.netbeans.api.looks.*;
import org.netbeans.spi.looks.*;
import org.netbeans.modules.mdrxml.looks.actions.DeleteAction;
import org.netbeans.modules.mdrxml.looks.actions.GenerateTextAction;
/**
*
* @author Tomas Zezula
*/
public class NodeLook extends DefaultLook {
private static class NameProperty extends PropertySupport.ReadWrite {
private WeakReference ref;
public NameProperty(Look.NodeSubstitute substitute) {
super(NbBundle.getMessage(NodeLook.class,"TXT_Name"),String.class,NbBundle.getMessage(NodeLook.class,"TXT_Name"),NbBundle.getMessage(NodeLook.class,"TIP_Name"));
this.ref = new WeakReference (substitute);
}
public Object getValue() {
Look.NodeSubstitute val = (Look.NodeSubstitute) this.ref.get ();
if (val != null && (val.getRepresentedObject() instanceof xmlmodel.Node)) {
return ((xmlmodel.Node)val.getRepresentedObject()).getName();
}
else {
return null;
}
}
public void setValue(Object value) {
Look.NodeSubstitute val = (Look.NodeSubstitute) this.ref.get ();
if (value instanceof String && val != null && val.getRepresentedObject() instanceof xmlmodel.Node) {
((xmlmodel.Node)val.getRepresentedObject()).setName((String)value);
val.fireNameChange(null,(String)value);
val.fireDisplayNameChange(null,(String)value);
}
}
}
/** Creates a new instance of NodeLook */
public NodeLook(String name) {
super(name);
}
public String getName(Look.NodeSubstitute substitute) {
try {
xmlmodel.Node en = (xmlmodel.Node) substitute.getRepresentedObject();
return en.getName();
}catch (javax.jmi.reflect.InvalidObjectException ioe) {
return new String ();
}
}
public String getDisplayName(Look.NodeSubstitute substitute) {
return this.getName(substitute);
}
public Node.PropertySet[] getPropertySets(Look.NodeSubstitute substitute) {
Sheet.Set set = new Sheet.Set();
String name = NbBundle.getMessage(NodeLook.class,"TXT_Properties");
set.setName(name);
set.setDisplayName(name);
set.put(new NameProperty(substitute));
return new Node.PropertySet[] {set};
}
public javax.swing.Action[] getActions(Look.NodeSubstitute substitute) {
return new javax.swing.Action[] {
SystemAction.get(DeleteAction.class),
SystemAction.get(PropertiesAction.class),
SystemAction.get(GenerateTextAction.class)
};
}
public boolean canCopy (Look.NodeSubstitute substitute) {
return true;
}
public Transferable drag (Look.NodeSubstitute substitute) throws IOException {
return this.clipboardCopy (substitute);
}
}
|
| ... this post is sponsored by my books ... | |
#1 New Release! |
FP Best Seller |
Copyright 1998-2024 Alvin Alexander, alvinalexander.com
All Rights Reserved.
A percentage of advertising revenue from
pages under the /java/jwarehouse
URI on this website is
paid back to open source projects.