2 package eu
.etaxonomy
.taxeditor
.navigation
;
4 import org
.eclipse
.core
.runtime
.IProgressMonitor
;
5 import org
.eclipse
.ui
.IMemento
;
7 import eu
.etaxonomy
.taxeditor
.model
.ContextListenerAdapter
;
8 import eu
.etaxonomy
.taxeditor
.navigation
.navigator
.TaxonNavigator
;
11 * <p>NavigatorStateManager class.</p>
14 * @created Apr 1, 2010
17 public class NavigatorStateManager
extends ContextListenerAdapter
{
22 * Tries to restore the state of the taxon editor and the navigator when a context starts.
25 public void contextStart(IMemento memento
, IProgressMonitor monitor
) {
26 TaxonNavigator navigator
= NavigationUtil
.getNavigator(true);
27 if(navigator
!= null){
29 navigator
.restore(memento
, monitor
);
39 public void contextStop(IMemento memento
, IProgressMonitor monitor
) {
40 saveNavigatorState(memento
, monitor
);
45 * @see eu.etaxonomy.taxeditor.model.ContextListenerAdapter#workbenchShutdown(org.eclipse.ui.IMemento, org.eclipse.core.runtime.IProgressMonitor)
49 public void workbenchShutdown(IMemento memento
, IProgressMonitor monitor
) {
50 saveNavigatorState(memento
, monitor
);
56 private void saveNavigatorState(IMemento memento
, IProgressMonitor monitor
) {
57 TaxonNavigator navigator
= NavigationUtil
.getNavigator(false);
58 if(navigator
!= null){
59 navigator
.save(memento
, monitor
);
64 * Removes all content form the TaxonNavigator
66 private void clearNavigator() {
67 TaxonNavigator navigator
= NavigationUtil
.getNavigator(false);
68 if(navigator
!= null){