branch feature/6690 created (now 236d7c7)
This is an automated email from the git hooks/post-receive script. New change to branch feature/6690 in repository tutti. See http://git.codelutin.com/tutti.git at 236d7c7 utilisation helper d'action et ajout todos This branch includes the following new commits: new ab7f43e remove System.out.println new 9a1d0d5 ajout de méthodes utiles pour créer des actions new 284541a ajout sur les boutons d'un racourci clavier (touche entrer) new 236d7c7 utilisation helper d'action et ajout todos The 4 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference. Detailed log of new commits: commit 236d7c7d67f90f36a6c69480eac7a06528dbd8c5 Author: Tony CHEMIT <chemit@codelutin.com> Date: Thu Feb 19 11:50:51 2015 +0100 utilisation helper d'action et ajout todos commit 284541a7ddb6d7d3ccf16a0e5ab1b4c82394f011 Author: Tony CHEMIT <chemit@codelutin.com> Date: Thu Feb 19 11:48:01 2015 +0100 ajout sur les boutons d'un racourci clavier (touche entrer) commit 9a1d0d58ecc6989a06e7ad715e9c66332edbc2c1 Author: Tony CHEMIT <chemit@codelutin.com> Date: Thu Feb 19 11:47:23 2015 +0100 ajout de méthodes utiles pour créer des actions commit ab7f43e6c70a521760be53d8845464477bd59570 Author: Tony CHEMIT <chemit@codelutin.com> Date: Thu Feb 19 10:47:11 2015 +0100 remove System.out.println -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch feature/6690 in repository tutti. See http://git.codelutin.com/tutti.git commit ab7f43e6c70a521760be53d8845464477bd59570 Author: Tony CHEMIT <chemit@codelutin.com> Date: Thu Feb 19 10:47:11 2015 +0100 remove System.out.println --- .../tutti/ui/swing/content/operation/EditFishingOperationUIModel.java | 2 -- 1 file changed, 2 deletions(-) diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIModel.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIModel.java index 79ceb1b..b44df3a 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIModel.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIModel.java @@ -1303,7 +1303,6 @@ public class EditFishingOperationUIModel extends AbstractTuttiBeanUIModel<Fishin @Override public void addSecondaryVessel(Vessel secondaryVessel) { editObject.addSecondaryVessel(secondaryVessel); - System.out.println("sec vessel " + secondaryVessel.getId()); firePropertyChange(PROPERTY_SECONDARY_VESSEL, null, getSecondaryVessel()); } @@ -1344,7 +1343,6 @@ public class EditFishingOperationUIModel extends AbstractTuttiBeanUIModel<Fishin @Override public void setSecondaryVessel(List<Vessel> secondaryVessel) { - System.out.println("sec vessels " + secondaryVessel); editObject.setSecondaryVessel(secondaryVessel); firePropertyChange(PROPERTY_SECONDARY_VESSEL, null, getSecondaryVessel()); } -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch feature/6690 in repository tutti. See http://git.codelutin.com/tutti.git commit 9a1d0d58ecc6989a06e7ad715e9c66332edbc2c1 Author: Tony CHEMIT <chemit@codelutin.com> Date: Thu Feb 19 11:47:23 2015 +0100 ajout de méthodes utiles pour créer des actions --- .../ifremer/tutti/ui/swing/util/TuttiUIUtil.java | 56 +++++++++++++++++++++- 1 file changed, 54 insertions(+), 2 deletions(-) diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/TuttiUIUtil.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/TuttiUIUtil.java index e94ce78..2fcd826 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/TuttiUIUtil.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/TuttiUIUtil.java @@ -34,8 +34,15 @@ import org.apache.commons.logging.LogFactory; import org.nuiton.jaxx.application.ApplicationBusinessException; import org.nuiton.jaxx.application.swing.util.ApplicationUIUtil; -import javax.swing.*; -import java.awt.*; +import javax.swing.AbstractAction; +import javax.swing.AbstractButton; +import javax.swing.Action; +import javax.swing.ImageIcon; +import javax.swing.JComponent; +import java.awt.Color; +import java.awt.Desktop; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; @@ -154,6 +161,7 @@ public final class TuttiUIUtil extends ApplicationUIUtil { /** * Computes the brightness of a color. This can be useful to determine the text color according to the backgound. * (e.g. if the backgound's brightness is over 125, the text could be written in black, otherwise in white) + * * @param c the color * @return the brightness of the color: 0 the darkest, 255 the brightest */ @@ -166,4 +174,48 @@ public final class TuttiUIUtil extends ApplicationUIUtil { green * green * .691 + blue * blue * .068); } + + public static void prepareAction(AbstractButton button, Action action, String actionName) { + + action.putValue(Action.SMALL_ICON, button.getIcon()); + action.putValue(Action.LARGE_ICON_KEY, button.getIcon()); + action.putValue(Action.ACTION_COMMAND_KEY, actionName); + action.putValue(Action.NAME, button.getText()); + action.putValue(Action.SHORT_DESCRIPTION, button.getToolTipText()); + action.putValue(Action.MNEMONIC_KEY, button.getMnemonic()); + + button.setAction(action); + + } + + public static Action addDelegateAction(AbstractButton button, String actionName) { + + Action action = new AbstractAction() { + + private static final long serialVersionUID = 1L; + + @Override + public void actionPerformed(ActionEvent e) { + + AbstractButton source = (AbstractButton) e.getSource(); + + ActionListener[] actionListeners = source.getActionListeners(); + + for (ActionListener actionListener : actionListeners) { + if (this != actionListener) { + if (log.isDebugEnabled()) { + log.debug("Do actionPerformed on listener: " + actionListener); + } + actionListener.actionPerformed(e); + } + } + + } + + }; + + prepareAction(button, action, actionName); + return action; + + } } -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch feature/6690 in repository tutti. See http://git.codelutin.com/tutti.git commit 284541a7ddb6d7d3ccf16a0e5ab1b4c82394f011 Author: Tony CHEMIT <chemit@codelutin.com> Date: Thu Feb 19 11:48:01 2015 +0100 ajout sur les boutons d'un racourci clavier (touche entrer) --- .../ui/swing/util/AbstractTuttiUIHandler.java | 50 +++++++++++++++++++++- 1 file changed, 48 insertions(+), 2 deletions(-) diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/AbstractTuttiUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/AbstractTuttiUIHandler.java index df964b8..0326a75 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/AbstractTuttiUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/AbstractTuttiUIHandler.java @@ -60,14 +60,24 @@ import org.nuiton.jaxx.application.swing.table.ColumnIdentifier; import org.nuiton.jaxx.widgets.number.NumberEditor; import org.nuiton.validator.bean.simple.SimpleBeanValidator; -import javax.swing.*; +import javax.swing.AbstractButton; +import javax.swing.Action; +import javax.swing.JComponent; +import javax.swing.JLabel; +import javax.swing.JTable; +import javax.swing.JTextField; +import javax.swing.KeyStroke; import javax.swing.border.LineBorder; import javax.swing.event.TableModelEvent; import javax.swing.event.TableModelListener; import javax.swing.table.TableCellEditor; import javax.swing.table.TableCellRenderer; import javax.swing.table.TableColumnModel; -import java.awt.*; +import java.awt.Color; +import java.awt.Component; +import java.awt.Font; +import java.awt.event.ActionListener; +import java.awt.event.KeyEvent; import java.beans.PropertyChangeEvent; import java.beans.PropertyChangeListener; import java.text.DecimalFormat; @@ -361,6 +371,42 @@ public abstract class AbstractTuttiUIHandler<M, UI extends TuttiUI<M, ?>> extend } } + @Override + protected void initButton(AbstractButton abstractButton) { + + super.initButton(abstractButton); + + String actionName = abstractButton.getName(); + Action action = abstractButton.getAction(); + if (action == null) { + + ActionListener[] actionListeners = abstractButton.getActionListeners(); + if (actionListeners != null && actionListeners.length > 0) { + + if (log.isDebugEnabled()) { + log.warn("AbstractButton with no action (will box it to an action): " + actionName); + } + + action = TuttiUIUtil.addDelegateAction(abstractButton, actionName); + + abstractButton.getInputMap().put(KeyStroke.getKeyStroke(KeyEvent.VK_ENTER, 0), actionName); + abstractButton.getActionMap().put(actionName, action); + + } + } + + if (action != null) { + + if (log.isDebugEnabled()) { + log.debug("Register action: " + actionName); + } + abstractButton.getInputMap().put(KeyStroke.getKeyStroke(KeyEvent.VK_ENTER, 0), actionName); + abstractButton.getActionMap().put(actionName, action); + + } + + } + protected void initNumberEditor(NumberEditor editor) { if (log.isDebugEnabled()) { log.debug("init number editor " + editor.getName()); -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch feature/6690 in repository tutti. See http://git.codelutin.com/tutti.git commit 236d7c7d67f90f36a6c69480eac7a06528dbd8c5 Author: Tony CHEMIT <chemit@codelutin.com> Date: Thu Feb 19 11:50:51 2015 +0100 utilisation helper d'action et ajout todos --- .../util/attachment/AttachmentEditorUIHandler.java | 1 + .../ui/swing/util/catches/EnterWeightUIHandler.java | 18 +++--------------- .../ui/swing/util/comment/CommentEditorUIHandler.java | 1 + 3 files changed, 5 insertions(+), 15 deletions(-) diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/AttachmentEditorUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/AttachmentEditorUIHandler.java index dd326ec..8ef42ca 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/AttachmentEditorUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/AttachmentEditorUIHandler.java @@ -93,6 +93,7 @@ public class AttachmentEditorUIHandler extends AbstractTuttiUIHandler<TuttiUICon } }; + //TODO Use fr.ifremer.tutti.ui.swing.util.TuttiUIUtil.prepareAction() openAction = new AbstractAction() { private static final long serialVersionUID = 1L; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/catches/EnterWeightUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/catches/EnterWeightUIHandler.java index cc26339..4147f6c 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/catches/EnterWeightUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/catches/EnterWeightUIHandler.java @@ -25,6 +25,7 @@ package fr.ifremer.tutti.ui.swing.util.catches; import fr.ifremer.tutti.type.WeightUnit; import fr.ifremer.tutti.ui.swing.TuttiUIContext; import fr.ifremer.tutti.ui.swing.util.AbstractTuttiUIHandler; +import fr.ifremer.tutti.ui.swing.util.TuttiUIUtil; import jaxx.runtime.JAXXUtil; import jaxx.runtime.SwingUtil; import jaxx.runtime.validator.swing.SwingValidator; @@ -88,14 +89,7 @@ public class EnterWeightUIHandler extends AbstractTuttiUIHandler<TuttiUIContext, } }; JButton cancelButton = ui.getCancelButton(); - - cancelAction.putValue(Action.SMALL_ICON, cancelButton.getIcon()); - cancelAction.putValue(Action.LARGE_ICON_KEY, cancelButton.getIcon()); - cancelAction.putValue(Action.ACTION_COMMAND_KEY, CANCEL_ACTION); - cancelAction.putValue(Action.NAME, cancelButton.getText()); - cancelAction.putValue(Action.SHORT_DESCRIPTION, cancelButton.getToolTipText()); - cancelAction.putValue(Action.MNEMONIC_KEY, cancelButton.getMnemonic()); - cancelButton.setAction(cancelAction); + TuttiUIUtil.prepareAction(cancelButton, cancelAction, CANCEL_ACTION); Action validateAction = new AbstractAction() { @@ -110,13 +104,7 @@ public class EnterWeightUIHandler extends AbstractTuttiUIHandler<TuttiUIContext, }; JButton validateButton = ui.getValidateButton(); - validateAction.putValue(Action.SMALL_ICON, validateButton.getIcon()); - validateAction.putValue(Action.LARGE_ICON_KEY, validateButton.getIcon()); - validateAction.putValue(Action.ACTION_COMMAND_KEY, VALIDATE_ACTION); - validateAction.putValue(Action.NAME, validateButton.getText()); - validateAction.putValue(Action.SHORT_DESCRIPTION, validateButton.getToolTipText()); - validateAction.putValue(Action.MNEMONIC_KEY, validateButton.getMnemonic()); - validateButton.setAction(validateAction); + TuttiUIUtil.prepareAction(validateButton, validateAction, VALIDATE_ACTION); JRootPane rootPane = ui.getRootPane(); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/comment/CommentEditorUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/comment/CommentEditorUIHandler.java index b2672fb..e8ec789 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/comment/CommentEditorUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/comment/CommentEditorUIHandler.java @@ -111,6 +111,7 @@ public class CommentEditorUIHandler implements UIHandler<CommentEditorUI> { } }; + //TODO Use fr.ifremer.tutti.ui.swing.util.TuttiUIUtil.prepareAction() ImageIcon actionIcon = SwingUtil.createActionIcon("close-dialog"); closeAction.putValue(Action.SMALL_ICON, actionIcon); closeAction.putValue(Action.LARGE_ICON_KEY, actionIcon); -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
participants (1)
-
codelutin.com scm