Author: tchemit Date: 2008-04-03 22:22:03 +0000 (Thu, 03 Apr 2008) New Revision: 328 Modified: trunk/lutinvcs/lutinvcs-ui/src/main/java/org/codelutin/vcs/ui/ConfirmUIHandler.java trunk/lutinvcs/lutinvcs-ui/src/main/java/org/codelutin/vcs/ui/DiffUIHandler.java trunk/lutinvcs/lutinvcs-ui/src/main/java/org/codelutin/vcs/ui/SynchUIHandler.java trunk/lutinvcs/lutinvcs-ui/src/main/java/org/codelutin/vcs/ui/VCSPopupAction.java trunk/lutinvcs/lutinvcs-ui/src/main/java/org/codelutin/vcs/ui/VCSUIFactory.java Log: vcsHandler in UIHandler Modified: trunk/lutinvcs/lutinvcs-ui/src/main/java/org/codelutin/vcs/ui/ConfirmUIHandler.java =================================================================== --- trunk/lutinvcs/lutinvcs-ui/src/main/java/org/codelutin/vcs/ui/ConfirmUIHandler.java 2008-04-03 22:21:13 UTC (rev 327) +++ trunk/lutinvcs/lutinvcs-ui/src/main/java/org/codelutin/vcs/ui/ConfirmUIHandler.java 2008-04-03 22:22:03 UTC (rev 328) @@ -15,20 +15,19 @@ package org.codelutin.vcs.ui; import org.codelutin.vcs.VCSAction; +import org.codelutin.vcs.VCSHandler; import org.codelutin.vcs.ui.handler.AbstractConfirmUIHandler; import org.codelutin.vcs.ui.model.ConfirmUIModel; -import javax.swing.JTable; import javax.swing.ListSelectionModel; -import java.beans.PropertyChangeEvent; /** @author chemit */ public class ConfirmUIHandler extends AbstractConfirmUIHandler { protected final JConfirmUI ui; - public ConfirmUIHandler() { - super(); + public ConfirmUIHandler(VCSHandler handler) { + super(handler); this.ui = new JConfirmUI(this); } @@ -41,18 +40,19 @@ } public ListSelectionModel getSelectionModel() { - JTable table = ui.getContentTable(); - return table.getSelectionModel(); + return ui.getContentTable().getSelectionModel(); } protected void updateUI() { VCSAction action = ui.getModel().getAction(); ui.getAccept().setText(action.getLibelle()); ui.getToolbar().setVisible(action.isCommit()); + ui.getHandler().getSelectionModel().setSelectionInterval(0, getModel().getModel().size() - 1); } - public void propertyChange(PropertyChangeEvent evt) { - super.propertyChange(evt); + protected void updateMessageUI() { + // update message history combo box ? + ui.getLastMessages().setEnabled(!getModel().getCommitMessages().isEmpty()); + } - } } Modified: trunk/lutinvcs/lutinvcs-ui/src/main/java/org/codelutin/vcs/ui/DiffUIHandler.java =================================================================== --- trunk/lutinvcs/lutinvcs-ui/src/main/java/org/codelutin/vcs/ui/DiffUIHandler.java 2008-04-03 22:21:13 UTC (rev 327) +++ trunk/lutinvcs/lutinvcs-ui/src/main/java/org/codelutin/vcs/ui/DiffUIHandler.java 2008-04-03 22:22:03 UTC (rev 328) @@ -16,6 +16,7 @@ import org.codelutin.vcs.VCSAction; import org.codelutin.vcs.VCSFileState; +import org.codelutin.vcs.VCSHandler; import org.codelutin.vcs.ui.handler.AbstractDiffUIHandler; import org.codelutin.vcs.ui.model.AbstractVCSFileStatesModel; import org.codelutin.vcs.ui.model.DiffUIModel; @@ -28,8 +29,8 @@ protected final JDiffUI ui; - public DiffUIHandler() { - super(); + public DiffUIHandler(VCSHandler handler) { + super(handler); this.ui = new JDiffUI(this); } Modified: trunk/lutinvcs/lutinvcs-ui/src/main/java/org/codelutin/vcs/ui/SynchUIHandler.java =================================================================== --- trunk/lutinvcs/lutinvcs-ui/src/main/java/org/codelutin/vcs/ui/SynchUIHandler.java 2008-04-03 22:21:13 UTC (rev 327) +++ trunk/lutinvcs/lutinvcs-ui/src/main/java/org/codelutin/vcs/ui/SynchUIHandler.java 2008-04-03 22:22:03 UTC (rev 328) @@ -2,6 +2,7 @@ import org.codelutin.vcs.VCSAction; import org.codelutin.vcs.VCSFileState; +import org.codelutin.vcs.VCSHandler; import org.codelutin.vcs.ui.handler.AbstractSynchUIHandler; import org.codelutin.vcs.ui.model.AbstractVCSFileStatesModel; import org.codelutin.vcs.ui.model.SimpleVCSFileStatesModel; @@ -22,8 +23,8 @@ protected final JSynchUI ui; - public SynchUIHandler() { - super(); + public SynchUIHandler(VCSHandler handler) { + super(handler); this.ui = new JSynchUI(this); } @@ -78,10 +79,11 @@ } VCSFileState[] states = model.getData(selectionModel); log.info("files to treate :" + states.length); - JConfirmUI confirmUI = VCSUIFactory.newConfirmUI(Arrays.asList(states)); + JConfirmUI confirmUI = VCSUIFactory.newConfirmUI(getHandler(), Arrays.asList(states)); confirmUI.getModel().setAction(action); - confirmUI.getHandler().getSelectionModel().setSelectionInterval(0, states.length - 1); confirmUI.setVisible(true); + //TODO SynchModel should listener for modification on ActionManagerQueue thread + log.info("TODO refresh states for files..."); } public void doSelectTabAction(SimpleVCSFileStatesModel model) { @@ -105,8 +107,8 @@ public void valueChanged(ListSelectionEvent e) { ListSelectionModel list = (ListSelectionModel) e.getSource(); - if (!list.getValueIsAdjusting()) { - log.info(list); + if (!list.getValueIsAdjusting() && log.isDebugEnabled()) { + log.debug(list); } } Modified: trunk/lutinvcs/lutinvcs-ui/src/main/java/org/codelutin/vcs/ui/VCSPopupAction.java =================================================================== --- trunk/lutinvcs/lutinvcs-ui/src/main/java/org/codelutin/vcs/ui/VCSPopupAction.java 2008-04-03 22:21:13 UTC (rev 327) +++ trunk/lutinvcs/lutinvcs-ui/src/main/java/org/codelutin/vcs/ui/VCSPopupAction.java 2008-04-03 22:22:03 UTC (rev 328) @@ -35,7 +35,7 @@ protected transient ListSelectionModel selectionModel; public VCSPopupAction(JSynchUI ui, String modelName) { - super(ui.getModel().getHandler()); + super(ui.getHandler().getHandler()); this.model = ui.getModel().getModel(modelName); this.selectionModel = ui.getTable(modelName).getSelectionModel(); } @@ -52,7 +52,7 @@ // refresh ui, and update list if needed } else { // show confirm action ui - JConfirmUI confirmUI = VCSUIFactory.newConfirmUI(Arrays.asList(states)); + JConfirmUI confirmUI = VCSUIFactory.newConfirmUI(getHandler(), Arrays.asList(states)); confirmUI.getModel().setAction(action); confirmUI.getHandler().getSelectionModel().setSelectionInterval(0, states.length - 1); confirmUI.setVisible(true); Modified: trunk/lutinvcs/lutinvcs-ui/src/main/java/org/codelutin/vcs/ui/VCSUIFactory.java =================================================================== --- trunk/lutinvcs/lutinvcs-ui/src/main/java/org/codelutin/vcs/ui/VCSUIFactory.java 2008-04-03 22:21:13 UTC (rev 327) +++ trunk/lutinvcs/lutinvcs-ui/src/main/java/org/codelutin/vcs/ui/VCSUIFactory.java 2008-04-03 22:22:03 UTC (rev 328) @@ -15,8 +15,10 @@ package org.codelutin.vcs.ui; import org.codelutin.vcs.VCSFileState; +import org.codelutin.vcs.VCSHandler; import org.codelutin.vcs.ui.handler.AbstractUIHandler; +import java.lang.reflect.InvocationTargetException; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -37,18 +39,18 @@ protected static JDiffUI diffUI; protected static JConfirmUI confirmUI; - public static JSynchUI newSynchUI(List<VCSFileState> states) { - SynchUIHandler result = newHandler(SynchUIHandler.class, states); + public static JSynchUI newSynchUI(VCSHandler handler, List<VCSFileState> states) { + SynchUIHandler result = newHandler(handler, SynchUIHandler.class, states); return result.getUi(); } - public static JDiffUI newDiffUI(List<VCSFileState> states) { - DiffUIHandler result = newHandler(DiffUIHandler.class, states); + public static JDiffUI newDiffUI(VCSHandler handler, List<VCSFileState> states) { + DiffUIHandler result = newHandler(handler, DiffUIHandler.class, states); return result.getUi(); } - public static JConfirmUI newConfirmUI(List<VCSFileState> states) { - ConfirmUIHandler result = newHandler(ConfirmUIHandler.class, states); + public static JConfirmUI newConfirmUI(VCSHandler handler, List<VCSFileState> states) { + ConfirmUIHandler result = newHandler(handler, ConfirmUIHandler.class, states); return result.getUi(); } @@ -60,18 +62,22 @@ } @SuppressWarnings({"unchecked"}) - protected static <H extends AbstractUIHandler> H newHandler(Class<H> klass, List<VCSFileState> states) { + protected static <H extends AbstractUIHandler> H newHandler(VCSHandler handler, Class<H> klass, List<VCSFileState> states) { H result; result = (H) getCache().get(klass); if (result == null) { try { - result = klass.newInstance(); + result = klass.getConstructor(VCSHandler.class).newInstance(handler); result.init(); getCache().put(klass, result); } catch (InstantiationException e) { throw new IllegalStateException("could not instanciate ui handler " + klass + " for reason : " + e.getMessage()); } catch (IllegalAccessException e) { throw new IllegalStateException("could not instanciate ui handler " + klass + " for reason : " + e.getMessage()); + } catch (InvocationTargetException e) { + throw new IllegalStateException("could not instanciate ui handler " + klass + " for reason : " + e.getMessage()); + } catch (NoSuchMethodException e) { + throw new IllegalStateException("could not instanciate ui handler " + klass + " for reason : " + e.getMessage()); } } result.getModel().setData(states);