Package org.erlide.cover.ui.actions

Source Code of org.erlide.cover.ui.actions.HideCoverageAction

package org.erlide.cover.ui.actions;

import org.eclipse.jface.viewers.TreeViewer;
import org.erlide.cover.core.Activator;
import org.erlide.cover.core.Logger;
import org.erlide.cover.views.model.FunctionStats;
import org.erlide.cover.views.model.ModuleStats;
import org.erlide.cover.views.model.StatsTreeObject;

/**
* Hiding annotations for specific objects
*
* @author Aleksandra Lipiec <aleksandra.lipiec@erlang-solutions.com>
*
*/
public class HideCoverageAction extends CoverageAction {

    private final Logger log; // private

    public HideCoverageAction(final TreeViewer viewer) {
        super(viewer);

        log = Activator.getDefault();
    }

    @Override
    protected void perform(final StatsTreeObject selection) {

        if (selection instanceof ModuleStats) {
            final ModuleStats module = (ModuleStats) selection;
            final String name = module.getLabel() + ".erl";
            marker.removeAnnotationsFromFile(name);
        } else if (selection instanceof FunctionStats) {
            final FunctionStats fs = (FunctionStats) selection;
            final ModuleStats module = (ModuleStats) fs.getParent();
            final String name = module.getLabel() + ".erl";

            log.info(fs.getLineStart());
            log.info(fs.getLineEnd());

            marker.removeAnnotationsFragment(name, fs.getLineStart(), fs.getLineEnd());

        } else {
            marker.clearAllAnnotations();
        }
    }

}
TOP

Related Classes of org.erlide.cover.ui.actions.HideCoverageAction

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.