Author: tchemit
Date: 2008-04-19 18:41:31 +0000 (Sat, 19 Apr 2008)
New Revision: 600
Added:
trunk/lutinvcs/ui/jaxx/src/main/resources/META-INF/services/org.codelutin.ui.UIProvider
Removed:
trunk/lutinvcs/ui/jaxx/src/main/resources/META-INF/services/org.codelutin.vcs.ui.VCSUIProvider
Modified:
trunk/lutinvcs/core/src/main/java/org/codelutin/vcs/VCSFactory.java
trunk/lutinvcs/core/src/main/java/org/codelutin/vcs/runner/VCSActionThread.java
trunk/lutinvcs/tools/src/test/java/org/codelutin/vcs/ConfigUITest.java
trunk/lutinvcs/tools/src/test/java/org/codelutin/vcs/UITest.java
trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/ConfigUI.java
trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/VCSUIFactory.java
trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/action/ChangeFileAction.java
trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/action/ChangeLocationAction.java
trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/action/ConfirmAction.java
trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/action/DiffAction.java
trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/action/HelpAction.java
trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/action/ShowConfigAction.java
trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/action/ShowMessagesAction.java
trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/action/TabUIAction.java
trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/handler/SynchUIHandler.java
trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/util/UIHelper.java
trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/util/handler/AbstractTabUIHandler.java
trunk/lutinvcs/ui/jaxx/src/main/uimodel/org/codelutin/vcs/ui/JaxxConfigUI.jaxx
trunk/lutinvcs/ui/jaxx/src/main/uimodel/org/codelutin/vcs/ui/JaxxVCSUIProvider.java
Log:
utilisation lutinui
Modified: trunk/lutinvcs/core/src/main/java/org/codelutin/vcs/VCSFactory.java
===================================================================
--- trunk/lutinvcs/core/src/main/java/org/codelutin/vcs/VCSFactory.java 2008-04-19 18:40:26 UTC (rev 599)
+++ trunk/lutinvcs/core/src/main/java/org/codelutin/vcs/VCSFactory.java 2008-04-19 18:41:31 UTC (rev 600)
@@ -25,7 +25,6 @@
import org.codelutin.vcs.event.VCSConnexionEvent;
import org.codelutin.vcs.event.VCSConnexionEventListener;
import org.codelutin.vcs.runner.VCSActionManager;
-import org.codelutin.vcs.type.VCSConnexionMode;
import java.util.ArrayList;
import java.util.List;
@@ -49,13 +48,13 @@
static protected VCSFactory instance;
/** providers availables */
- protected List<VCSProvider> providers;
+ protected final List<VCSProvider> providers;
/** connexions opened */
- protected List<VCSConnexion> connexions;
+ protected final List<VCSConnexion> connexions;
/** action manager */
- protected VCSActionManager actionManager;
+ protected final VCSActionManager actionManager;
public static VCSFactory getInstance() {
if (instance == null) {
@@ -73,11 +72,10 @@
* <p/>
* the method will produce a runtime exception if config is null and not init.
*
- * @param mode mode of connexion required
* @param config config to use @return the new connexion instance
* @return instanicate and init connexion (but not opened).
*/
- public static VCSConnexion newConnexion(VCSConnexionMode mode, VCSConnexionConfig config) {
+ public static VCSConnexion newConnexion(VCSConnexionConfig config) {
VCSFactory factory = getInstance();
@@ -85,7 +83,7 @@
VCSProvider<?, ?> provider = factory.getProvider(config.getType().toUpperCase());
// delegate instanciation of connexion to provider
- VCSConnexion connexion = provider.newConnection(mode, config);
+ VCSConnexion connexion = provider.newConnection(config.getMode(), config);
// init connexion
connexion.init(config);
@@ -134,18 +132,23 @@
protected VCSFactory() {
long t0 = System.nanoTime();
- providers = new ArrayList<VCSProvider>();
+ providers = detectProviders(t0);
+ actionManager = new VCSActionManager();
+ connexions = new ArrayList<VCSConnexion>();
+ }
+
+ protected List<VCSProvider> detectProviders(long t0) {
+ List<VCSProvider> providers = new ArrayList<VCSProvider>();
for (VCSProvider provider : ServiceLoader.load(VCSProvider.class)) {
providers.add(provider);
}
- log.info("found " + providers.size() + " provider(s) " + providers.toString() + " in " + StringUtil.convertTime(t0, System.nanoTime()));
+ log.info("found " + providers.size() + " vcs provider(s) in " + StringUtil.convertTime(t0, System.nanoTime()) + " : " + providers.toString());
if (log.isDebugEnabled()) {
for (VCSProvider provider : providers) {
log.debug(provider.getName() + " [" + provider + ']');
}
}
- actionManager = new VCSActionManager();
- connexions = new ArrayList<VCSConnexion>();
+ return providers;
}
}
\ No newline at end of file
Modified: trunk/lutinvcs/core/src/main/java/org/codelutin/vcs/runner/VCSActionThread.java
===================================================================
--- trunk/lutinvcs/core/src/main/java/org/codelutin/vcs/runner/VCSActionThread.java 2008-04-19 18:40:26 UTC (rev 599)
+++ trunk/lutinvcs/core/src/main/java/org/codelutin/vcs/runner/VCSActionThread.java 2008-04-19 18:41:31 UTC (rev 600)
@@ -62,7 +62,9 @@
VCSActionQueueItem item = null;
try {
while (run) {
- log.info("waiting for action...");
+ if (log.isDebugEnabled()) {
+ log.debug("waiting for action...");
+ }
item = queue.take();
// acquire a first item, thread becomes busy TODO should synchronize thread
fireStateBusy(false, true);
@@ -181,7 +183,9 @@
}
protected void fireStateBusy(Boolean oldState, Boolean newState) {
- log.info("old state : " + oldState + ", new state : " + newState);
+ if (log.isDebugEnabled()) {
+ log.debug("old state : " + oldState + ", new state : " + newState);
+ }
}
protected void updateState(VCSState state, VCSEntry[] entries) {
@@ -212,13 +216,17 @@
/** @param l the listener to add */
public void addVCSActionThreadEventListener(VCSActionThreadEventListener l) {
listeners.add(l);
- log.info("added listener on thread : " + listeners.size() + " : " + l);
+ if (log.isDebugEnabled()) {
+ log.debug("after added (" + listeners.size() + ") : " + l);
+ }
}
/** @param l the listener to remove */
public void removeVCSActionThreadEventListener(VCSActionThreadEventListener l) {
listeners.remove(l);
- log.info("removed listener on thread : " + listeners.size() + " : " + l);
+ if (log.isDebugEnabled()) {
+ log.debug("aftert removed (" + listeners.size() + ") : " + l);
+ }
}
}
Modified: trunk/lutinvcs/tools/src/test/java/org/codelutin/vcs/ConfigUITest.java
===================================================================
--- trunk/lutinvcs/tools/src/test/java/org/codelutin/vcs/ConfigUITest.java 2008-04-19 18:40:26 UTC (rev 599)
+++ trunk/lutinvcs/tools/src/test/java/org/codelutin/vcs/ConfigUITest.java 2008-04-19 18:41:31 UTC (rev 600)
@@ -16,32 +16,22 @@
import org.codelutin.vcs.ui.ConfigUI;
import org.codelutin.vcs.ui.VCSUIFactory;
-import org.codelutin.vcs.ui.model.ConfigUIModel;
-import java.io.File;
-import java.io.IOException;
-
/** @author chemit */
public class ConfigUITest {
- public static void main(String[] args) throws IOException, VCSException {
+ public static void main(String[] args) throws Exception {
RepositoryGenerator generator = new RepositoryGenerator();
- File root = generator.generateWorkingRepositoryPath();
+ VCSConnexion connexion = UITest.initMockVCS(generator, 0, 0, 0, 0);
- VCSConnexion connexion = UITest.initMockVCS(root);
+ ConfigUI ui = UITest.initUI(generator, connexion, VCSUIFactory.CONFIG_UI);
- UITest.initUI(generator, connexion);
-
connexion.open();
- ConfigUI ui = VCSUIFactory.newConfigUI();
+ ui.getHandler().getModel().populate(connexion.getConfig(), true, "tony", "chemit", "chemit(a)codelutin.com");
- ConfigUIModel model = ui.getHandler().getModel();
-
- model.populate(connexion.getConfig(), true, "tony", "chemit", "chemit(a)codelutin.com");
-
ui.setVisible(true);
}
}
\ No newline at end of file
Modified: trunk/lutinvcs/tools/src/test/java/org/codelutin/vcs/UITest.java
===================================================================
--- trunk/lutinvcs/tools/src/test/java/org/codelutin/vcs/UITest.java 2008-04-19 18:40:26 UTC (rev 599)
+++ trunk/lutinvcs/tools/src/test/java/org/codelutin/vcs/UITest.java 2008-04-19 18:41:31 UTC (rev 600)
@@ -14,67 +14,71 @@
*/
package org.codelutin.vcs;
-import org.codelutin.vcs.type.VCSConnexionMode;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.codelutin.ui.DialogUI;
+import org.codelutin.ui.DialogUIDef;
+import org.codelutin.ui.DialogUIHandler;
+import org.codelutin.ui.DialogUIModel;
import org.codelutin.vcs.ui.SynchUI;
import org.codelutin.vcs.ui.VCSUIFactory;
-import org.codelutin.vcs.ui.VCSUIFactory.VCSWindowListener;
-import org.codelutin.vcs.ui.util.model.AbstractTabUIModel;
-import org.codelutin.vcs.util.VCSConnexionConfigImpl;
+import java.awt.event.WindowEvent;
import java.io.File;
import java.io.IOException;
/** @author chemit */
public class UITest {
- public static void main(String[] args) throws IOException, VCSException {
+ static protected final Log log = LogFactory.getLog(UITest.class);
- RepositoryGenerator generator = new RepositoryGenerator();
+ public static void main(String[] args) throws Exception {
- File root = generator.generateWorkingRepositoryPath();
- generator.generateWorkingRepository(root, 10, 5, 10, 1024);
+ RepositoryGenerator generator = new RepositoryGenerator();
- VCSConnexion connexion = initMockVCS(root);
+ VCSConnexion connexion = initMockVCS(generator, 10, 5, 10, 1024);
- initUI(generator, connexion);
-
connexion.open();
- SynchUI ui = VCSUIFactory.newSynchUI();
+ SynchUI ui = initUI(generator, connexion, VCSUIFactory.SYNCH_UI);
- AbstractTabUIModel model = ui.getHandler().getModel();
+ ui.getHandler().getModel().populate(connexion);
- model.populate(connexion);
+ generator.generateStates(ui.getHandler().getModel().getEntriesModel());
- generator.generateStates(model.getEntriesModel());
-
ui.setVisible(true);
}
- public static VCSConnexion initMockVCS(final File root) {
- VCSConnexionConfig config = new VCSConnexionConfigImpl();
+ public static VCSConnexion initMockVCS(final RepositoryGenerator generator, int i, int i1, int i2, int i3) throws IOException {
+ final File root = generator.generateWorkingRepositoryPath();
+ if (i != 0) {
+ generator.generateWorkingRepository(root, i, i1, i2, i3);
+ }
+ VCSConnexionConfig config = new org.codelutin.vcs.util.VCSConnexionConfigImpl();
config.setKeyFile(new File("/home/tony/.ssh/id_dsa"));
config.setUserName("tchemit");
//config.setPassPhrase("pass");
config.setNoPassPhrase(true);
config.setType("MOCK");
config.setLocalDatabasePath(root);
- config.setConnexionMode(VCSConnexionMode.SSH);
- VCSConnexion connexion = VCSFactory.newConnexion(VCSConnexionMode.ANONYMOUS, config);
- connexion.init(config);
- return connexion;
+ config.setConnexionMode(org.codelutin.vcs.type.VCSConnexionMode.SSH);
+ return VCSFactory.newConnexion(config);
}
- protected static void initUI(final RepositoryGenerator generator, final VCSConnexion connexion) {
- VCSUIFactory.initFactory(connexion.getConfig(), new VCSWindowListener() {
+ protected static <M extends DialogUIModel, U extends DialogUI<H>, H extends DialogUIHandler<M, U>> U initUI(
+ final RepositoryGenerator generator, final VCSConnexion connexion, DialogUIDef<M, U, H> configUi) {
- protected void allWindowsClosed() {
+ VCSUIFactory.initFactory(connexion.getConfig(), new org.codelutin.ui.FactoryWindowListener() {
+ public void allWindowsClosed(WindowEvent e) {
+ if (log.isDebugEnabled()) {
+ log.debug(generator + " : " + e);
+ }
generator.deleteWorkingCopy(connexion.getWorkingCopy());
}
+ });
- protected void closeConnexion(VCSConnexion connexion) {
- }
- });
+
+ return VCSUIFactory.getUI(configUi);
}
}
\ No newline at end of file
Modified: trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/ConfigUI.java
===================================================================
--- trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/ConfigUI.java 2008-04-19 18:40:26 UTC (rev 599)
+++ trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/ConfigUI.java 2008-04-19 18:41:31 UTC (rev 600)
@@ -120,6 +120,7 @@
public abstract javax.swing.JPanel getSshPanel();
public abstract javax.swing.JScrollPane getIdentityScroll();
+
public boolean isConfigValid() {
return getHandler().isConfigValid();
}
Modified: trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/VCSUIFactory.java
===================================================================
--- trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/VCSUIFactory.java 2008-04-19 18:40:26 UTC (rev 599)
+++ trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/VCSUIFactory.java 2008-04-19 18:41:31 UTC (rev 600)
@@ -14,207 +14,90 @@
*/
package org.codelutin.vcs.ui;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.codelutin.util.StringUtil;
+import org.codelutin.ui.DialogUI;
+import org.codelutin.ui.DialogUIDef;
+import org.codelutin.ui.DialogUIHandler;
+import org.codelutin.ui.DialogUIModel;
+import org.codelutin.ui.FactoryWindowListener;
+import org.codelutin.ui.UIFactory;
import org.codelutin.vcs.VCSConnexion;
import org.codelutin.vcs.VCSConnexionConfig;
import org.codelutin.vcs.VCSFactory;
-import org.codelutin.vcs.ui.util.ui.AbstractUI;
+import org.codelutin.vcs.ui.handler.ChangelogUIHandler;
+import org.codelutin.vcs.ui.handler.ConfigUIHandler;
+import org.codelutin.vcs.ui.handler.ConfirmUIHandler;
+import org.codelutin.vcs.ui.handler.DiffUIHandler;
+import org.codelutin.vcs.ui.handler.GenerateSshKeyUIHandler;
+import org.codelutin.vcs.ui.handler.SynchUIHandler;
+import org.codelutin.vcs.ui.model.ChangelogUIModel;
+import org.codelutin.vcs.ui.model.ConfigUIModel;
+import org.codelutin.vcs.ui.model.ConfirmUIModel;
+import org.codelutin.vcs.ui.model.DiffUIModel;
+import org.codelutin.vcs.ui.model.GenerateSshKeyUIModel;
+import org.codelutin.vcs.ui.model.SynchUIModel;
-import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
-import java.awt.event.WindowListener;
-import java.lang.reflect.InvocationTargetException;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.ServiceLoader;
/**
* Factory if VCS UI, using a cache.
+ * <p/>
+ * To obtain a ui, use the method {@link #getUI(org.codelutin.ui.DialogUIDef)}.
+ * <p/>
+ * Before all, you must init the factory via {@link #initFactory(VCSConnexionConfig, FactoryWindowListener)} method.
*
* @author chemit
*/
-public class VCSUIFactory {
+public class VCSUIFactory extends UIFactory {
- static protected final Log log = LogFactory.getLog(VCSFactory.class);
+ public static final DialogUIDef<SynchUIModel, SynchUI, SynchUIHandler> SYNCH_UI = new DialogUIDef<SynchUIModel, SynchUI, SynchUIHandler>(SynchUIHandler.class, SynchUI.class, SynchUIModel.class);
+ public static final DialogUIDef<DiffUIModel, DiffUI, DiffUIHandler> DIFF_UI = new DialogUIDef<DiffUIModel, DiffUI, DiffUIHandler>(DiffUIHandler.class, DiffUI.class, DiffUIModel.class);
+ public static final DialogUIDef<ChangelogUIModel, ChangelogUI, ChangelogUIHandler> CHANGELOG_UI = new DialogUIDef<ChangelogUIModel, ChangelogUI, ChangelogUIHandler>(ChangelogUIHandler.class, ChangelogUI.class, ChangelogUIModel.class);
+ public static final DialogUIDef<ConfirmUIModel, ConfirmUI, ConfirmUIHandler> CONFIRM_UI = new DialogUIDef<ConfirmUIModel, ConfirmUI, ConfirmUIHandler>(ConfirmUIHandler.class, ConfirmUI.class, ConfirmUIModel.class);
+ public static final DialogUIDef<ConfigUIModel, ConfigUI, ConfigUIHandler> CONFIG_UI = new DialogUIDef<ConfigUIModel, ConfigUI, ConfigUIHandler>(ConfigUIHandler.class, ConfigUI.class, ConfigUIModel.class);
+ public static final DialogUIDef<GenerateSshKeyUIModel, GenerateSshKeyUI, GenerateSshKeyUIHandler> GENERATE_SHH_KEY_UI = new DialogUIDef<GenerateSshKeyUIModel, GenerateSshKeyUI, GenerateSshKeyUIHandler>(GenerateSshKeyUIHandler.class, GenerateSshKeyUI.class, GenerateSshKeyUIModel.class);
protected static VCSUIFactory instance;
-
- protected Map<VCSUI, AbstractUI> cache;
-
- protected ServiceLoader<VCSUIProvider> loader;
-
protected VCSConnexionConfig config;
+ protected static FactoryWindowListener closeConnextionsListener;
- protected WindowListener defaultWindowListener;
-
- protected WindowListener windowListener;
-
- public static void initFactory(VCSConnexionConfig config, VCSWindowListener myWindowAdapter) {
- getInstance().setConfig(config);
- getInstance().setWindowListener(myWindowAdapter);
+ public static void initFactory(VCSConnexionConfig config, FactoryWindowListener myWindowAdapter) {
+ if (instance != null) {
+ throw new IllegalStateException("factory " + instance + " was already init");
+ }
+ instance = new VCSUIFactory("vcs", config, getCloseConnextionsListener(), myWindowAdapter);
}
- public static SynchUI newSynchUI() {
- return (SynchUI) getInstance().newUI(VCSUI.synch);
+ public static <M extends DialogUIModel, U extends DialogUI<H>, H extends DialogUIHandler<M, U>> U getUI(DialogUIDef<M, U, H> uiType) {
+ return getInstance().getUI(uiType, getInstance().config);
}
- public static DiffUI newDiffUI() {
- return (DiffUI) getInstance().newUI(VCSUI.diff);
+ protected VCSUIFactory(String applicationName, VCSConnexionConfig config, FactoryWindowListener... listeners) {
+ super(applicationName, new DialogUIDef[]{SYNCH_UI, DIFF_UI, CHANGELOG_UI, CONFIRM_UI, CONFIG_UI, GENERATE_SHH_KEY_UI}, listeners);
+ this.config = config;
}
- public static ChangelogUI newChangelogUI() {
- return (ChangelogUI) getInstance().newUI(VCSUI.changelog);
- }
-
- public static ConfirmUI newConfirmUI() {
- return (ConfirmUI) getInstance().newUI(VCSUI.confirm);
- }
-
- public static ConfigUI newConfigUI() {
- return (ConfigUI) getInstance().newUI(VCSUI.config);
- }
-
- public static GenerateSshKeyUI newGenerateSshKeyUI() {
- return (GenerateSshKeyUI) getInstance().newUI(VCSUI.generateSshKey);
- }
-
- public void close() {
- if (cache != null) {
- cache.clear();
- cache = null;
- }
- if (loader != null) {
- loader.reload();
- loader = null;
- }
- }
-
- protected static VCSUIFactory getInstance() {
+ protected static VCSUIFactory getInstance() throws IllegalStateException {
if (instance == null) {
- instance = new VCSUIFactory();
- }
+ throw new IllegalStateException("factory " + VCSUIFactory.class + " was not init");
+ }
return instance;
}
- @Override
- protected void finalize() throws Throwable {
- super.finalize();
- close();
- }
-
- protected synchronized Map<VCSUI, AbstractUI> getCache() {
- if (cache == null) {
- cache = new HashMap<VCSUI, AbstractUI>();
- }
- return cache;
- }
-
- protected synchronized ServiceLoader<VCSUIProvider> getProviders() {
- if (loader == null) {
- long t0 = System.nanoTime();
-
- loader = ServiceLoader.load(VCSUIProvider.class);
- int nb = 0;
- for (VCSUIProvider provider : loader) {
- log.info(provider.getName() + " [" + provider + ']');
- nb++;
- }
- log.info("found " + nb + " ui provider(s) in " + StringUtil.convertTime(t0, System.nanoTime()));
- }
- return loader;
- }
-
- protected AbstractUI newUI(VCSUI uiType) {
-
- AbstractUI result = getInstance().getCache().get(uiType);
- if (result == null) {
- try {
- getCache().put(uiType, result = newUI0(uiType));
- result.addWindowListener(defaultWindowListener);
- if (windowListener != null) {
- result.addWindowListener(windowListener);
- }
- } catch (Exception e) {
- throw new IllegalStateException("could not instanciate ui handler " + uiType + " for reason : " + e.getMessage());
- }
- }
- return result;
- }
-
- protected AbstractUI newUI0(VCSUI uiType) throws IllegalAccessException, InstantiationException, NoSuchMethodException, InvocationTargetException {
- for (VCSUIProvider provider : getProviders()) {
- AbstractUI ui = provider.newUI(uiType);
- if (ui != null) {
-
- uiType.getHandlerClass().getConstructor(ui.getClass().getSuperclass(), VCSConnexionConfig.class).newInstance(ui, config);
- ui.getHandler().init();
- return ui;
- }
- }
- throw new IllegalStateException("could not find ui " + uiType);
- }
-
- protected VCSUIFactory() {
- defaultWindowListener = new VCSWindowListener() {
- protected void allWindowsClosed() {
- }
-
- protected void closeConnexion(VCSConnexion connexion) {
- log.info(connexion);
- connexion.close();
- }
- };
- }
-
- protected void setConfig(VCSConnexionConfig config) {
- this.config = config;
- }
-
- protected void setWindowListener(WindowListener windowListener) {
- this.windowListener = windowListener;
- }
-
- public static abstract class VCSWindowListener extends WindowAdapter {
-
- protected abstract void allWindowsClosed();
-
- protected abstract void closeConnexion(VCSConnexion connexion);
-
- private boolean wasClosed;
-
- @Override
- public void windowClosed(WindowEvent e) {
- if (log.isDebugEnabled()) {
- log.debug(e.getSource());
- }
- if (e.getWindow().isVisible()) {
- // only deal with real closed and none visible windows...
- return;
- }
- for (AbstractUI vcsui : VCSUIFactory.getInstance().cache.values()) {
- if (vcsui.isVisible()) {
- // at least one ui visible, do not kill connexions
- return;
- }
- }
- if (wasClosed) {
- // make sure to process once
- return;
- }
- log.info("kill connexions... (last ui : " + e.getSource() + ")");
- synchronized (this) {
- try {
+ protected static FactoryWindowListener getCloseConnextionsListener() {
+ if (closeConnextionsListener == null) {
+ closeConnextionsListener = new FactoryWindowListener() {
+ public void allWindowsClosed(WindowEvent e) {
+ if (log.isDebugEnabled()) {
+ log.debug(this + " for " + e);
+ }
// all ui are down, kill all connexions
for (VCSConnexion connexion : VCSFactory.getInstance().getConnexions()) {
- closeConnexion(connexion);
+ log.info("close connexion " + connexion);
+ connexion.close();
}
- allWindowsClosed();
- } finally {
- wasClosed = true;
}
- }
+ };
}
+ return closeConnextionsListener;
}
}
\ No newline at end of file
Modified: trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/action/ChangeFileAction.java
===================================================================
--- trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/action/ChangeFileAction.java 2008-04-19 18:40:26 UTC (rev 599)
+++ trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/action/ChangeFileAction.java 2008-04-19 18:41:31 UTC (rev 600)
@@ -16,11 +16,7 @@
import org.codelutin.vcs.ui.util.ui.AbstractTabOneFileUI;
import org.codelutin.vcs.ui.util.handler.AbstractTabOneFileUIHandler;
-import static org.codelutin.vcs.ui.util.UIHelper.createActionIcon;
-import javax.swing.AbstractAction;
-import java.awt.event.ActionEvent;
-
/** @author chemit */
public class ChangeFileAction extends org.codelutin.vcs.ui.util.AbstractUIAction<AbstractTabOneFileUIHandler<?, ?>> {
@@ -28,13 +24,13 @@
private static final long serialVersionUID = 1L;
- public static AbstractAction createAction(boolean location, AbstractTabOneFileUI<?> ui) {
+ public static javax.swing.AbstractAction createAction(boolean location, AbstractTabOneFileUI<?> ui) {
ChangeFileAction action = new ChangeFileAction(location);
action.setUi(ui);
return action;
}
- public void actionPerformed(ActionEvent e) {
+ public void actionPerformed(java.awt.event.ActionEvent e) {
checkInit();
if (goPrevious) {
getHandler().gotoPreviousFile();
@@ -48,7 +44,7 @@
}
protected ChangeFileAction(boolean location) {
- super(null, createActionIcon("file-" + (location ? "prev" : "next")));
+ super(null, org.codelutin.ui.UIHelper.createActionIcon("file-" + (location ? "prev" : "next")));
this.goPrevious = location;
//putValue(SHORT_DESCRIPTION, location.getTip());
//putValue(DISPLAYED_MNEMONIC_INDEX_KEY, 0);
Modified: trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/action/ChangeLocationAction.java
===================================================================
--- trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/action/ChangeLocationAction.java 2008-04-19 18:40:26 UTC (rev 599)
+++ trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/action/ChangeLocationAction.java 2008-04-19 18:41:31 UTC (rev 600)
@@ -17,11 +17,7 @@
import org.codelutin.vcs.type.VCSEntryLocation;
import org.codelutin.vcs.ui.util.ui.AbstractTabUI;
import org.codelutin.vcs.ui.util.handler.AbstractTabUIHandler;
-import org.codelutin.vcs.ui.util.UIHelper;
-import javax.swing.AbstractAction;
-import java.awt.event.ActionEvent;
-
/** @author chemit */
public class ChangeLocationAction extends org.codelutin.vcs.ui.util.AbstractUIAction<AbstractTabUIHandler<?, ?>> {
@@ -29,13 +25,13 @@
private static final long serialVersionUID = 1L;
- public static AbstractAction createAction(VCSEntryLocation location, AbstractTabUI<?> ui) {
+ public static javax.swing.AbstractAction createAction(VCSEntryLocation location, AbstractTabUI<?> ui) {
ChangeLocationAction action = new ChangeLocationAction(location);
action.setUi(ui);
return action;
}
- public void actionPerformed(ActionEvent e) {
+ public void actionPerformed(java.awt.event.ActionEvent e) {
checkInit();
if (location == null) {
return;
@@ -52,7 +48,7 @@
}
protected ChangeLocationAction(VCSEntryLocation location) {
- super(location.getLibelle(), UIHelper.createLocationIcon(location));
+ super(location.getLibelle(), org.codelutin.vcs.ui.util.UIHelper.createLocationIcon(location));
this.location = location;
putValue(SHORT_DESCRIPTION, location.getTip());
putValue(DISPLAYED_MNEMONIC_INDEX_KEY, 0);
Modified: trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/action/ConfirmAction.java
===================================================================
--- trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/action/ConfirmAction.java 2008-04-19 18:40:26 UTC (rev 599)
+++ trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/action/ConfirmAction.java 2008-04-19 18:41:31 UTC (rev 600)
@@ -15,13 +15,8 @@
package org.codelutin.vcs.ui.action;
import org.codelutin.vcs.type.VCSAction;
-import org.codelutin.vcs.ui.ConfirmUI;
import org.codelutin.vcs.ui.handler.ConfirmUIHandler;
-import org.codelutin.vcs.ui.util.UIHelper;
-import javax.swing.AbstractAction;
-import java.awt.event.ActionEvent;
-
/** @author chemit */
public class ConfirmAction extends org.codelutin.vcs.ui.util.AbstractUIAction<ConfirmUIHandler> {
@@ -29,13 +24,13 @@
private static final long serialVersionUID = 1L;
- public static AbstractAction createAction(VCSAction action, ConfirmUI ui) {
+ public static javax.swing.AbstractAction createAction(VCSAction action, org.codelutin.vcs.ui.ConfirmUI ui) {
ConfirmAction action1 = new ConfirmAction(action);
action1.setUi(ui);
return action1;
}
- public void actionPerformed(ActionEvent e) {
+ public void actionPerformed(java.awt.event.ActionEvent e) {
checkInit();
if (action == null) {
return;
@@ -52,8 +47,8 @@
case DELETE:
case REVERT:
case UPDATE:
- ConfirmUIHandler handler = getHandler();
- handler.doAction(getHandler().getUi().getCommitMessage().getText(), handler.getModel().getEntriesModel());
+ ConfirmUIHandler uiHandler = getHandler();
+ uiHandler.doAction(uiHandler.getUi().getCommitMessage().getText(), uiHandler.getModel().getEntriesModel());
return;
}
throw new IllegalStateException("could not perform action for action " + action + " (" + this + ')');
@@ -68,11 +63,10 @@
}
protected ConfirmAction(VCSAction action) {
- super(null, UIHelper.createActionIcon(action));
+ super(null, org.codelutin.vcs.ui.util.UIHelper.createActionIcon(action));
this.action = action;
//putValue(SHORT_DESCRIPTION, action.getTip());
putValue(DISPLAYED_MNEMONIC_INDEX_KEY, 0);
putValue(MNEMONIC_KEY, (int) (action.getLibelle()).charAt(0));
}
-
}
\ No newline at end of file
Modified: trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/action/DiffAction.java
===================================================================
--- trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/action/DiffAction.java 2008-04-19 18:40:26 UTC (rev 599)
+++ trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/action/DiffAction.java 2008-04-19 18:41:31 UTC (rev 600)
@@ -14,27 +14,20 @@
*/
package org.codelutin.vcs.ui.action;
-import org.codelutin.vcs.ui.DiffUI;
-import org.codelutin.vcs.ui.handler.DiffUIHandler;
-import static org.codelutin.vcs.ui.util.UIHelper.createActionIcon;
-
-import javax.swing.AbstractAction;
-import java.awt.event.ActionEvent;
-
/** @author chemit */
-public class DiffAction extends org.codelutin.vcs.ui.util.AbstractUIAction<DiffUIHandler> {
+public class DiffAction extends org.codelutin.vcs.ui.util.AbstractUIAction<org.codelutin.vcs.ui.handler.DiffUIHandler> {
protected boolean goUp;
private static final long serialVersionUID = 1L;
- public static AbstractAction createAction(boolean goUp, DiffUI ui) {
+ public static javax.swing.AbstractAction createAction(boolean goUp, org.codelutin.vcs.ui.DiffUI ui) {
DiffAction action1 = new DiffAction(goUp);
action1.setUi(ui);
return action1;
}
- public void actionPerformed(ActionEvent e) {
+ public void actionPerformed(java.awt.event.ActionEvent e) {
checkInit();
if (goUp) {
getHandler().gotoPreviousDiff();
@@ -52,7 +45,7 @@
}
protected DiffAction(boolean goUp) {
- super(null, createActionIcon("diff-" + (goUp ? "prev" : "next")));
+ super(null, org.codelutin.ui.UIHelper.createActionIcon("diff-" + (goUp ? "prev" : "next")));
this.goUp = goUp;
//putValue(SHORT_DESCRIPTION, action.getTip());
//putValue(DISPLAYED_MNEMONIC_INDEX_KEY, 0);
Modified: trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/action/HelpAction.java
===================================================================
--- trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/action/HelpAction.java 2008-04-19 18:40:26 UTC (rev 599)
+++ trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/action/HelpAction.java 2008-04-19 18:41:31 UTC (rev 600)
@@ -15,17 +15,13 @@
package org.codelutin.vcs.ui.action;
import static org.codelutin.i18n.I18n._;
-import org.codelutin.vcs.ui.util.ui.AbstractUI;
import org.codelutin.vcs.ui.util.handler.AbstractUIHandler;
-import static org.codelutin.vcs.ui.util.UIHelper.createActionIcon;
+import org.codelutin.vcs.ui.util.ui.AbstractUI;
-import javax.swing.AbstractAction;
-import java.awt.event.ActionEvent;
-
/** @author chemit */
public class HelpAction extends org.codelutin.vcs.ui.util.AbstractUIAction<AbstractUIHandler<?, ?>> {
- public static <H extends AbstractUIHandler<?, ?>> AbstractAction createAction(AbstractUI<H> ui) {
+ public static <H extends AbstractUIHandler<?, ?>> javax.swing.AbstractAction createAction(AbstractUI<H> ui) {
HelpAction action = new HelpAction();
action.setUi(ui);
return action;
@@ -33,13 +29,13 @@
private static final long serialVersionUID = 1L;
- public void actionPerformed(ActionEvent e) {
+ public void actionPerformed(java.awt.event.ActionEvent e) {
checkInit();
log.info("//TODO : " + this + ", " + ui);
}
protected HelpAction() {
- super(_("lutinvcs.action.help.libelle"), createActionIcon("help"));
+ super(_("lutinvcs.action.help.libelle"), org.codelutin.ui.UIHelper.createActionIcon("help"));
String name = (String) getValue(NAME);
putValue(DISPLAYED_MNEMONIC_INDEX_KEY, name.length() - 1);
putValue(ACCELERATOR_KEY, (int) name.charAt(name.length() - 1));
Modified: trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/action/ShowConfigAction.java
===================================================================
--- trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/action/ShowConfigAction.java 2008-04-19 18:40:26 UTC (rev 599)
+++ trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/action/ShowConfigAction.java 2008-04-19 18:41:31 UTC (rev 600)
@@ -15,9 +15,7 @@
package org.codelutin.vcs.ui.action;
import static org.codelutin.i18n.I18n._;
-import org.codelutin.vcs.ui.ConfigUI;
-import org.codelutin.vcs.ui.VCSUIFactory;
-import static org.codelutin.vcs.ui.util.UIHelper.createActionIcon;
+import static org.codelutin.vcs.ui.VCSUIFactory.CONFIG_UI;
import org.codelutin.vcs.ui.util.handler.AbstractUIHandler;
import org.codelutin.vcs.ui.util.ui.AbstractUI;
@@ -37,14 +35,14 @@
public void actionPerformed(ActionEvent e) {
checkInit();
- ConfigUI i = VCSUIFactory.newConfigUI();
+ org.codelutin.vcs.ui.ConfigUI ui = org.codelutin.vcs.ui.VCSUIFactory.getUI(CONFIG_UI);
// populate with common config
- i.getHandler().getModel().populate(i.getHandler().getConfig());
- i.setVisible(true);
+ ui.getHandler().getModel().populate(ui.getHandler().getConfig());
+ ui.setVisible(true);
}
protected ShowConfigAction() {
- super(_("lutinvcs.action.showconfig.libelle"), createActionIcon("showconfig"));
+ super(_("lutinvcs.action.showconfig.libelle"), org.codelutin.ui.UIHelper.createActionIcon("showconfig"));
String name = (String) getValue(NAME);
putValue(DISPLAYED_MNEMONIC_INDEX_KEY, name.length() - 1);
putValue(ACCELERATOR_KEY, (int) name.charAt(name.length() - 1));
Modified: trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/action/ShowMessagesAction.java
===================================================================
--- trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/action/ShowMessagesAction.java 2008-04-19 18:40:26 UTC (rev 599)
+++ trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/action/ShowMessagesAction.java 2008-04-19 18:41:31 UTC (rev 600)
@@ -14,49 +14,43 @@
*/
package org.codelutin.vcs.ui.action;
-import static org.codelutin.i18n.I18n._;
-import org.codelutin.vcs.ui.ConfirmUI;
import org.codelutin.vcs.ui.handler.ConfirmUIHandler;
-import org.codelutin.vcs.ui.util.UIHelper;
-import javax.swing.AbstractAction;
-import javax.swing.AbstractButton;
-import java.awt.event.ActionEvent;
-
/** @author chemit */
public class ShowMessagesAction extends org.codelutin.vcs.ui.util.AbstractUIAction<ConfirmUIHandler> {
private static final long serialVersionUID = 1L;
- public static AbstractAction createAction(ConfirmUI ui) {
+ public static javax.swing.AbstractAction createAction(org.codelutin.vcs.ui.ConfirmUI ui) {
ShowMessagesAction action1 = new ShowMessagesAction();
action1.setUi(ui);
return action1;
}
- public void actionPerformed(ActionEvent e) {
+ public void actionPerformed(java.awt.event.ActionEvent e) {
checkInit();
- String currentMessage = getHandler().getCurrentMessage();
+ ConfirmUIHandler uiHandler = getHandler();
+
+ String currentMessage = uiHandler.getCurrentMessage();
- if (!getHandler().getModel().containsMessage(currentMessage)) {
+ if (!uiHandler.getModel().containsMessage(currentMessage)) {
// save currentmessage in special 0 row
- getHandler().setMessage(0, false, true, currentMessage);
+ uiHandler.setMessage(0, false, true, currentMessage);
} else {
// select
- getHandler().getUi().getMessageSelectionModel().setValueIsAdjusting(true);
- getHandler().getUi().getMessages().setSelectedValue(currentMessage, true);
- getHandler().getUi().getMessageSelectionModel().setValueIsAdjusting(false);
+ uiHandler.getUi().getMessageSelectionModel().setValueIsAdjusting(true);
+ uiHandler.getUi().getMessages().setSelectedValue(currentMessage, true);
+ uiHandler.getUi().getMessageSelectionModel().setValueIsAdjusting(false);
}
- getHandler().getUi().getPopup().show((AbstractButton) e.getSource(), 0, 0);
- //log.info("//TODO:" + this + " : " + messages.size());
+ uiHandler.getUi().getPopup().show((javax.swing.AbstractButton) e.getSource(), 0, 0);
}
protected ShowMessagesAction() {
- super(null, UIHelper.createActionIcon("showmessages"));
- putValue(SHORT_DESCRIPTION, _("lutinvcs.action.showmessages.tip"));
+ super(null, org.codelutin.ui.UIHelper.createActionIcon("showmessages"));
+ putValue(SHORT_DESCRIPTION, org.codelutin.i18n.I18n._("lutinvcs.action.showmessages.tip"));
setEnabled(false);
}
Modified: trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/action/TabUIAction.java
===================================================================
--- trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/action/TabUIAction.java 2008-04-19 18:40:26 UTC (rev 599)
+++ trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/action/TabUIAction.java 2008-04-19 18:41:31 UTC (rev 600)
@@ -16,15 +16,12 @@
import org.codelutin.vcs.VCSEntry;
import org.codelutin.vcs.type.VCSAction;
-import org.codelutin.vcs.ui.util.ui.AbstractTabUI;
import org.codelutin.vcs.ui.util.handler.AbstractTabUIHandler;
-import org.codelutin.vcs.ui.util.AbstractVCSEntriesTableModel;
-import org.codelutin.vcs.ui.util.UIHelper;
+import org.codelutin.vcs.ui.util.ui.AbstractTabUI;
-import javax.swing.AbstractAction;
-import java.awt.event.ActionEvent;
import java.util.List;
+
/** @author chemit */
public class TabUIAction extends org.codelutin.vcs.ui.util.AbstractUIAction<AbstractTabUIHandler<?, ?>> {
@@ -33,19 +30,19 @@
private static final long serialVersionUID = 1L;
- public static AbstractAction createAction(VCSAction action, boolean useSelection, AbstractTabUI<?> ui) {
+ public static javax.swing.AbstractAction createAction(VCSAction action, boolean useSelection, AbstractTabUI<?> ui) {
TabUIAction action1 = new TabUIAction(action, useSelection);
action1.setUi(ui);
return action1;
}
- public void actionPerformed(ActionEvent e) {
+ public void actionPerformed(java.awt.event.ActionEvent e) {
checkInit();
if (action == null) {
return;
}
AbstractTabUIHandler<?, ?> handler = getHandler();
- AbstractVCSEntriesTableModel model = handler.getModel().getEntriesModel();
+ org.codelutin.vcs.ui.util.AbstractVCSEntriesTableModel model = handler.getModel().getEntriesModel();
List<VCSEntry> entries = model.filter(action, model.getDisplayedEntries(useSelection ? handler.getSelectionModel() : null));
switch (action) {
case CHANGELOG:
@@ -87,7 +84,7 @@
}
protected TabUIAction(VCSAction action, boolean useSelection) {
- super(null, UIHelper.createActionIcon(action));
+ super(null, org.codelutin.vcs.ui.util.UIHelper.createActionIcon(action));
this.useSelection = useSelection;
this.action = action;
//putValue(SHORT_DESCRIPTION, action.getTip());
Modified: trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/handler/SynchUIHandler.java
===================================================================
--- trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/handler/SynchUIHandler.java 2008-04-19 18:40:26 UTC (rev 599)
+++ trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/handler/SynchUIHandler.java 2008-04-19 18:41:31 UTC (rev 600)
@@ -1,15 +1,15 @@
package org.codelutin.vcs.ui.handler;
import static org.codelutin.i18n.I18n._;
+import org.codelutin.vcs.VCSConnexionConfig;
import org.codelutin.vcs.VCSEntry;
-import org.codelutin.vcs.VCSConnexionConfig;
import org.codelutin.vcs.event.VCSActionThreadEvent;
import org.codelutin.vcs.type.VCSAction;
import org.codelutin.vcs.type.VCSState;
import org.codelutin.vcs.ui.SynchUI;
import org.codelutin.vcs.ui.model.SynchUIModel;
+import org.codelutin.vcs.ui.util.AbstractVCSEntriesTableModel;
import org.codelutin.vcs.ui.util.handler.AbstractTabUIHandler;
-import org.codelutin.vcs.ui.util.AbstractVCSEntriesTableModel;
import javax.swing.AbstractButton;
import javax.swing.JPopupMenu;
@@ -24,18 +24,20 @@
/** @author chemit */
public class SynchUIHandler extends AbstractTabUIHandler<SynchUIModel, SynchUI> {
- public SynchUIHandler(SynchUI ui,VCSConnexionConfig config) {
- super(ui, new SynchUIModel(), config,true);
+ public SynchUIHandler(SynchUI ui, VCSConnexionConfig config) {
+ super(ui, new SynchUIModel(), config, true);
ui.setHandler(this);
}
public void onActionStarted(VCSActionThreadEvent event) {
- log.info(event);
+ if (log.isDebugEnabled()) {
+ log.debug(event);
+ }
}
public void onActionDone(VCSActionThreadEvent event) {
if (log.isDebugEnabled()) {
- log.info(event);
+ log.debug(event);
}
AbstractVCSEntriesTableModel entriesModel = getModel().getEntriesModel();
for (VCSEntry entry : event.getSource()) {
@@ -44,7 +46,9 @@
entriesModel.removeEntry(entry);
}
}
- log.info("notify table model changed " + this);
+ if (log.isDebugEnabled()) {
+ log.debug("notify table model changed " + this);
+ }
entriesModel.fireTableDataChanged();
}
Modified: trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/util/UIHelper.java
===================================================================
--- trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/util/UIHelper.java 2008-04-19 18:40:26 UTC (rev 599)
+++ trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/util/UIHelper.java 2008-04-19 18:41:31 UTC (rev 600)
@@ -104,12 +104,8 @@
return map;
}
- public static ImageIcon createActionIcon(String name) {
- return org.codelutin.ui.UIHelper.createImageIcon("action-" + name + ".png");
- }
-
public static ImageIcon createActionIcon(VCSAction location) {
- return createActionIcon(location.name().toLowerCase());
+ return org.codelutin.ui.UIHelper.createActionIcon(location.name().toLowerCase());
}
public static ImageIcon createLocationIcon(VCSEntryLocation location) {
Modified: trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/util/handler/AbstractTabUIHandler.java
===================================================================
--- trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/util/handler/AbstractTabUIHandler.java 2008-04-19 18:40:26 UTC (rev 599)
+++ trunk/lutinvcs/ui/common/src/main/java/org/codelutin/vcs/ui/util/handler/AbstractTabUIHandler.java 2008-04-19 18:41:31 UTC (rev 600)
@@ -14,17 +14,17 @@
*/
package org.codelutin.vcs.ui.util.handler;
+import org.codelutin.vcs.VCSConnexionConfig;
import org.codelutin.vcs.VCSEntry;
import org.codelutin.vcs.VCSException;
-import org.codelutin.vcs.VCSConnexionConfig;
import org.codelutin.vcs.type.VCSAction;
import org.codelutin.vcs.ui.ChangelogUI;
import org.codelutin.vcs.ui.ConfirmUI;
import org.codelutin.vcs.ui.DiffUI;
import org.codelutin.vcs.ui.VCSUIFactory;
+import org.codelutin.vcs.ui.util.AbstractVCSEntriesTableModel;
import org.codelutin.vcs.ui.util.model.AbstractTabUIModel;
import org.codelutin.vcs.ui.util.ui.AbstractTabUI;
-import org.codelutin.vcs.ui.util.AbstractVCSEntriesTableModel;
import javax.swing.AbstractButton;
import javax.swing.ListSelectionModel;
@@ -36,8 +36,8 @@
/** @author chemit */
public abstract class AbstractTabUIHandler<M extends AbstractTabUIModel, U extends AbstractTabUI<? extends AbstractTabUIHandler>> extends AbstractBasicUIHandler<M, U> implements TableModelListener {
- protected AbstractTabUIHandler(U ui, M model, VCSConnexionConfig config,boolean useThreadListener) {
- super(ui, model,config, useThreadListener);
+ protected AbstractTabUIHandler(U ui, M model, VCSConnexionConfig config, boolean useThreadListener) {
+ super(ui, model, config, useThreadListener);
}
public void propertyChange(PropertyChangeEvent evt) {
@@ -58,13 +58,12 @@
protected abstract void afterLocationChanged();
-
protected void updateAction(EnumMap<VCSAction, Integer> actions, boolean hasActions, AbstractButton ui, VCSAction action) {
ui.setEnabled(hasActions && actions.containsKey(action) && actions.get(action) > 0);
}
public void showConfirmUI(VCSAction action, AbstractVCSEntriesTableModel model, List<VCSEntry> entries) {
- ConfirmUI ui = VCSUIFactory.newConfirmUI();
+ ConfirmUI ui = VCSUIFactory.getUI(VCSUIFactory.CONFIRM_UI);
if (log.isDebugEnabled()) {
log.debug("nb entries:" + entries.size());
}
@@ -74,7 +73,7 @@
}
public void showDiffUI(boolean useSelection, AbstractVCSEntriesTableModel model, List<VCSEntry> entries) {
- DiffUI ui = VCSUIFactory.newDiffUI();
+ DiffUI ui = VCSUIFactory.getUI(VCSUIFactory.DIFF_UI);
if (!useSelection) {
// take all entries
entries = model.filter(VCSAction.DIFF, model.getEntries());
@@ -89,7 +88,7 @@
}
public void showChangelogUI(boolean useSelection, AbstractVCSEntriesTableModel model, List<VCSEntry> entries) {
- ChangelogUI ui = VCSUIFactory.newChangelogUI();
+ ChangelogUI ui = VCSUIFactory.getUI(VCSUIFactory.CHANGELOG_UI);
if (!useSelection) {
// take all entries
entries = model.filter(VCSAction.CHANGELOG, model.getEntries());
Copied: trunk/lutinvcs/ui/jaxx/src/main/resources/META-INF/services/org.codelutin.ui.UIProvider (from rev 547, trunk/lutinvcs/ui/jaxx/src/main/resources/META-INF/services/org.codelutin.vcs.ui.VCSUIProvider)
===================================================================
--- trunk/lutinvcs/ui/jaxx/src/main/resources/META-INF/services/org.codelutin.ui.UIProvider (rev 0)
+++ trunk/lutinvcs/ui/jaxx/src/main/resources/META-INF/services/org.codelutin.ui.UIProvider 2008-04-19 18:41:31 UTC (rev 600)
@@ -0,0 +1 @@
+org.codelutin.vcs.ui.JaxxVCSUIProvider
\ No newline at end of file
Deleted: trunk/lutinvcs/ui/jaxx/src/main/resources/META-INF/services/org.codelutin.vcs.ui.VCSUIProvider
===================================================================
--- trunk/lutinvcs/ui/jaxx/src/main/resources/META-INF/services/org.codelutin.vcs.ui.VCSUIProvider 2008-04-19 18:40:26 UTC (rev 599)
+++ trunk/lutinvcs/ui/jaxx/src/main/resources/META-INF/services/org.codelutin.vcs.ui.VCSUIProvider 2008-04-19 18:41:31 UTC (rev 600)
@@ -1 +0,0 @@
-org.codelutin.vcs.ui.JaxxVCSUIProvider
\ No newline at end of file
Modified: trunk/lutinvcs/ui/jaxx/src/main/uimodel/org/codelutin/vcs/ui/JaxxConfigUI.jaxx
===================================================================
--- trunk/lutinvcs/ui/jaxx/src/main/uimodel/org/codelutin/vcs/ui/JaxxConfigUI.jaxx 2008-04-19 18:40:26 UTC (rev 599)
+++ trunk/lutinvcs/ui/jaxx/src/main/uimodel/org/codelutin/vcs/ui/JaxxConfigUI.jaxx 2008-04-19 18:41:31 UTC (rev 600)
@@ -1,4 +1,4 @@
-<ConfigUI title='lutinvcs.config.title'>
+<ConfigUI title='lutinvcs.config.title' modal='true'>
<!--ConfigUI title='lutinvcs.config.title' resizable='false'-->
<style source="config.css"/>
<script>
Modified: trunk/lutinvcs/ui/jaxx/src/main/uimodel/org/codelutin/vcs/ui/JaxxVCSUIProvider.java
===================================================================
--- trunk/lutinvcs/ui/jaxx/src/main/uimodel/org/codelutin/vcs/ui/JaxxVCSUIProvider.java 2008-04-19 18:40:26 UTC (rev 599)
+++ trunk/lutinvcs/ui/jaxx/src/main/uimodel/org/codelutin/vcs/ui/JaxxVCSUIProvider.java 2008-04-19 18:41:31 UTC (rev 600)
@@ -15,9 +15,15 @@
package org.codelutin.vcs.ui;
/** @author chemit */
-public class JaxxVCSUIProvider extends VCSUIProvider {
+public class JaxxVCSUIProvider extends org.codelutin.ui.UIProvider {
public JaxxVCSUIProvider() {
- super("jaxx", JaxxSynchUI.class, JaxxDiffUI.class, JaxxChangelogUI.class,JaxxConfirmUI.class,JaxxConfigUI.class,JaxxGenerateSshKeyUI.class);
+ super("vcs", "jaxx",
+ JaxxSynchUI.class,
+ JaxxDiffUI.class,
+ JaxxChangelogUI.class,
+ JaxxConfirmUI.class,
+ JaxxConfigUI.class,
+ JaxxGenerateSshKeyUI.class);
}
}
\ No newline at end of file