diff -r 38948c5f237c core.windows/nbproject/project.xml --- a/core.windows/nbproject/project.xml Sat Aug 27 18:48:39 2011 +0200 +++ b/core.windows/nbproject/project.xml Sat Aug 27 19:23:33 2011 +0200 @@ -67,7 +67,7 @@ 1.6 - + org.netbeans.modules.settings @@ -133,7 +133,7 @@ - 4.15 + 7.30 diff -r 38948c5f237c core.windows/src/org/netbeans/core/windows/view/ui/toolbars/ToolbarConfiguration.java --- a/core.windows/src/org/netbeans/core/windows/view/ui/toolbars/ToolbarConfiguration.java Sat Aug 27 18:48:39 2011 +0200 +++ b/core.windows/src/org/netbeans/core/windows/view/ui/toolbars/ToolbarConfiguration.java Sat Aug 27 19:23:33 2011 +0200 @@ -151,12 +151,23 @@ } } + @NbBundle.Messages({ + "MSG_ToolbarsInitializing=Initializing..." + }) private void fillToolbarsMenu (JComponent menu, boolean isContextMenu) { + final ToolbarPool pool = getToolbarPool(); + if (!pool.isFinished()) { + final JMenuItem mi = new JMenuItem(); + mi.setText(Bundle.MSG_ToolbarsInitializing()); + mi.setEnabled(false); + menu.add(mi); + return; + } boolean fullScreen = MainWindow.getInstance().isFullScreenMode(); Map name2constr = collectAllConstraints(); // generate list of available toolbars - for( Toolbar tb : getToolbarPool().getToolbars() ) { + for( Toolbar tb : pool.getToolbars() ) { final Toolbar bar = tb; final String tbName = tb.getName(); ToolbarConstraints tc = name2constr.get(tbName); diff -r 38948c5f237c openide.loaders/apichanges.xml --- a/openide.loaders/apichanges.xml Sat Aug 27 18:48:39 2011 +0200 +++ b/openide.loaders/apichanges.xml Sat Aug 27 19:23:33 2011 +0200 @@ -109,6 +109,21 @@ + + + Introduced Template + + + + + +

+ One can find out if ToolbarPool is initialized. +

+
+ + +
Introduced Template diff -r 38948c5f237c openide.loaders/manifest.mf --- a/openide.loaders/manifest.mf Sat Aug 27 18:48:39 2011 +0200 +++ b/openide.loaders/manifest.mf Sat Aug 27 19:23:33 2011 +0200 @@ -1,6 +1,6 @@ Manifest-Version: 1.0 OpenIDE-Module: org.openide.loaders -OpenIDE-Module-Specification-Version: 7.29 +OpenIDE-Module-Specification-Version: 7.30 OpenIDE-Module-Localizing-Bundle: org/openide/loaders/Bundle.properties OpenIDE-Module-Provides: org.netbeans.modules.templates.v1_0 OpenIDE-Module-Layer: org/netbeans/modules/openide/loaders/layer.xml diff -r 38948c5f237c openide.loaders/src/org/openide/awt/ToolbarPool.java --- a/openide.loaders/src/org/openide/awt/ToolbarPool.java Sat Aug 27 18:48:39 2011 +0200 +++ b/openide.loaders/src/org/openide/awt/ToolbarPool.java Sat Aug 27 19:23:33 2011 +0200 @@ -199,6 +199,15 @@ public final void waitFinished () { instance.waitFinished(); } + + /** Check whether all data needed for the toolbar are read from disk. + * + * @return true if {@link #waitFinished} and other getters will return immediately + * @since 7.30 + */ + public final boolean isFinished() { + return instance.isFinished(); + } /** Initialization of new values. * @param toolbars map (String, Toolbar) of toolbars