Author: tchemit Date: 2008-01-22 09:36:47 +0000 (Tue, 22 Jan 2008) New Revision: 401 Modified: trunk/simexplorer-is-swing/src/java/fr/cemagref/simexplorer/is/ui/swing/action/pagination/GoFirstPageAction.java trunk/simexplorer-is-swing/src/java/fr/cemagref/simexplorer/is/ui/swing/action/pagination/GoLastPageAction.java trunk/simexplorer-is-swing/src/java/fr/cemagref/simexplorer/is/ui/swing/action/pagination/GoNextPageAction.java trunk/simexplorer-is-swing/src/java/fr/cemagref/simexplorer/is/ui/swing/action/pagination/GoPreviousPageAction.java Log: surcharge de l'action ChangePageAction Modified: trunk/simexplorer-is-swing/src/java/fr/cemagref/simexplorer/is/ui/swing/action/pagination/GoFirstPageAction.java =================================================================== --- trunk/simexplorer-is-swing/src/java/fr/cemagref/simexplorer/is/ui/swing/action/pagination/GoFirstPageAction.java 2008-01-22 09:36:23 UTC (rev 400) +++ trunk/simexplorer-is-swing/src/java/fr/cemagref/simexplorer/is/ui/swing/action/pagination/GoFirstPageAction.java 2008-01-22 09:36:47 UTC (rev 401) @@ -18,8 +18,12 @@ * ##% */ package fr.cemagref.simexplorer.is.ui.swing.action.pagination; -import fr.cemagref.simexplorer.is.ui.swing.action.SimExplorerAbstractTabAction; +import fr.cemagref.simexplorer.is.ui.swing.model.ListTabModel; +import javax.swing.Action; +import javax.swing.JButton; +import java.awt.event.ActionEvent; + /** * Action pour lancer une recherche d'application * @@ -34,17 +38,31 @@ mnemonic = 'f', hideActionText = true ) -public class GoFirstPageAction extends SimExplorerAbstractTabAction { +public class GoFirstPageAction extends ChangePageAction { private static final long serialVersionUID = -7292269279566418188L; public GoFirstPageAction(String name) { - super(name, null); + super(name); } @Override - public void actionPerformed(java.awt.event.ActionEvent e) { - super.actionPerformed(e); - //TODO + protected boolean beforeAction(ActionEvent e) throws Exception { + if (!getButton().isEnabled()) { + return false; + } + ListTabModel model = (ListTabModel) getModel(); + Integer oldPage = model.getPagination().getCurrentPage(); + boolean b = oldPage > 0; + if (b) { + newPage = 0; + } + return b; } + + protected JButton getButton() { + return (JButton) getUIObject((String) super.getValue(Action.ACTION_COMMAND_KEY)); + } + + } \ No newline at end of file Modified: trunk/simexplorer-is-swing/src/java/fr/cemagref/simexplorer/is/ui/swing/action/pagination/GoLastPageAction.java =================================================================== --- trunk/simexplorer-is-swing/src/java/fr/cemagref/simexplorer/is/ui/swing/action/pagination/GoLastPageAction.java 2008-01-22 09:36:23 UTC (rev 400) +++ trunk/simexplorer-is-swing/src/java/fr/cemagref/simexplorer/is/ui/swing/action/pagination/GoLastPageAction.java 2008-01-22 09:36:47 UTC (rev 401) @@ -18,8 +18,12 @@ * ##% */ package fr.cemagref.simexplorer.is.ui.swing.action.pagination; -import fr.cemagref.simexplorer.is.ui.swing.action.SimExplorerAbstractTabAction; +import fr.cemagref.simexplorer.is.ui.swing.model.ListTabModel; +import javax.swing.Action; +import javax.swing.JButton; +import java.awt.event.ActionEvent; + /** * Action pour lancer une recherche d'application * @@ -34,17 +38,30 @@ mnemonic = 'f', hideActionText = true ) -public class GoLastPageAction extends SimExplorerAbstractTabAction { +public class GoLastPageAction extends ChangePageAction { private static final long serialVersionUID = 3453164752580608948L; public GoLastPageAction(String name) { - super(name, null); + super(name); } @Override - public void actionPerformed(java.awt.event.ActionEvent e) { - super.actionPerformed(e); - //TODO + protected boolean beforeAction(ActionEvent e) throws Exception { + if (!getButton().isEnabled()) { + return false; + } + ListTabModel model = (ListTabModel) getModel(); + Integer oldPage = model.getPagination().getCurrentPage(); + boolean b = oldPage < model.getPagination().getNbPages(); + if (b) { + newPage = getChangePageComboBox().getItemCount() - 1; + } + return b; } + + protected JButton getButton() { + return (JButton) getUIObject((String) getValue(Action.ACTION_COMMAND_KEY)); + } + } \ No newline at end of file Modified: trunk/simexplorer-is-swing/src/java/fr/cemagref/simexplorer/is/ui/swing/action/pagination/GoNextPageAction.java =================================================================== --- trunk/simexplorer-is-swing/src/java/fr/cemagref/simexplorer/is/ui/swing/action/pagination/GoNextPageAction.java 2008-01-22 09:36:23 UTC (rev 400) +++ trunk/simexplorer-is-swing/src/java/fr/cemagref/simexplorer/is/ui/swing/action/pagination/GoNextPageAction.java 2008-01-22 09:36:47 UTC (rev 401) @@ -18,8 +18,12 @@ * ##% */ package fr.cemagref.simexplorer.is.ui.swing.action.pagination; -import fr.cemagref.simexplorer.is.ui.swing.action.SimExplorerAbstractAction; +import fr.cemagref.simexplorer.is.ui.swing.model.ListTabModel; +import javax.swing.Action; +import javax.swing.JButton; +import java.awt.event.ActionEvent; + /** * Action pour lancer une recherche d'application * @@ -34,7 +38,7 @@ mnemonic = 'f', hideActionText = true ) -public class GoNextPageAction extends SimExplorerAbstractAction { +public class GoNextPageAction extends ChangePageAction { private static final long serialVersionUID = 836465304625059733L; @@ -42,4 +46,21 @@ super(name); } + @Override + protected boolean beforeAction(ActionEvent e) throws Exception { + if (!getButton().isEnabled()) { + return false; + } + ListTabModel model = (ListTabModel) getModel(); + Integer oldPage = model.getPagination().getCurrentPage(); + boolean b = oldPage < model.getPagination().getNbPages(); + if (b) { + newPage = getChangePageComboBox().getSelectedIndex() + 1; + } + return b; + } + + protected JButton getButton() { + return (JButton) getUIObject((String) getValue(Action.ACTION_COMMAND_KEY)); + } } \ No newline at end of file Modified: trunk/simexplorer-is-swing/src/java/fr/cemagref/simexplorer/is/ui/swing/action/pagination/GoPreviousPageAction.java =================================================================== --- trunk/simexplorer-is-swing/src/java/fr/cemagref/simexplorer/is/ui/swing/action/pagination/GoPreviousPageAction.java 2008-01-22 09:36:23 UTC (rev 400) +++ trunk/simexplorer-is-swing/src/java/fr/cemagref/simexplorer/is/ui/swing/action/pagination/GoPreviousPageAction.java 2008-01-22 09:36:47 UTC (rev 401) @@ -18,15 +18,10 @@ * ##% */ package fr.cemagref.simexplorer.is.ui.swing.action.pagination; -import fr.cemagref.simexplorer.is.ui.swing.SimExplorerActionManager; -import fr.cemagref.simexplorer.is.ui.swing.action.SimExplorerAbstractTabAction; import fr.cemagref.simexplorer.is.ui.swing.model.ListTabModel; -import javax.swing.AbstractAction; -import javax.swing.AbstractButton; import javax.swing.Action; import javax.swing.JButton; -import javax.swing.JComboBox; import java.awt.event.ActionEvent; /** @@ -43,12 +38,12 @@ mnemonic = 'f', hideActionText = true ) -public class GoPreviousPageAction extends SimExplorerAbstractTabAction { +public class GoPreviousPageAction extends ChangePageAction { private static final long serialVersionUID = 3318383412609641337L; public GoPreviousPageAction(String name) { - super(name, null); + super(name); } @Override @@ -58,28 +53,16 @@ } ListTabModel model = (ListTabModel) getModel(); Integer oldPage = model.getPagination().getCurrentPage(); - return oldPage > 0; + boolean b = oldPage > 0; + if (b) { + newPage = oldPage - 1; + } + return b; } - @Override - protected void doAction(ActionEvent e) throws Exception { - // change value in combo-box, will trigger ChangePageAction - getComboBox().setSelectedIndex(getComboBox().getSelectedIndex() - 1); - } - - @Override - protected void clear() { - super.clear(); - setTab(null); - } - protected JButton getButton() { return (JButton) getUIObject((String) getValue(Action.ACTION_COMMAND_KEY)); } - protected JComboBox getComboBox() { - AbstractAction action = SimExplorerActionManager.newAction("goPage", (AbstractButton) null); - return (JComboBox) getUIObject((String) action.getValue(Action.ACTION_COMMAND_KEY)); - } } \ No newline at end of file
participants (1)
-
tchemit@users.labs.libre-entreprise.org