r733 - in trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing: actions content/demande util
Author: kmorin Date: 2014-12-18 17:37:10 +0000 (Thu, 18 Dec 2014) New Revision: 733 Url: http://forge.codelutin.com/projects/faxtomail/repository/revisions/733 Log: fixes #6349 "Aller au dossier" m?\195?\168ne bien au dossier mais ne rafraichit pas le dossier Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/LoadFolderEmailsAction.java trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeListUIHandler.java trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/FaxToMailUIUtil.java Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/LoadFolderEmailsAction.java =================================================================== --- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/LoadFolderEmailsAction.java 2014-12-18 10:47:18 UTC (rev 732) +++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/LoadFolderEmailsAction.java 2014-12-18 17:37:10 UTC (rev 733) @@ -155,13 +155,13 @@ } } - demand.setValid(handler.isDemandeValid(demand)); demand.setMailFolder(folder); demand.setEditable(folder.isFolderWritable() && demand.getDemandStatus().isEditableStatus()); WaitingState waitingState = email.getWaitingState(); if (waitingState != null) { demand.setWaitingState(waitingStateById.get(waitingState.getTopiaId())); } + demand.setValid(handler.isDemandeValid(demand)); demands.add(demand); } Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeListUIHandler.java =================================================================== --- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeListUIHandler.java 2014-12-18 10:47:18 UTC (rev 732) +++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeListUIHandler.java 2014-12-18 17:37:10 UTC (rev 733) @@ -311,7 +311,7 @@ public void propertyChange(PropertyChangeEvent evt) { MailFolder folder = (MailFolder) evt.getNewValue(); getContext().setCurrentMailFolder(folder); - loadFolderDemands(folder, nodesByFolder); + loadFolderDemands(nodesByFolder); DefaultMutableTreeNode node = nodesByFolder.get(folder); if (node != null) { @@ -338,8 +338,7 @@ ApplicationUIAction<LoadFolderEmailsAction> refreshAction = getContext().getActionFactory().createUIAction(this, LoadFolderEmailsAction.class); rootPane.getActionMap().put(REFRESH_FOLDER_ACTION, refreshAction); - MailFolder folder = getContext().getCurrentMailFolder(); - loadFolderDemands(folder, nodesByFolder); + loadFolderDemands(nodesByFolder); } public void updateEmailFilterWithContextEmailFilter() { @@ -488,7 +487,8 @@ return super.populateColumnModel(table, sortable); } - protected void loadFolderDemands(MailFolder folder, Map<MailFolder, FolderTreeNode> nodesByFolder) { + protected void loadFolderDemands(Map<MailFolder, FolderTreeNode> nodesByFolder) { + MailFolder folder = getModel().getSelectedFolder(); if (folder != null) { FolderTreeNode folderNode = nodesByFolder.get(folder); boolean readable = folderNode.isCanRead(); Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/FaxToMailUIUtil.java =================================================================== --- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/FaxToMailUIUtil.java 2014-12-18 10:47:18 UTC (rev 732) +++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/FaxToMailUIUtil.java 2014-12-18 17:37:10 UTC (rev 733) @@ -158,7 +158,7 @@ } })); for (MailFolder folder : orderedFolders) { - nodesByFolder.putAll(FaxToMailUIUtil.createFolderTree(root, folder)); + nodesByFolder.putAll(FaxToMailUIUtil.createFolderTree(context, root, folder)); FolderTreeNode node = nodesByFolder.get(folder); MailFolder parent = folder.getParent(); @@ -245,8 +245,9 @@ * @param folder the folder to add to the tree * @return the map of the nodes by folder */ - protected static Map<MailFolder, FolderTreeNode> createFolderTree(DefaultMutableTreeNode parent, - MailFolder folder) { + protected static Map<MailFolder, FolderTreeNode> createFolderTree(FaxToMailUIContext context, + DefaultMutableTreeNode parent, + MailFolder folder) { Map<MailFolder, FolderTreeNode> result = new HashMap<MailFolder, FolderTreeNode>(); FolderTreeNode node = new FolderTreeNode(folder); @@ -270,9 +271,16 @@ } }); for (MailFolder child : children) { - result.putAll(createFolderTree(node, child)); + result.putAll(createFolderTree(context, node, child)); } } + + // set the folder instance with the needed data in the context + MailFolder currentFolder = context.getCurrentMailFolder(); + if (currentFolder != null && currentFolder.getTopiaId().equals(folder.getTopiaId())) { + context.setCurrentMailFolder(folder); + } + return result; }
participants (1)
-
kmorin@users.forge.codelutin.com