gov.redhawk.ui.views.domainbrowser.actions.CollapseAllHandler.java Source code

Java tutorial

Introduction

Here is the source code for gov.redhawk.ui.views.domainbrowser.actions.CollapseAllHandler.java

Source

/** 
 * This file is protected by Copyright. 
 * Please refer to the COPYRIGHT file distributed with this source distribution.
 * 
 * This file is part of REDHAWK IDE.
 * 
 * All rights reserved.  This program and the accompanying materials are made available under 
 * the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v10.html.
 *
 */
package gov.redhawk.ui.views.domainbrowser.actions;

import gov.redhawk.ui.views.domainbrowser.view.DomainBrowserView;

import org.eclipse.core.commands.AbstractHandler;
import org.eclipse.core.commands.ExecutionEvent;
import org.eclipse.core.commands.ExecutionException;
import org.eclipse.core.commands.IHandler;
import org.eclipse.jface.viewers.TreeViewer;
import org.eclipse.ui.IWorkbenchPart;
import org.eclipse.ui.handlers.HandlerUtil;

public class CollapseAllHandler extends AbstractHandler implements IHandler {

    @Override
    public Object execute(final ExecutionEvent event) throws ExecutionException {
        final IWorkbenchPart part = HandlerUtil.getActivePart(event);

        if (part != null && part instanceof DomainBrowserView) {
            final TreeViewer viewer = ((DomainBrowserView) part).getTreeViewer();

            if (viewer != null && !viewer.getTree().isDisposed()) {
                viewer.collapseAll();
            }
        }

        return null;
    }

    @Override
    public boolean isEnabled() {
        return true;
    }
}