Author: kmorin Date: 2014-08-04 17:42:08 +0200 (Mon, 04 Aug 2014) New Revision: 464 Url: http://forge.codelutin.com/projects/faxtomail/repository/revisions/464 Log: fixes #5584 Cliquer rapidement sur les boutons "Gestion des fax" et "Recherche" cause une exception Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/AbstractChangeScreenAction.java trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/SaveDemandeAndExitAction.java trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/TransmitAction.java Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/AbstractChangeScreenAction.java =================================================================== --- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/AbstractChangeScreenAction.java 2014-08-04 15:01:23 UTC (rev 463) +++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/AbstractChangeScreenAction.java 2014-08-04 15:42:08 UTC (rev 464) @@ -24,6 +24,7 @@ import com.franciaflex.faxtomail.ui.swing.FaxToMailScreen; import com.franciaflex.faxtomail.ui.swing.FaxToMailUIContext; +import com.franciaflex.faxtomail.ui.swing.content.MainUI; import com.franciaflex.faxtomail.ui.swing.content.MainUIHandler; import jaxx.runtime.SwingUtil; import jaxx.runtime.context.JAXXContextEntryDef; @@ -72,6 +73,9 @@ @Override public boolean prepareAction() throws Exception { boolean result = super.prepareAction(); + + setTopBarButtonEnabled(false); + result &= skipCheckCurrentScreen || getHandler().quitCurrentScreen(); return result; } @@ -100,10 +104,20 @@ @Override public void postFailedAction(Throwable error) { - if (error != null) { + setTopBarButtonEnabled(true); + } -// getContext().setFallBackScreen(); - } + @Override + public void postSuccessAction() { + super.postSuccessAction(); + setTopBarButtonEnabled(true); } + protected void setTopBarButtonEnabled(boolean enabled) { + MainUI ui = getUI(); + ui.getSearchButton().setEnabled(enabled); + ui.getDemandListButton().setEnabled(enabled); + ui.getExitButton().setEnabled(enabled); + } + } Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/SaveDemandeAndExitAction.java =================================================================== --- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/SaveDemandeAndExitAction.java 2014-08-04 15:01:23 UTC (rev 463) +++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/SaveDemandeAndExitAction.java 2014-08-04 15:42:08 UTC (rev 464) @@ -44,8 +44,6 @@ @Override public void postSuccessAction() { super.postSuccessAction(); - - GoToPreviousScreenAction action = getContext().getActionFactory().createLogicAction(getContext().getMainUI().getHandler(), GoToPreviousScreenAction.class); - getActionEngine().runInternalAction(action); + getActionEngine().runInternalAction(getContext().getMainUI().getHandler(), GoToPreviousScreenAction.class); } } Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/TransmitAction.java =================================================================== --- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/TransmitAction.java 2014-08-04 15:01:23 UTC (rev 463) +++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/TransmitAction.java 2014-08-04 15:42:08 UTC (rev 464) @@ -54,9 +54,8 @@ DemandesUI parentUI = (DemandesUI) getUI().getContextValue(JAXXContext.class, JAXXUtil.PARENT); DemandeUI demandeUI = (DemandeUI) parentUI.getDemandsTabPane().getSelectedComponent(); - SaveDemandeAction action = getContext().getActionFactory().createLogicAction(demandeUI.getHandler(), - SaveDemandeAndExitAction.class); - getContext().getActionEngine().runInternalAction(action); + getContext().getActionEngine().runInternalAction(demandeUI.getHandler(), + SaveDemandeAndExitAction.class); } }
participants (1)
-
kmorin@users.forge.codelutin.com