This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository faxtomail. See https://gitlab.nuiton.org/codelutin/faxtomail.git commit 71bcfa4c877b5cd8dd19e2f2aea4ed1f4be9c383 Author: Kevin Morin <morin@codelutin.com> Date: Mon Jan 9 10:22:33 2017 +0100 fixes #8916 prise en compte de la configuration du dossier pour figer ou non le nombre d'éléments à afficher --- .../ui/swing/content/demande/DemandeListUI.css | 4 +++ .../content/demande/DemandeListUIHandler.java | 35 +++++++++++++++++----- .../swing/content/demande/DemandeListUIModel.java | 13 ++++++++ 3 files changed, 44 insertions(+), 8 deletions(-) diff --git a/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeListUI.css b/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeListUI.css index 96786d0..d32c873 100644 --- a/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeListUI.css +++ b/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeListUI.css @@ -136,6 +136,10 @@ text: "faxtomail.demandeList.resultPerPage"; } +#resultPerPageCombo { + enabled: { model.isEnableChangeResultPerPage() }; +} + #pageNumberLabel { text: "faxtomail.demandeList.pages"; } diff --git a/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeListUIHandler.java b/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeListUIHandler.java index 85bc56c..3953794 100644 --- a/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeListUIHandler.java +++ b/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeListUIHandler.java @@ -320,7 +320,7 @@ public class DemandeListUIHandler extends AbstractFaxToMailDemandListHandler<Dem // int combo box for result per page ui.getResultPerPageCombo().setModel(new PaginationComboModel()); int resultPerPage = getConfig().getResultPerPage(); - ui.getModel().setResultPerPage(resultPerPage); + getModel().setResultPerPage(resultPerPage); ui.getResultPerPageCombo().setSelectedItem(resultPerPage); ui.getResultPerPageCombo().addItemListener(new ItemListener() { @Override @@ -509,7 +509,8 @@ public class DemandeListUIHandler extends AbstractFaxToMailDemandListHandler<Dem } protected void loadFolderDemands(Map<MailFolder, FolderTreeNode> nodesByFolder) { - MailFolder folder = getModel().getSelectedFolder(); + DemandeListUIModel model = getModel(); + MailFolder folder = model.getSelectedFolder(); if (folder != null) { FolderTreeNode folderNode = nodesByFolder.get(folder); if (folderNode != null) { @@ -520,12 +521,30 @@ public class DemandeListUIHandler extends AbstractFaxToMailDemandListHandler<Dem folder = folder.getParent(); } - DemandeListUIModel model = getModel(); model.setComputeQuantitiesByRangeEnabled(readable); - model.setNewDemandEnabled(readable && folder != null && Boolean.TRUE.equals(folder.getAllowCreateDemandIntoFolder())); + model.setNewDemandEnabled(readable && Boolean.TRUE.equals(folder.getAllowCreateDemandIntoFolder())); } } + folder = model.getSelectedFolder(); + if (folder != null) { + while (!folder.isUseCurrentLevelNbElementToDisplay() + && folder.getParent() != null) { + folder = folder.getParent(); + } + + boolean enableChangeResultPerPage = folder.getNbElementToDisplay() == null; + model.setEnableChangeResultPerPage(enableChangeResultPerPage); + int resultPerPage; + if (!enableChangeResultPerPage) { + resultPerPage = folder.getNbElementToDisplay(); + } else { + resultPerPage = getConfig().getResultPerPage(); + } + model.setResultPerPage(resultPerPage); + ui.getResultPerPageCombo().setSelectedItem(resultPerPage); + } + tableFilter.executeFilter(); } @@ -540,12 +559,13 @@ public class DemandeListUIHandler extends AbstractFaxToMailDemandListHandler<Dem } public void updateResultPerPage(ItemEvent event) { - if (event.getStateChange() == ItemEvent.SELECTED) { + DemandeListUIModel model = getModel(); + if (event.getStateChange() == ItemEvent.SELECTED && model.isEnableChangeResultPerPage()) { int resultPerPage = (Integer)event.getItem(); - getModel().setResultPerPage(resultPerPage); + model.setResultPerPage(resultPerPage); getConfig().setResultPerPage(resultPerPage); getConfig().save(); - getModel().resetPaginationParameter(); + model.resetPaginationParameter(); runListAction(); } } @@ -664,7 +684,6 @@ public class DemandeListUIHandler extends AbstractFaxToMailDemandListHandler<Dem int selectedRowCount = getUI().getDataTable().getSelectedRowCount(); - DemandeListUIModel model = getModel(); model.setReplyEnabled(selectedRowCount == 1 diff --git a/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeListUIModel.java b/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeListUIModel.java index 5469b49..3a58f60 100644 --- a/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeListUIModel.java +++ b/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeListUIModel.java @@ -55,6 +55,7 @@ public class DemandeListUIModel extends AbstractSerializableBean { public static final String PROPERTY_COMPUTE_QUANTITIES_BY_RANGE_ENABLED = "computeQuantitiesByRangeEnabled"; public static final String PROPERTY_NEW_DEMAND_ENABLED = "newDemandEnabled"; public static final String PROPERTY_RESULT_PER_PAGE = "resultPerPage"; + public static final String PROPERTY_ENABLE_CHANGE_RESULT_PER_PAGE = "enableChangeResultPerPage"; protected List<MailFolder> folders; @@ -64,6 +65,8 @@ public class DemandeListUIModel extends AbstractSerializableBean { protected int resultPerPage = 50; + protected boolean enableChangeResultPerPage = true; + protected PaginationParameter paginationParameter = PaginationParameter.of(0, resultPerPage, Email.PROPERTY_TOPIA_CREATE_DATE, false); protected PaginationResult<Email> paginationResult = PaginationResult.of(null, 0, paginationParameter); @@ -286,4 +289,14 @@ public class DemandeListUIModel extends AbstractSerializableBean { public int getResultPerPage() { return resultPerPage; } + + public boolean isEnableChangeResultPerPage() { + return enableChangeResultPerPage; + } + + public void setEnableChangeResultPerPage(boolean enableChangeResultPerPage) { + Object oldValue = isEnableChangeResultPerPage(); + this.enableChangeResultPerPage = enableChangeResultPerPage; + firePropertyChange(PROPERTY_ENABLE_CHANGE_RESULT_PER_PAGE, oldValue, enableChangeResultPerPage); + } } -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.