blob: fb2bdaaface37d643770617065894897bde9568a [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2008 IBM Corporation and others.
* 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
*
* Contributors:
* IBM Corporation - initial API and implementation
*******************************************************************************/
package org.eclipse.debug.examples.ui.midi.adapters;
import org.eclipse.core.runtime.IStatus;
import org.eclipse.core.runtime.Status;
import org.eclipse.debug.core.commands.IDebugCommandRequest;
import org.eclipse.debug.core.commands.IEnabledStateRequest;
import org.eclipse.debug.core.commands.IStepOverHandler;
/**
* Provides an example command handler for the step over action.
* On execute, it simply returns a status that is opened in an
* error dialog.
*/
public class MidiStepOverHandler implements IStepOverHandler {
/* (non-Javadoc)
* @see org.eclipse.debug.core.commands.IDebugCommandHandler#canExecute(org.eclipse.debug.core.commands.IEnabledStateRequest)
*/
public void canExecute(IEnabledStateRequest request) {
// We could create a job here, schedule it, then return to be asynchronous
request.setEnabled(request.getElements().length > 0);
request.done();
}
/* (non-Javadoc)
* @see org.eclipse.debug.core.commands.IDebugCommandHandler#execute(org.eclipse.debug.core.commands.IDebugCommandRequest)
*/
public boolean execute(IDebugCommandRequest request) {
// We could create a job to do this work, schedule it, then return to be asynchronous
// If running asynchronously, remember to return the enablement you want the action to have while this action is run
request.setStatus(new Status(IStatus.WARNING,"org.eclipse.debug.examples.ui","This is an example command handler overriding the default using an adapter on " + request.getElements()[0].getClass().getName()));
request.done();
return true;
}
}