Package org.erlide.test_support.ui.trace

Source Code of org.erlide.test_support.ui.trace.ToggleTracepointHandler

package org.erlide.test_support.ui.trace;

import org.eclipse.core.resources.IFile;
import org.eclipse.core.resources.IMarker;
import org.eclipse.core.resources.IResource;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.jface.viewers.ISelection;
import org.eclipse.ui.ide.ResourceUtil;
import org.eclipse.ui.texteditor.ITextEditor;
import org.erlide.ui.handlers.ErlangAbstractHandler;

public class ToggleTracepointHandler extends ErlangAbstractHandler {

    @Override
    protected void doAction(final ISelection sel, final ITextEditor textEditor) {
        System.out.println("TOGGLE TRACEPOINT ");

        final IFile file = ResourceUtil.getFile(textEditor.getEditorInput());
        try {
            final IMarker[] markers = file.findMarkers(
                    "org.erlide.test_support.tracingmarker", true, IResource.DEPTH_ONE);
            if (markers.length == 0) {
                System.out.println("create");
                final IMarker m = file
                        .createMarker("org.erlide.test_support.tracingmarker");
                m.setAttribute(IMarker.LINE_NUMBER, 5);
                m.setAttribute(IMarker.LOCATION, "5");
                m.setAttribute(IMarker.MESSAGE, "msg");
            } else {
                System.out.println("delete");
                markers[0].delete();
            }
        } catch (final CoreException e) {
            e.printStackTrace();
        }
    }

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

    @Override
    public void setEnabled(final Object evaluationContext) {
        super.setEnabled(evaluationContext);
    }
}
TOP

Related Classes of org.erlide.test_support.ui.trace.ToggleTracepointHandler

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.