Author: tchemit Date: 2008-01-22 02:02:06 +0000 (Tue, 22 Jan 2008) New Revision: 366 Modified: trunk/simexplorer-is-swing/src/java/fr/cemagref/simexplorer/is/ui/swing/action/tab/ShowDetailTabAction.java trunk/simexplorer-is-swing/src/java/fr/cemagref/simexplorer/is/ui/swing/action/tab/ShowLocalTabAction.java trunk/simexplorer-is-swing/src/java/fr/cemagref/simexplorer/is/ui/swing/action/tab/ShowRemoteTabAction.java trunk/simexplorer-is-swing/src/java/fr/cemagref/simexplorer/is/ui/swing/action/tab/ShowSynchronizeTabAction.java Log: utilisation action abstraite Modified: trunk/simexplorer-is-swing/src/java/fr/cemagref/simexplorer/is/ui/swing/action/tab/ShowDetailTabAction.java =================================================================== --- trunk/simexplorer-is-swing/src/java/fr/cemagref/simexplorer/is/ui/swing/action/tab/ShowDetailTabAction.java 2008-01-22 02:01:46 UTC (rev 365) +++ trunk/simexplorer-is-swing/src/java/fr/cemagref/simexplorer/is/ui/swing/action/tab/ShowDetailTabAction.java 2008-01-22 02:02:06 UTC (rev 366) @@ -19,15 +19,14 @@ package fr.cemagref.simexplorer.is.ui.swing.action.tab; import fr.cemagref.simexplorer.is.ui.swing.SimExplorerUI; -import fr.cemagref.simexplorer.is.ui.swing.action.SimExplorerAbstractTabAction; -import fr.cemagref.simexplorer.is.ui.swing.util.ActionConfig; +import fr.cemagref.simexplorer.is.ui.swing.action.ShowTabAbstractAction; /** * Action pour afficher le tab local * * @author chemit */ - at ActionConfig( + at jaxx.runtime.builder.ActionConfig( actionCommand = "showTab_detail", container = SimExplorerUI.class, name = "simexplorer.action.show.detail", @@ -37,11 +36,11 @@ mnemonic = 'd', hideActionText = false ) -public class ShowDetailTabAction extends SimExplorerAbstractTabAction { +public class ShowDetailTabAction extends ShowTabAbstractAction { private static final long serialVersionUID = 6643631041114311643L; public ShowDetailTabAction(String name) { - super(name, "showTab"); + super(name); } } Modified: trunk/simexplorer-is-swing/src/java/fr/cemagref/simexplorer/is/ui/swing/action/tab/ShowLocalTabAction.java =================================================================== --- trunk/simexplorer-is-swing/src/java/fr/cemagref/simexplorer/is/ui/swing/action/tab/ShowLocalTabAction.java 2008-01-22 02:01:46 UTC (rev 365) +++ trunk/simexplorer-is-swing/src/java/fr/cemagref/simexplorer/is/ui/swing/action/tab/ShowLocalTabAction.java 2008-01-22 02:02:06 UTC (rev 366) @@ -18,19 +18,26 @@ * \#\#% */ package fr.cemagref.simexplorer.is.ui.swing.action.tab; +import fr.cemagref.simexplorer.is.entities.metadata.MetaDataEntity; import fr.cemagref.simexplorer.is.service.StorageService; import fr.cemagref.simexplorer.is.ui.SimExplorer; import fr.cemagref.simexplorer.is.ui.swing.SimExplorerUI; -import fr.cemagref.simexplorer.is.ui.swing.action.SimExplorerAbstractTabAction; +import fr.cemagref.simexplorer.is.ui.swing.action.ShowTabAbstractAction; import fr.cemagref.simexplorer.is.ui.swing.bean.ListApplicationBean; -import fr.cemagref.simexplorer.is.ui.swing.util.ActionConfig; +import fr.cemagref.simexplorer.is.ui.swing.bean.PaginationBean; +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 jaxx.runtime.swing.JAXXComboBox; +import java.awt.event.ActionEvent; + /** * Action pour afficher le tab local * * @author chemit */ - at ActionConfig( + at jaxx.runtime.builder.ActionConfig( actionCommand = "showtag_local", container = SimExplorerUI.class, name = "simexplorer.action.show.local", @@ -40,32 +47,79 @@ mnemonic = 'A', hideActionText = false ) -public class ShowLocalTabAction extends SimExplorerAbstractTabAction { +public class ShowLocalTabAction extends ShowTabAbstractAction { private static final long serialVersionUID = -5349479338237813002L; public ShowLocalTabAction(String name) { - super(name, "showTab"); + super(name); + } - protected void initAction() { + static ListApplicationBean list; + ListApplicationBean newList; - StorageService service; + protected boolean beforeAction(ActionEvent e) { - ListApplicationBean list; - if (getContext().getLocalApplications() == null) { + ListTabModel model = (ListTabModel) getModel(); - service = SimExplorer.getStorageService(); + if (model.getList() == null) { - // first local query, - list = new ListApplicationBean(); + // first local query, build listBean + newList = new ListApplicationBean(); + try { - long size = service.findApplicationsCount(true); + StorageService service = SimExplorer.getStorageService(); + long size = service.findApplicationsCount(false); + PaginationBean paginationBean = new PaginationBean(); + paginationBean.setFirstIndex(0); + paginationBean.setSize(size); + paginationBean.setWidth(getContext().getConfig().getSizor()); + newList.setPagination(paginationBean); + MetaDataEntity[] data = service.findApplications(false, (int) paginationBean.getFirstIndex(), paginationBean.getWidth(), -1); + newList.setList(data); + // save in model + model.setList(newList); + } catch (Exception ee) { + ee.printStackTrace(); + } + } else { + newList = model.getList(); + } + log.info("use local list " + newList); + return true; + } + protected void afterAction(ActionEvent e) { + if (list == null || newList.getTimestamp() > list.getTimestamp()) { + // nothing to ? + JApplicationListTab container = (JApplicationListTab) getTab(); + JApplicationTableModel model = (JApplicationTableModel) container.getTable().getModel(); + model.setData(newList.getList()); + // init pagination + initPagination(newList.getPagination(), container); + } - } catch (Exception e) { - e.printStackTrace(); - } + list = newList; + } + + private void initPagination(PaginationBean bean, JApplicationListTab container) { + JAXXComboBox combo; + + combo = container.getChangeSizor(); + combo.setEnabled(false); + combo.setSelectedItem("" + bean.getWidth()); + combo.setEnabled(true); + + combo = container.getGoPage(); + long size = bean.getNbPages(); + combo.setEnabled(false); + combo.removeAllItems(); + for (int i = 0; i < size; i++) { + combo.addItem(i); } + combo.setEnabled(true); } + + } \ No newline at end of file Modified: trunk/simexplorer-is-swing/src/java/fr/cemagref/simexplorer/is/ui/swing/action/tab/ShowRemoteTabAction.java =================================================================== --- trunk/simexplorer-is-swing/src/java/fr/cemagref/simexplorer/is/ui/swing/action/tab/ShowRemoteTabAction.java 2008-01-22 02:01:46 UTC (rev 365) +++ trunk/simexplorer-is-swing/src/java/fr/cemagref/simexplorer/is/ui/swing/action/tab/ShowRemoteTabAction.java 2008-01-22 02:02:06 UTC (rev 366) @@ -21,16 +21,19 @@ import fr.cemagref.simexplorer.is.service.StorageService; import fr.cemagref.simexplorer.is.ui.SimExplorer; import fr.cemagref.simexplorer.is.ui.swing.SimExplorerUI; -import fr.cemagref.simexplorer.is.ui.swing.action.SimExplorerAbstractTabAction; +import fr.cemagref.simexplorer.is.ui.swing.action.ShowTabAbstractAction; import fr.cemagref.simexplorer.is.ui.swing.bean.ListApplicationBean; -import fr.cemagref.simexplorer.is.ui.swing.util.ActionConfig; +import fr.cemagref.simexplorer.is.ui.swing.bean.PaginationBean; +import fr.cemagref.simexplorer.is.ui.swing.model.ListTabModel; +import java.awt.event.ActionEvent; + /** * Action pour afficher le tab local * * @author chemit */ - at ActionConfig( + at jaxx.runtime.builder.ActionConfig( actionCommand = "showtag_remote", container = SimExplorerUI.class, name = "simexplorer.action.show.remote", @@ -40,26 +43,38 @@ mnemonic = 'p', hideActionText = false ) -public class ShowRemoteTabAction extends SimExplorerAbstractTabAction { +public class ShowRemoteTabAction extends ShowTabAbstractAction { private static final long serialVersionUID = -5349479338237813002L; public ShowRemoteTabAction(String name) { - super(name, "showTab"); + super(name); } + protected void initAction() throws Exception { - protected void initAction() { - StorageService service; ListApplicationBean list; - if (getContext().getRemoteApplications() == null) { + ListTabModel model = (ListTabModel) getModel(); + + if (model.getList() == null) { // first remote query, service = SimExplorer.getRemoteStorageService(); list = new ListApplicationBean(); - + long size = service.findApplicationsCount(false); + PaginationBean paginationBean = new PaginationBean(); + paginationBean.setFirstIndex(0); + paginationBean.setSize(size); + paginationBean.setWidth(getContext().getConfig().getSizor()); + list.setPagination(paginationBean); + model.setList(list); } } + + @Override + protected void doAction(ActionEvent e) throws Exception { + super.doAction(e); + } } \ No newline at end of file Modified: trunk/simexplorer-is-swing/src/java/fr/cemagref/simexplorer/is/ui/swing/action/tab/ShowSynchronizeTabAction.java =================================================================== --- trunk/simexplorer-is-swing/src/java/fr/cemagref/simexplorer/is/ui/swing/action/tab/ShowSynchronizeTabAction.java 2008-01-22 02:01:46 UTC (rev 365) +++ trunk/simexplorer-is-swing/src/java/fr/cemagref/simexplorer/is/ui/swing/action/tab/ShowSynchronizeTabAction.java 2008-01-22 02:02:06 UTC (rev 366) @@ -19,15 +19,14 @@ package fr.cemagref.simexplorer.is.ui.swing.action.tab; import fr.cemagref.simexplorer.is.ui.swing.SimExplorerUI; -import fr.cemagref.simexplorer.is.ui.swing.action.SimExplorerAbstractTabAction; -import fr.cemagref.simexplorer.is.ui.swing.util.ActionConfig; +import fr.cemagref.simexplorer.is.ui.swing.action.ShowTabAbstractAction; /** * Action pour afficher le tab de synchronisation * * @author chemit */ - at ActionConfig( + at jaxx.runtime.builder.ActionConfig( actionCommand = "showtag_synchronize", container = SimExplorerUI.class, name = "simexplorer.action.show.synchronize", @@ -37,12 +36,12 @@ mnemonic = 'S', hideActionText = false ) -public class ShowSynchronizeTabAction extends SimExplorerAbstractTabAction { +public class ShowSynchronizeTabAction extends ShowTabAbstractAction { private static final long serialVersionUID = -5349479338237813002L; public ShowSynchronizeTabAction(String name) { - super(name, "showTab"); + super(name); } }