1.1 --- a/visualweb.project.jsfloader/nbproject/project.xml Wed Mar 21 20:53:08 2007 +0000
1.2 +++ b/visualweb.project.jsfloader/nbproject/project.xml Wed Mar 21 21:15:47 2007 +0000
1.3 @@ -129,6 +129,15 @@
1.4 </run-dependency>
1.5 </dependency>
1.6 <dependency>
1.7 + <code-name-base>org.netbeans.spi.navigator</code-name-base>
1.8 + <build-prerequisite/>
1.9 + <compile-dependency/>
1.10 + <run-dependency>
1.11 + <release-version>1</release-version>
1.12 + <specification-version>1.4</specification-version>
1.13 + </run-dependency>
1.14 + </dependency>
1.15 + <dependency>
1.16 <code-name-base>org.netbeans.spi.palette</code-name-base>
1.17 <build-prerequisite/>
1.18 <compile-dependency/>
2.1 --- a/visualweb.project.jsfloader/src/org/netbeans/modules/visualweb/project/jsfloader/JsfJavaEditorSupport.java Wed Mar 21 20:53:08 2007 +0000
2.2 +++ b/visualweb.project.jsfloader/src/org/netbeans/modules/visualweb/project/jsfloader/JsfJavaEditorSupport.java Wed Mar 21 21:15:47 2007 +0000
2.3 @@ -43,6 +43,7 @@
2.4 import javax.swing.text.Document;
2.5 import org.netbeans.api.project.FileOwnerQuery;
2.6 import org.netbeans.api.project.Project;
2.7 +import org.netbeans.spi.navigator.NavigatorLookupHint;
2.8 import org.netbeans.spi.palette.PaletteController;
2.9 import org.netbeans.spi.palette.PaletteFactory;
2.10
2.11 @@ -52,9 +53,7 @@
2.12 import org.openide.cookies.CloseCookie;
2.13 import org.openide.cookies.PrintCookie;
2.14 import org.openide.loaders.*;
2.15 -import org.openide.cookies.EditCookie;
2.16 import org.openide.cookies.EditorCookie;
2.17 -import org.openide.cookies.OpenCookie;
2.18 import org.openide.cookies.PrintCookie;
2.19 import org.openide.cookies.SaveCookie;
2.20 import org.openide.filesystems.FileObject;
2.21 @@ -71,11 +70,9 @@
2.22 import org.openide.util.Utilities;
2.23 import org.openide.util.lookup.Lookups;
2.24 import org.openide.util.lookup.ProxyLookup;
2.25 -import org.openide.windows.CloneableOpenSupport;
2.26 import org.openide.windows.CloneableTopComponent;
2.27 import org.openide.windows.Mode;
2.28 import org.openide.windows.TopComponent;
2.29 -import org.openide.windows.TopComponentGroup;
2.30 import org.openide.windows.WindowManager;
2.31
2.32 // <multiview>
2.33 @@ -623,7 +620,7 @@
2.34 private static class JavaDesc implements MultiViewDescription, Serializable {
2.35
2.36 private static final long serialVersionUID =-3126744316624172415L;
2.37 -
2.38 +
2.39 private JsfJavaDataObject jsfJavaDataObject;
2.40
2.41
2.42 @@ -681,6 +678,12 @@
2.43 private static class JavaEditorTopComponent extends CloneableEditor
2.44 implements MultiViewElement, CloneableEditorSupport.Pane {
2.45 private static final long serialVersionUID =-3126744316624172415L;
2.46 + private static final NavigatorLookupHint NAVIGATOR_HINT =
2.47 + new NavigatorLookupHint() {
2.48 + public String getContentType() {
2.49 + return "text/x-java"; // NOI18N
2.50 + }
2.51 + };
2.52
2.53 private transient JComponent toolbar;
2.54
2.55 @@ -695,17 +698,25 @@
2.56
2.57 JavaEditorTopComponent(CloneableEditorSupport ces) {
2.58 super(ces);
2.59 - initializePalette();
2.60 -
2.61 + initialize();
2.62 }
2.63
2.64 public void readExternal (ObjectInput in)
2.65 throws IOException, ClassNotFoundException {
2.66 //required to do this to make sure cloneableEditorSupport is deserialized.
2.67 super.readExternal(in);
2.68 - initializePalette();
2.69 + initialize();
2.70 }
2.71
2.72 + private void initialize() {
2.73 + DataObject jsfJavaDataObject = ((JsfJavaEditorSupport)cloneableEditorSupport()).getDataObject();
2.74 + if(jsfJavaDataObject != null) {
2.75 + setActivatedNodes(new Node[] {jsfJavaDataObject.getNodeDelegate()});
2.76 + }
2.77 +
2.78 + initializePalette();
2.79 + }
2.80 +
2.81 // XXX PaletteController
2.82 private void initializePalette() {
2.83
2.84 @@ -896,19 +907,17 @@
2.85 if (lookup == null) {
2.86 Lookup superLookup = super.getLookup();
2.87 if (javaPaletteController == null) {
2.88 - lookup = new ProxyLookup(new Lookup[] {superLookup});
2.89 + lookup = new ProxyLookup(new Lookup[] {superLookup, Lookups.singleton(NAVIGATOR_HINT)});
2.90 } else {
2.91 DataObject dObj = ((JsfJavaEditorSupport)cloneableEditorSupport()).getDataObject();
2.92 - lookup = new ProxyLookup(new Lookup[] {superLookup, Lookups.singleton(javaPaletteController), Lookups.singleton(dObj)});
2.93 + lookup = new ProxyLookup(new Lookup[] {superLookup, Lookups.fixed(NAVIGATOR_HINT, javaPaletteController)});
2.94 }
2.95 lookupWRef = new WeakReference(lookup);
2.96 }
2.97 -
2.98 return lookup;
2.99 }
2.100 }
2.101
2.102 -
2.103 // XXX This is a bit strange class? What is a reason of that?
2.104 /** Implementation of CloseOperationHandler for multiview. Ensures both form
2.105 * and java editor are correctly closed, data saved, etc. Holds a reference