package org.xmind.ui.internal.e4handlers;
import org.eclipse.e4.core.contexts.IEclipseContext;
import org.eclipse.e4.core.di.annotations.CanExecute;
import org.eclipse.e4.core.di.annotations.Execute;
import org.xmind.ui.internal.e4models.IContextRunnable;
import org.xmind.ui.internal.e4models.IModelConstants;
import org.xmind.ui.internal.utils.E4Utils;
public class DuplicateResourceHandler {
private IContextRunnable duplicateRunnable;
@Execute
public void execute() {
if (duplicateRunnable != null) {
duplicateRunnable.run();
}
}
@CanExecute
public boolean canExecute(IEclipseContext context) {
duplicateRunnable = E4Utils.getContextRunnable(context,
IModelConstants.KEY_MODEL_PART_DUPLICATE);
return duplicateRunnable != null && duplicateRunnable
.canExecute(context, IModelConstants.KEY_MODEL_PART_DUPLICATE);
}
}