package com.example.e4.rcp.todo.handlers;
import javax.inject.Named;
import org.eclipse.e4.core.di.annotations.Execute;
import org.eclipse.e4.core.di.annotations.Optional;
import org.eclipse.e4.ui.services.IServiceConstants;
import org.eclipse.jface.dialogs.MessageDialog;
import org.eclipse.swt.widgets.Shell;
import com.example.e4.rcp.todo.model.ITodoService;
import com.example.e4.rcp.todo.model.Todo;
public class RemoveTodoHandler {
@Execute
public void execute(ITodoService todoService,
@Optional @Named(IServiceConstants.ACTIVE_SELECTION) Todo todo,
@Named (IServiceConstants.ACTIVE_SHELL) Shell shell
) {
if (todo != null) {
todoService.deleteTodo(todo.getId());
} else {
MessageDialog.openInformation(shell, "Deletion not possible",
"No todo selected");
}
}
}