1 package org.weda.store.actions;
2
3 import org.weda.action.Action;
4 import org.weda.action.ActionContainer;
5 import org.weda.action.ActionState;
6 import org.weda.store.ObjectSource;
7 import org.weda.action.impl.AbstractAction;
8 import org.weda.action.impl.ActionStateImpl;
9 import org.weda.store.ObjectSource.Mode;
10
11 /**Цель действия: удаление выделенных строк в экземпляре класса
12 * {@link org.weda.db.DataSource}.
13 *
14 * @author Mikhail Titov
15 */
16 public class ObjectSourceDeleteAction extends AbstractAction {
17
18 public ActionState getActionState(ActionContainer targetObject) {
19 ObjectSource ds = (ObjectSource)targetObject;
20 return new ActionStateImpl(
21 ds.getMode() != Mode.EDIT && !ds.isReadOnly()
22 , ds.hasSelectedRows());
23 }
24
25 public Object execute(ActionContainer targetObject) throws Exception {
26 ((ObjectSource)targetObject).removeSelectedRows();
27 return null;
28 }
29
30 }