Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
 /*
  * Copyright 2011 JBoss Inc
  *
  *   Licensed under the Apache License, Version 2.0 (the "License");
  *   you may not use this file except in compliance with the License.
  *   You may obtain a copy of the License at
  *
  *         http://www.apache.org/licenses/LICENSE-2.0
  *
 *   Unless required by applicable law or agreed to in writing, software
 *   distributed under the License is distributed on an "AS IS" BASIS,
 *   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 *   See the License for the specific language governing permissions and
 *   limitations under the License.
 */
package org.drools.guvnor.client.explorer.navigation;
public class NavigationPanel implements ChangePerspectiveEvent.HandlerIsWidget {
    private final NavigationPanelView view;
    private final ClientFactory clientFactory;
    private final ResettableEventBus eventBus;
    public NavigationPanel(ClientFactory clientFactoryEventBus eventBus) {
         = clientFactory.getNavigationViewFactory().getNavigationPanelView();
        eventBus.addHandler(.this);
        this. = new ResettableEventBus(eventBus);
        this. = clientFactory;
    }
    public void add(IsWidget headerIsWidget content) {
        .add(headercontent);
    }
    public void onChangePerspective(ChangePerspectiveEvent changePerspectiveEvent) {
        .clear();
        .removeHandlers();
        addNavigationItems(changePerspectiveEvent);
    }
    private void addNavigationItems(ChangePerspectiveEvent changePerspectiveEvent) {
        for (NavigationItemBuilder navigationItemBuilder : changePerspectiveEvent.getPerspective()
                .getBuilders()) {
            addNavigationItem(navigationItemBuilder);
        }
    }
    private void addNavigationItem(NavigationItemBuilder navigationItemBuilder) {
        if (navigationItemBuilder.hasPermissionToBuild()) {
            .add(navigationItemBuilder.getHeader(), navigationItemBuilder.getContent());
        }
    }
    public Widget asWidget() {
        return .asWidget();
    }
New to GrepCode? Check out our FAQ X