r502 - trunk/simexplorer-is-swing/src/java/fr/cemagref/simexplorer/is/ui/swing/action/application
Author: tchemit Date: 2008-01-24 14:43:26 +0000 (Thu, 24 Jan 2008) New Revision: 502 Modified: trunk/simexplorer-is-swing/src/java/fr/cemagref/simexplorer/is/ui/swing/action/application/ResetSearchApplicationAction.java trunk/simexplorer-is-swing/src/java/fr/cemagref/simexplorer/is/ui/swing/action/application/SearchApplicationAction.java Log: implantation des actions de recherche et de reset de recherche Modified: trunk/simexplorer-is-swing/src/java/fr/cemagref/simexplorer/is/ui/swing/action/application/ResetSearchApplicationAction.java =================================================================== --- trunk/simexplorer-is-swing/src/java/fr/cemagref/simexplorer/is/ui/swing/action/application/ResetSearchApplicationAction.java 2008-01-24 14:42:09 UTC (rev 501) +++ trunk/simexplorer-is-swing/src/java/fr/cemagref/simexplorer/is/ui/swing/action/application/ResetSearchApplicationAction.java 2008-01-24 14:43:26 UTC (rev 502) @@ -19,7 +19,13 @@ package fr.cemagref.simexplorer.is.ui.swing.action.application; import fr.cemagref.simexplorer.is.ui.swing.action.SimExplorerAbstractTabAction; +import fr.cemagref.simexplorer.is.ui.swing.model.JApplicationTableModel; +import fr.cemagref.simexplorer.is.ui.swing.model.ListTabModel; +import fr.cemagref.simexplorer.is.ui.swing.tab.JApplicationListTab; +import javax.swing.JTable; +import java.awt.event.ActionEvent; + /** * Action pour réinitialiser une recherche d'application * @@ -39,13 +45,40 @@ private static final long serialVersionUID = -155773498930710467L; + public ResetSearchApplicationAction(String name) { super(name); } @Override - public void actionPerformed(java.awt.event.ActionEvent e) { - super.actionPerformed(e); - //TODO + protected boolean beforeAction(ActionEvent e) throws Exception { + ListTabModel model = (ListTabModel) getModel(); + String query = model.getQuery(); + // only reset search if something was previously search + return query != null && !query.isEmpty(); } + + @Override + protected void doAction(ActionEvent e) throws Exception { + super.doAction(e); + ListTabModel model = (ListTabModel) getModel(); + + // reset query in model + model.setQuery(null); + + // a new search begins always on first page + model.getPagination().setFirstIndex(0); + + // get data from service + model.updateTabModel(isRemote(), getContext()); + + // update table model in ui + JApplicationListTab container = (JApplicationListTab) getUI(); + JTable table = container.getTable(); + JApplicationTableModel modelTab = (JApplicationTableModel) table.getModel(); + modelTab.setData(model.getList()); + + // refresh ui + getMainUI().refreshListTabUI(model, container); + } } \ No newline at end of file Modified: trunk/simexplorer-is-swing/src/java/fr/cemagref/simexplorer/is/ui/swing/action/application/SearchApplicationAction.java =================================================================== --- trunk/simexplorer-is-swing/src/java/fr/cemagref/simexplorer/is/ui/swing/action/application/SearchApplicationAction.java 2008-01-24 14:42:09 UTC (rev 501) +++ trunk/simexplorer-is-swing/src/java/fr/cemagref/simexplorer/is/ui/swing/action/application/SearchApplicationAction.java 2008-01-24 14:43:26 UTC (rev 502) @@ -18,9 +18,15 @@ * ##% */ package fr.cemagref.simexplorer.is.ui.swing.action.application; -import fr.cemagref.simexplorer.is.ui.swing.action.SimExplorerAbstractAction; import fr.cemagref.simexplorer.is.ui.swing.action.SimExplorerAbstractTabAction; +import fr.cemagref.simexplorer.is.ui.swing.model.ListTabModel; +import fr.cemagref.simexplorer.is.ui.swing.model.JApplicationTableModel; +import fr.cemagref.simexplorer.is.ui.swing.tab.JApplicationListTab; +import javax.swing.JTextField; +import javax.swing.JTable; +import java.awt.event.ActionEvent; + /** * Action pour lancer une recherche d'application * @@ -39,9 +45,45 @@ public class SearchApplicationAction extends SimExplorerAbstractTabAction { private static final long serialVersionUID = -8537587629478588257L; + String query; public SearchApplicationAction(String name) { super(name); } + @Override + protected boolean beforeAction(ActionEvent e) throws Exception { + JTextField uiObject = (JTextField) getUIObject("searchText"); + query = uiObject.getText(); + ListTabModel model = (ListTabModel) getModel(); + return !query.isEmpty() && !query.equals(model.getQuery()); + } + + @Override + protected void doAction(ActionEvent e) throws Exception { + super.doAction(e); + ListTabModel model = (ListTabModel) getModel(); + model.setQuery(query); + + // a new search begins always on first page + model.getPagination().setFirstIndex(0); + + // get data from service + model.updateTabModel(isRemote(), getContext()); + + // update table model in ui + JApplicationListTab container = (JApplicationListTab) getUI(); + JTable table = container.getTable(); + JApplicationTableModel modelTab = (JApplicationTableModel) table.getModel(); + modelTab.setData(model.getList()); + + // refresh ui + getMainUI().refreshListTabUI(model, container); + } + + @Override + protected void clear() { + super.clear(); + query = null; + } } \ No newline at end of file
participants (1)
-
tchemit@users.labs.libre-entreprise.org