ItEr42S17CUGravacionModelosUnidadesTraballoItEr41S20: updateControlButtons must be at TreeController since it's used when selecting a tree row.

This commit is contained in:
Óscar González Fernández 2010-01-06 01:25:59 +01:00
parent 747baaffb8
commit bdbe7777da
2 changed files with 27 additions and 24 deletions

View file

@ -56,7 +56,6 @@ import org.zkoss.zul.Label;
import org.zkoss.zul.Messagebox;
import org.zkoss.zul.Tab;
import org.zkoss.zul.Textbox;
import org.zkoss.zul.Tree;
import org.zkoss.zul.Treecell;
import org.zkoss.zul.Treeitem;
import org.zkoss.zul.Vbox;
@ -584,29 +583,6 @@ public class OrderElementTreeController extends TreeController<OrderElement> {
return isPredicateApplied();
}
/**
* Disable control buttons (new, up, down, indent, unindent, delete)
*/
public void updateControlButtons(Event event) {
updateControlButtons((Tree) event.getTarget());
}
public void updateControlButtons(Tree tree) {
final Treeitem item = tree.getSelectedItem();
boolean disabledLevel1 = isNewButtonDisabled()
&& isFirstLevelElement(item);
boolean disabledLevel2 = isNewButtonDisabled()
&& (isFirstLevelElement(item) || isSecondLevelElement(item));
btnNew.setDisabled(false);
btnDown.setDisabled(disabledLevel1);
btnUp.setDisabled(disabledLevel1);
btnUnindent.setDisabled(disabledLevel2);
btnIndent.setDisabled(disabledLevel1);
btnDelete.setDisabled(false);
}
/**
* Clear {@link BandboxSearch} for Labels, and initializes
* {@link IPredicate}

View file

@ -37,6 +37,7 @@ import org.navalplanner.web.tree.TreeComponent.Column;
import org.zkoss.zk.ui.Component;
import org.zkoss.zk.ui.WrongValueException;
import org.zkoss.zk.ui.event.DropEvent;
import org.zkoss.zk.ui.event.Event;
import org.zkoss.zk.ui.event.EventListener;
import org.zkoss.zk.ui.util.GenericForwardComposer;
import org.zkoss.zul.Button;
@ -387,4 +388,30 @@ public abstract class TreeController<T extends ITreeNode<T>> extends
this.columns = columns;
}
/**
* Disable control buttons (new, up, down, indent, unindent, delete)
*/
public void updateControlButtons(Event event) {
updateControlButtons((Tree) event.getTarget());
}
public void updateControlButtons(Tree tree) {
final Treeitem item = tree.getSelectedItem();
if (item == null) {
resetControlButtons();
return;
}
boolean disabledLevel1 = isNewButtonDisabled()
&& isFirstLevelElement(item);
boolean disabledLevel2 = isNewButtonDisabled()
&& (isFirstLevelElement(item) || isSecondLevelElement(item));
btnNew.setDisabled(false);
btnDown.setDisabled(disabledLevel1);
btnUp.setDisabled(disabledLevel1);
btnUnindent.setDisabled(disabledLevel2);
btnIndent.setDisabled(disabledLevel1);
btnDelete.setDisabled(false);
}
}