class NavTreeEditor extends NavItemEditor {

    public void edit(NavTree navTree) {
        this.navTree = navTree.cloneTree();
        this.currentlyEditedItem = Optional.empty();
        view.setChangedFlag(false);

        NavGroup rootGroup = NavFactory.get().createNavGroup(navTree);
        rootGroup.setId(ROOT_GROUP_ID);

        // Only allow the creation of groups in the first tree level
        getSettings().setNewDividerEnabled(ROOT_GROUP_ID, false);
        getSettings().setNewPerspectiveEnabled(ROOT_GROUP_ID, false);

        super.edit(rootGroup);
        super.expand();
    }

    @Inject public  NavTreeEditor(NavTreeEditorView view,
                         NavigationManager navigationManager,
                         SyncBeanManager beanManager,
                         PlaceManager placeManager,
                         PerspectiveTreeProvider perspectiveTreeProvider,
                         TargetPerspectiveEditor targetPerspectiveEditor,
                         PerspectivePluginManager perspectivePluginManager,
                         Event<NavItemEditStartedEvent> navItemEditStartedEvent,
                         Event<NavItemEditCancelledEvent> navItemEditCancelledEvent);

}