|
|
@ -37,6 +37,8 @@ import com.jme3.gde.core.scene.SceneApplication; |
|
|
|
import com.jme3.post.Filter; |
|
|
|
import com.jme3.post.Filter; |
|
|
|
import com.jme3.post.FilterPostProcessor; |
|
|
|
import com.jme3.post.FilterPostProcessor; |
|
|
|
import java.awt.Image; |
|
|
|
import java.awt.Image; |
|
|
|
|
|
|
|
import java.awt.datatransfer.Transferable; |
|
|
|
|
|
|
|
import java.io.IOException; |
|
|
|
import java.util.Iterator; |
|
|
|
import java.util.Iterator; |
|
|
|
import java.util.LinkedList; |
|
|
|
import java.util.LinkedList; |
|
|
|
import java.util.List; |
|
|
|
import java.util.List; |
|
|
@ -45,11 +47,12 @@ import java.util.concurrent.ExecutionException; |
|
|
|
import javax.swing.Action; |
|
|
|
import javax.swing.Action; |
|
|
|
import org.openide.nodes.AbstractNode; |
|
|
|
import org.openide.nodes.AbstractNode; |
|
|
|
import org.openide.nodes.Children; |
|
|
|
import org.openide.nodes.Children; |
|
|
|
import org.openide.nodes.Index; |
|
|
|
|
|
|
|
import org.openide.nodes.Node; |
|
|
|
import org.openide.nodes.Node; |
|
|
|
|
|
|
|
import org.openide.nodes.NodeTransfer; |
|
|
|
import org.openide.util.Exceptions; |
|
|
|
import org.openide.util.Exceptions; |
|
|
|
import org.openide.util.ImageUtilities; |
|
|
|
import org.openide.util.ImageUtilities; |
|
|
|
import org.openide.util.Lookup; |
|
|
|
import org.openide.util.Lookup; |
|
|
|
|
|
|
|
import org.openide.util.datatransfer.PasteType; |
|
|
|
import org.openide.util.lookup.Lookups; |
|
|
|
import org.openide.util.lookup.Lookups; |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
/** |
|
|
@ -64,7 +67,7 @@ public class FilterPostProcessorNode extends AbstractNode { |
|
|
|
private FilterPostProcessor fpp; |
|
|
|
private FilterPostProcessor fpp; |
|
|
|
|
|
|
|
|
|
|
|
public FilterPostProcessorNode(FilterDataObject dataObject) { |
|
|
|
public FilterPostProcessorNode(FilterDataObject dataObject) { |
|
|
|
super(new FilterChildren(dataObject),Lookups.singleton(new FilterIndexSupport())); |
|
|
|
super(new FilterChildren(dataObject), Lookups.singleton(new FilterIndexSupport())); |
|
|
|
|
|
|
|
|
|
|
|
//Lookups.singleton(new FilterIndexSupport((FilterChildren)this.getChildren()));
|
|
|
|
//Lookups.singleton(new FilterIndexSupport((FilterChildren)this.getChildren()));
|
|
|
|
this.dataObject = dataObject; |
|
|
|
this.dataObject = dataObject; |
|
|
@ -73,6 +76,7 @@ public class FilterPostProcessorNode extends AbstractNode { |
|
|
|
((FilterChildren) getChildren()).setFilterPostProcessorNode(this); |
|
|
|
((FilterChildren) getChildren()).setFilterPostProcessorNode(this); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
@Override |
|
|
@ -92,6 +96,28 @@ public class FilterPostProcessorNode extends AbstractNode { |
|
|
|
return fpp; |
|
|
|
return fpp; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//this allow the reordering on drop of a Node
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
|
|
|
public PasteType getDropType(Transferable t, int action, final int index) { |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
final Node node = NodeTransfer.node(t, action); |
|
|
|
|
|
|
|
return new PasteType() { |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
|
|
|
public Transferable paste() throws IOException { |
|
|
|
|
|
|
|
FilterIndexSupport indexSupport = getLookup().lookup(FilterIndexSupport.class); |
|
|
|
|
|
|
|
int nodeIndex = indexSupport.indexOf(node); |
|
|
|
|
|
|
|
if (nodeIndex < index) { |
|
|
|
|
|
|
|
indexSupport.move(index - 1, nodeIndex); |
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
indexSupport.move(index, nodeIndex); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return null; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
}; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
public void refresh() { |
|
|
|
public void refresh() { |
|
|
|
java.awt.EventQueue.invokeLater(new Runnable() { |
|
|
|
java.awt.EventQueue.invokeLater(new Runnable() { |
|
|
|
|
|
|
|
|
|
|
@ -205,7 +231,5 @@ public class FilterPostProcessorNode extends AbstractNode { |
|
|
|
} |
|
|
|
} |
|
|
|
return new Node[]{}; |
|
|
|
return new Node[]{}; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|