--- a/apisupport.feedreader/feedreader-suite/FeedReader/nbproject/project.xml
+++ a/apisupport.feedreader/feedreader-suite/FeedReader/nbproject/project.xml
@@ -23,6 +23,15 @@
+ org.netbeans.modules.settings
+
+
+
+ 1
+ 1.29
+
+
+
org.openide.actions
--- a/apisupport.feedreader/feedreader-suite/FeedReader/src/org/netbeans/feedreader/FeedTopComponent.java
+++ a/apisupport.feedreader/feedreader-suite/FeedReader/src/org/netbeans/feedreader/FeedTopComponent.java
@@ -30,8 +30,10 @@
package org.netbeans.feedreader;
import java.awt.BorderLayout;
-import java.io.Serializable;
import javax.swing.ActionMap;
+import org.netbeans.api.settings.ConvertAsProperties;
+import org.openide.awt.ActionID;
+import org.openide.awt.ActionReference;
import org.openide.explorer.ExplorerManager;
import org.openide.explorer.ExplorerUtils;
import org.openide.explorer.view.BeanTreeView;
@@ -41,13 +43,19 @@
import org.openide.util.NbBundle;
import org.openide.windows.TopComponent;
-final class FeedTopComponent extends TopComponent implements ExplorerManager.Provider {
+@ConvertAsProperties(dtd = "-//org.netbeans.feedreader//FeedTopComponent//EN", autostore = false)
+@TopComponent.Description(preferredID = "FeedTopComponent", iconBase="org/netbeans/feedreader/rss16.gif",
+persistenceType = TopComponent.PERSISTENCE_ALWAYS)
+@TopComponent.Registration(mode = "explorer", openAtStartup = true)
+@ActionID(category = "Window", id = "org.netbeans.feedreader.FeedTopComponent")
+@ActionReference(path = "Menu/Window", position=10)
+@TopComponent.OpenActionRegistration(displayName = "#CTL_FeedAction", preferredID = "FeedTopComponent")
+public final class FeedTopComponent extends TopComponent implements ExplorerManager.Provider {
private static FeedTopComponent instance;
-
private final ExplorerManager manager = new ExplorerManager();
private final BeanTreeView view = new BeanTreeView();
-
+
private FeedTopComponent() {
setName(NbBundle.getMessage(FeedTopComponent.class, "CTL_FeedTopComponent"));
setToolTipText(NbBundle.getMessage(FeedTopComponent.class, "HINT_FeedTopComponent"));
@@ -64,41 +72,21 @@
map.put("delete", ExplorerUtils.actionDelete(manager, true));
associateLookup(ExplorerUtils.createLookup(manager, map));
}
-
- public static synchronized FeedTopComponent getDefault() {
- if (instance == null) {
- instance = new FeedTopComponent();
- }
- return instance;
+
+ void writeProperties(java.util.Properties p) {
+ // better to version settings since initial version as advocated at
+ // http://wiki.apidesign.org/wiki/PropertyFiles
+ p.setProperty("version", "1.0");
+ // TODO store your settings
}
-
- @Override
- public int getPersistenceType() {
- return TopComponent.PERSISTENCE_ALWAYS;
+
+ void readProperties(java.util.Properties p) {
+ String version = p.getProperty("version");
+ // TODO read your settings according to their version
}
-
- @Override
- protected String preferredID() {
- return "FeedTopComponent";
- }
-
- @Override
- protected Object writeReplace() {
- return new ResolvableHelper();
- }
-
- private static final class ResolvableHelper implements Serializable {
-
- private static final long serialVersionUID = 1L;
-
- public Object readResolve() {
- return FeedTopComponent.getDefault();
- }
-
- }
-
+
public ExplorerManager getExplorerManager() {
return manager;
}
-
+
}
--- a/apisupport.feedreader/feedreader-suite/FeedReader/src/org/netbeans/feedreader/FeedTopComponentSettings.xml
+++ a/apisupport.feedreader/feedreader-suite/FeedReader/src/org/netbeans/feedreader/FeedTopComponentSettings.xml
@@ -1,36 +0,0 @@
-
-
-
-
-
-
-
-
--- a/apisupport.feedreader/feedreader-suite/FeedReader/src/org/netbeans/feedreader/FeedTopComponentWstcref.xml
+++ a/apisupport.feedreader/feedreader-suite/FeedReader/src/org/netbeans/feedreader/FeedTopComponentWstcref.xml
@@ -1,40 +0,0 @@
-
-
-
-
-
-
-
-
-
-
--- a/apisupport.feedreader/feedreader-suite/FeedReader/src/org/netbeans/feedreader/layer.xml
+++ a/apisupport.feedreader/feedreader-suite/FeedReader/src/org/netbeans/feedreader/layer.xml
@@ -30,16 +30,6 @@
THE POSSIBILITY OF SUCH DAMAGE.
-->
-
-
-
-
-
-
-
-
-
-
@@ -50,13 +40,6 @@
-
-
-
-
-
-
-
@@ -67,14 +50,4 @@
-
-
-
-
-
-
-
-
-
-
--- a/apisupport.feedreader/feedreader-suite/nbproject/build-impl.xml
+++ a/apisupport.feedreader/feedreader-suite/nbproject/build-impl.xml
@@ -38,5 +38,12 @@
+
+
+
+
+
+
+
--- a/apisupport.feedreader/feedreader-suite/nbproject/genfiles.properties
+++ a/apisupport.feedreader/feedreader-suite/nbproject/genfiles.properties
@@ -1,8 +1,8 @@
build.xml.data.CRC32=a89c5057
build.xml.script.CRC32=9a0e0f71
-build.xml.stylesheet.CRC32=531c622b@1.30.0.7
+build.xml.stylesheet.CRC32=eaf9f76a@1.44
# This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml.
# Do not edit this file. You may delete it but then the IDE will never regenerate such files for you.
nbproject/build-impl.xml.data.CRC32=a89c5057
-nbproject/build-impl.xml.script.CRC32=7f46473b
-nbproject/build-impl.xml.stylesheet.CRC32=2f5f2db8@1.30.0.7
+nbproject/build-impl.xml.script.CRC32=6245c318
+nbproject/build-impl.xml.stylesheet.CRC32=183e6ef3@1.44