Jaxx-commits
Threads by month
- ----- 2026 -----
- June
- May
- April
- March
- February
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2006 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2005 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2004 -----
- December
- November
- October
- September
- August
- 3898 discussions
r2394 - in trunk: jaxx-demo/src/main/resources/i18n jaxx-runtime/src/main/java/jaxx/runtime jaxx-runtime/src/main/java/jaxx/runtime/swing/editor jaxx-runtime/src/main/java/jaxx/runtime/swing/renderer
by sletellier@users.nuiton.org 09 Jul '12
by sletellier@users.nuiton.org 09 Jul '12
09 Jul '12
Author: sletellier
Date: 2012-07-09 14:19:20 +0200 (Mon, 09 Jul 2012)
New Revision: 2394
Url: http://nuiton.org/repositories/revision/jaxx/2394
Log:
Move booleanCellEditor to editor package
Added:
trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/editor/BooleanCellEditor.java
Removed:
trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/renderer/BooleanCellEditor.java
Modified:
trunk/jaxx-demo/src/main/resources/i18n/jaxx-demo_es_ES.properties
trunk/jaxx-demo/src/main/resources/i18n/jaxx-demo_fr_FR.properties
trunk/jaxx-runtime/src/main/java/jaxx/runtime/SwingUtil.java
Modified: trunk/jaxx-demo/src/main/resources/i18n/jaxx-demo_es_ES.properties
===================================================================
--- trunk/jaxx-demo/src/main/resources/i18n/jaxx-demo_es_ES.properties 2012-07-07 19:38:58 UTC (rev 2393)
+++ trunk/jaxx-demo/src/main/resources/i18n/jaxx-demo_es_ES.properties 2012-07-09 12:19:20 UTC (rev 2394)
@@ -21,7 +21,7 @@
Blue=Bleu
Blue\:=bleu \:
Bold=En gras
-Button\ label\:=Libell\u00E9 de l'action
+Button\ label\:=Libellé de l'action
C=C
CE=CE
Cancel=Annuler
@@ -35,12 +35,12 @@
Editable=Editable
Email\ Address\:=Courriel
Email\:=Courriel
-Enabled=Activ\u00E9
+Enabled=Activé
EnumEditor\ (country)\ \:=Editeur de pays
EnumEditor\ (language)\ \:=Editeur de langue
Fancy\ Button=Bouton 'Fancy'
-First\ Name\:=Pr\u00E9nom
-FirstName\:=Pr\u00E9nom \:
+First\ Name\:=Prénom
+FirstName\:=Prénom \:
Font\ size=Taille de la police
Font\ size\:\ =
Fool\ me\ once=
@@ -49,7 +49,7 @@
Green\:=Vert \:
Greet=
Help=
-Inc\ (+)=Incr\u00E9menter (+)
+Inc\ (+)=Incrémenter (+)
Italic=Italique
JAXX\ Demo=
JMenu\ demo=
@@ -70,26 +70,26 @@
Red\:=rouge \:
Reset=Reinitialiser
Show\ Background=Voir le fond
-Show\ password\ dialog=Voir l'\u00E9diteur de mot de passe
+Show\ password\ dialog=Voir l'éditeur de mot de passe
Sign\ on=Signer
Simple\ Button=Bouton simple
Size\:=Taille \:
Sources=Sources
Spacing\:=Espacement \:
-Start=D\u00E9marrer
-Stop=Arr\u00EAter
-Supported\ Swing\ components\:=Composants Swing support\u00E9s
+Start=Démarrer
+Stop=Arrêter
+Supported\ Swing\ components\:=Composants Swing supportés
Text2\:=Text 2
Text\:=Texte \:
Total\:\ =
-Underline=soulign\u00E9
+Underline=souligné
Upper\ case\ text\:=Texte en majuscule
Use\ the\ spinner\ to=Utiliser la jauge pour
Username\:=Utilisateur \:
-Vegetable=L\u00E9gumes
+Vegetable=Légumes
View=Vue
Welcome\ to\ the\ JAXX\ framework\!=Bienvenu dans le framework JAXX
-Working\ directory\:=R\u00E9pertoire de travail
+Working\ directory\:=Répertoire de travail
Yellow=Jaune
You\ entered\:\ =
Your\ name\:=Votre nom \:
@@ -98,8 +98,8 @@
between\ these\ lines=
button\ A=Bouton A
button\ B=Bouton B
-button\ C\ (full\ block)=Bouton C (blocage compl\u00EAt)
-button\ D\ (full\ block\ 2)=Bouton D (blocage compl\u00EAt)
+button\ C\ (full\ block)=Bouton C (blocage complêt)
+button\ D\ (full\ block\ 2)=Bouton D (blocage complêt)
cancel=Annuler
close=Fermer
close2=Fermer 2
@@ -143,12 +143,12 @@
jaxxdemo.action.configuration.tip=Modifier la configuration
jaxxdemo.action.exit=Quitter
jaxxdemo.action.exit.tip=Quitter JAXX Demo
-jaxxdemo.action.fullscreen=Plein \u00E9cran
-jaxxdemo.action.fullscreen.tip=Passer en mode pleine \u00E9cran
+jaxxdemo.action.fullscreen=Plein écran
+jaxxdemo.action.fullscreen.tip=Passer en mode pleine écran
jaxxdemo.action.help=Aide
jaxxdemo.action.help.tip=Affichier l'aide
-jaxxdemo.action.locale.fr=Fran\u00E7ais
-jaxxdemo.action.locale.fr.tip=Changer la langue en fran\u00E7ais
+jaxxdemo.action.locale.fr=Français
+jaxxdemo.action.locale.fr.tip=Changer la langue en français
jaxxdemo.action.locale.uk=Anglais
jaxxdemo.action.locale.uk.tip=Changer la langue en anglais
jaxxdemo.action.normalscreen=Ecran normal
@@ -156,10 +156,10 @@
jaxxdemo.action.remove=Supprimer
jaxxdemo.action.show=Voir
jaxxdemo.action.site=Site internet
-jaxxdemo.action.site.tip=Acc\u00E9der au site de l'application sur internet
+jaxxdemo.action.site.tip=Accéder au site de l'application sur internet
jaxxdemo.common.actors=Acteurs
jaxxdemo.common.age=Age
-jaxxdemo.common.firstName=Pr\u00E9nom
+jaxxdemo.common.firstName=Prénom
jaxxdemo.common.id=Identifiant
jaxxdemo.common.image=Image
jaxxdemo.common.lastName=Nom
@@ -167,7 +167,7 @@
jaxxdemo.common.movies=Films
jaxxdemo.common.people=Acteur
jaxxdemo.common.title=Titre
-jaxxdemo.common.year=Ann\u00E9e
+jaxxdemo.common.year=Année
jaxxdemo.component.jaxx=Composants JAXX
jaxxdemo.component.jaxx.editor=Editeurs
jaxxdemo.component.swing=Composants Swing
@@ -176,52 +176,52 @@
jaxxdemo.component.swing.form.text=Texte
jaxxdemo.component.swing.layout=Layouts
jaxxdemo.component.swing.menu=Menus
-jaxxdemo.component.swing.window=Fen\u00EAtres
-jaxxdemo.config.category.directories=R\u00E9pertoires
-jaxxdemo.config.category.directories.description=R\u00E9pertoires de l'application
+jaxxdemo.component.swing.window=Fenêtres
+jaxxdemo.config.category.directories=Répertoires
+jaxxdemo.config.category.directories.description=Répertoires de l'application
jaxxdemo.config.category.other=Autre
jaxxdemo.config.category.other.description=Autres options
jaxxdemo.config.configFileName.description=Le nom du fichier de configuration
-jaxxdemo.config.ui.demo.path=Chemin de la d\u00E9mo par d\u00E9faut
-jaxxdemo.config.ui.fontSize=La taille de la police \u00E0 utiliser pour visualiser dans les sources
-jaxxdemo.config.ui.fullscreen=Pour afficher l'aplication en mode pleine \u00E9cran
-jaxxdemo.config.ui.keyOpenConfig=Pour changer le racourcie clavier pour ouvrir l'\u00E9cran de configuration
-jaxxdemo.config.ui.locale=La langue utilis\u00E9e par l'application
+jaxxdemo.config.ui.demo.path=Chemin de la démo par défaut
+jaxxdemo.config.ui.fontSize=La taille de la police à utiliser pour visualiser dans les sources
+jaxxdemo.config.ui.fullscreen=Pour afficher l'aplication en mode pleine écran
+jaxxdemo.config.ui.keyOpenConfig=Pour changer le racourcie clavier pour ouvrir l'écran de configuration
+jaxxdemo.config.ui.locale=La langue utilisée par l'application
jaxxdemo.config.ui.logLevel=Level de log
jaxxdemo.config.ui.logPatternLayout=Pattern des log
-jaxxdemo.datePickerEditor.dateResult=Affichage du r\u00E9sultat
+jaxxdemo.datePickerEditor.dateResult=Affichage du résultat
jaxxdemo.datePickerEditor.patternLayout=Pattern de date
jaxxdemo.datePickerEditor.showPopupButton=Afficher le boutton pour ouvrir la popup
-jaxxdemo.feature=Fonctionnalit\u00E9s
+jaxxdemo.feature=Fonctionnalités
jaxxdemo.feature.databinding=Data binding
jaxxdemo.feature.nav=API JAXX pour les arbres
jaxxdemo.feature.validation=Validation
-jaxxdemo.fileEditor.acceptAllFileFilterUsed=Acc\u00E8pte tout les FileFilter
-jaxxdemo.fileEditor.directoryEnabled=Activer la s\u00E9lection des files
-jaxxdemo.fileEditor.extsDescLbl=Description des extensions (s\u00E9par\u00E9es par des virgules, ex \: Texte (*.txt), Images (*.png))
+jaxxdemo.fileEditor.acceptAllFileFilterUsed=Accèpte tout les FileFilter
+jaxxdemo.fileEditor.directoryEnabled=Activer la sélection des files
+jaxxdemo.fileEditor.extsDescLbl=Description des extensions (séparées par des virgules, ex \: Texte (*.txt), Images (*.png))
jaxxdemo.fileEditor.extsLbl=Extensions (separated by comma, ex \: txt, png)
-jaxxdemo.fileEditor.fileEnabled=Activer la s\u00E9lection des fichiers
+jaxxdemo.fileEditor.fileEnabled=Activer la sélection des fichiers
jaxxdemo.fileEditor.titleLbl=Titre du dialog d'ouverture de fichier
jaxxdemo.fun=Fun
jaxxdemo.i18neditor.configuration=Configuration
jaxxdemo.i18neditor.popup.title=Titre de la popup
jaxxdemo.i18neditor.popupBorderText=Titre de la popup
-jaxxdemo.i18neditor.selected.locale=Langue s\u00E9lectionn\u00E9e
+jaxxdemo.i18neditor.selected.locale=Langue sélectionnée
jaxxdemo.i18neditor.showIcon=Afficher les icones
jaxxdemo.i18neditor.showPopupIcon=Afficher les icones dans la popup
jaxxdemo.i18neditor.showPopupText=Afficher les textes dans la popup
jaxxdemo.i18neditor.showText=Afficher le text
-jaxxdemo.init.closed=JAXX Demo a \u00E9t\u00E9 ferm\u00E9 \u00E0 %1$s
-jaxxdemo.init.context.done=Initialisation du contexte termin\u00E9e en %1$s.
-jaxxdemo.init.ui.done=Initialisation de l'interface graphique termin\u00E9e.
+jaxxdemo.init.closed=JAXX Demo a été fermé à %1$s
+jaxxdemo.init.context.done=Initialisation du contexte terminée en %1$s.
+jaxxdemo.init.ui.done=Initialisation de l'interface graphique terminée.
jaxxdemo.listSelector.addToolTipLbl=Add button toolTip
jaxxdemo.listSelector.removeToolTipLbl=Remove button toolTip
jaxxdemo.menu.file=Fichier
jaxxdemo.menu.file.locale=Langues
jaxxdemo.menu.help=Aide
jaxxdemo.menu.showLogs=Afficher les logs
-jaxxdemo.message.config.loaded=Configuration de JAXX Demo v. %1$s charg\u00E9e.
-jaxxdemo.message.goto.site=Acc\u00E9der au site de JAXX Demo (%1$s)
+jaxxdemo.message.config.loaded=Configuration de JAXX Demo v. %1$s chargée.
+jaxxdemo.message.goto.site=Accéder au site de JAXX Demo (%1$s)
jaxxdemo.navigation.actor.title=Acteur
jaxxdemo.navigation.actors.title=Acteurs
jaxxdemo.navigation.movie.title=Film
@@ -229,25 +229,25 @@
jaxxdemo.numbereditor.applyNumberPattern=Appliquer le pattern
jaxxdemo.numbereditor.autoPopup=Affichage automatique popup
jaxxdemo.numbereditor.configuration=Configuration
-jaxxdemo.numbereditor.model=R\u00E9sultat
-jaxxdemo.numbereditor.model.float=Valeur d\u00E9cimale \: %1$s
-jaxxdemo.numbereditor.model.int=Valeur enti\u00E8re \: %1$s
-jaxxdemo.numbereditor.model.numberPattern=Format de l'\u00E9diteur \: %s
+jaxxdemo.numbereditor.model=Résultat
+jaxxdemo.numbereditor.model.float=Valeur décimale \: %1$s
+jaxxdemo.numbereditor.model.int=Valeur entière \: %1$s
+jaxxdemo.numbereditor.model.numberPattern=Format de l'éditeur \: %s
jaxxdemo.numbereditor.numberPattern.configuration=Pattern du nombre
jaxxdemo.numbereditor.showPopupButton=Afficher le boutton de popup
jaxxdemo.numbereditor.showReset=Afficher le boutton de reset
-jaxxdemo.numbereditor.useFloat=Utiliser les d\u00E9cimales
+jaxxdemo.numbereditor.useFloat=Utiliser les décimales
jaxxdemo.numbereditor.useSign=Utiliser le signe
jaxxdemo.timeeditor.editor=Editeur de temps
jaxxdemo.timeeditor.label=Label
-jaxxdemo.timeeditor.model=R\u00E9sultat
-jaxxdemo.timeeditor.value=Heure s\u00E9lectionn\u00E9e \: %1$tH\:%1$tM
+jaxxdemo.timeeditor.model=Résultat
+jaxxdemo.timeeditor.value=Heure sélectionnée \: %1$tH\:%1$tM
jaxxdemo.title.about=A propos de JAXX Demo...
jaxxdemo.title.showLog=Logs de JAXX Demo
jaxxdemo.tree.tabtitle=Arbre
jaxxdemo.treeTable.tabtitle=Arbre tableau
-jaxxdemo.warning.nimbus.landf=Le look and Feel Nimbus n'a pas \u00E9t\u00E9 trouv\u00E9, il faut au moins la version 1.6u10 de java.
-jaxxdemo.warning.no.ui=Aucun environnement graphique d\u00E9tect\u00E9
+jaxxdemo.warning.nimbus.landf=Le look and Feel Nimbus n'a pas été trouvé, il faut au moins la version 1.6u10 de java.
+jaxxdemo.warning.no.ui=Aucun environnement graphique détecté
model0.f0=
model0.f1=
model0.file...=
Modified: trunk/jaxx-demo/src/main/resources/i18n/jaxx-demo_fr_FR.properties
===================================================================
--- trunk/jaxx-demo/src/main/resources/i18n/jaxx-demo_fr_FR.properties 2012-07-07 19:38:58 UTC (rev 2393)
+++ trunk/jaxx-demo/src/main/resources/i18n/jaxx-demo_fr_FR.properties 2012-07-09 12:19:20 UTC (rev 2394)
@@ -21,7 +21,7 @@
Blue=Bleu
Blue\:=bleu \:
Bold=En gras
-Button\ label\:=Libell\u00E9 de l'action
+Button\ label\:=Libellé de l'action
C=C
CE=CE
Cancel=Annuler
@@ -35,12 +35,12 @@
Editable=Editable
Email\ Address\:=Courriel
Email\:=Courriel
-Enabled=Activ\u00E9
+Enabled=Activé
EnumEditor\ (country)\ \:=Editeur de pays
EnumEditor\ (language)\ \:=Editeur de langue
Fancy\ Button=Bouton 'Fancy'
-First\ Name\:=Pr\u00E9nom
-FirstName\:=Pr\u00E9nom \:
+First\ Name\:=Prénom
+FirstName\:=Prénom \:
Font\ size=Taille de la police
Font\ size\:\ =
Fool\ me\ once=
@@ -49,7 +49,7 @@
Green\:=Vert \:
Greet=
Help=
-Inc\ (+)=Incr\u00E9menter (+)
+Inc\ (+)=Incrémenter (+)
Italic=Italique
JAXX\ Demo=
JMenu\ demo=
@@ -70,26 +70,26 @@
Red\:=rouge \:
Reset=Reinitialiser
Show\ Background=Voir le fond
-Show\ password\ dialog=Voir l'\u00E9diteur de mot de passe
+Show\ password\ dialog=Voir l'éditeur de mot de passe
Sign\ on=Signer
Simple\ Button=Bouton simple
Size\:=Taille \:
Sources=Sources
Spacing\:=Espacement \:
-Start=D\u00E9marrer
-Stop=Arr\u00EAter
-Supported\ Swing\ components\:=Composants Swing support\u00E9s
+Start=Démarrer
+Stop=Arrêter
+Supported\ Swing\ components\:=Composants Swing supportés
Text2\:=Text 2
Text\:=Texte \:
Total\:\ =
-Underline=soulign\u00E9
+Underline=souligné
Upper\ case\ text\:=Texte en majuscule
Use\ the\ spinner\ to=Utiliser la jauge pour
Username\:=Utilisateur \:
-Vegetable=L\u00E9gumes
+Vegetable=Légumes
View=Vue
Welcome\ to\ the\ JAXX\ framework\!=Bienvenu dans le framework JAXX
-Working\ directory\:=R\u00E9pertoire de travail
+Working\ directory\:=Répertoire de travail
Yellow=Jaune
You\ entered\:\ =
Your\ name\:=Votre nom \:
@@ -98,8 +98,8 @@
between\ these\ lines=
button\ A=Bouton A
button\ B=Bouton B
-button\ C\ (full\ block)=Bouton C (blocage compl\u00EAt)
-button\ D\ (full\ block\ 2)=Bouton D (blocage compl\u00EAt)
+button\ C\ (full\ block)=Bouton C (blocage complêt)
+button\ D\ (full\ block\ 2)=Bouton D (blocage complêt)
cancel=Annuler
close=Fermer
close2=Fermer 2
@@ -143,12 +143,12 @@
jaxxdemo.action.configuration.tip=Modifier la configuration
jaxxdemo.action.exit=Quitter
jaxxdemo.action.exit.tip=Quitter JAXX Demo
-jaxxdemo.action.fullscreen=Plein \u00E9cran
-jaxxdemo.action.fullscreen.tip=Passer en mode pleine \u00E9cran
+jaxxdemo.action.fullscreen=Plein écran
+jaxxdemo.action.fullscreen.tip=Passer en mode pleine écran
jaxxdemo.action.help=Aide
jaxxdemo.action.help.tip=Affichier l'aide
-jaxxdemo.action.locale.fr=Fran\u00E7ais
-jaxxdemo.action.locale.fr.tip=Changer la langue en fran\u00E7ais
+jaxxdemo.action.locale.fr=Français
+jaxxdemo.action.locale.fr.tip=Changer la langue en français
jaxxdemo.action.locale.uk=Anglais
jaxxdemo.action.locale.uk.tip=Changer la langue en anglais
jaxxdemo.action.normalscreen=Ecran normal
@@ -156,10 +156,10 @@
jaxxdemo.action.remove=Supprimer
jaxxdemo.action.show=Voir
jaxxdemo.action.site=Site internet
-jaxxdemo.action.site.tip=Acc\u00E9der au site de l'application sur internet
+jaxxdemo.action.site.tip=Accéder au site de l'application sur internet
jaxxdemo.common.actors=Acteurs
jaxxdemo.common.age=Age
-jaxxdemo.common.firstName=Pr\u00E9nom
+jaxxdemo.common.firstName=Prénom
jaxxdemo.common.id=Identifiant
jaxxdemo.common.image=Image
jaxxdemo.common.lastName=Nom
@@ -167,7 +167,7 @@
jaxxdemo.common.movies=Films
jaxxdemo.common.people=Acteur
jaxxdemo.common.title=Titre
-jaxxdemo.common.year=Ann\u00E9e
+jaxxdemo.common.year=Année
jaxxdemo.component.jaxx=Composants JAXX
jaxxdemo.component.jaxx.editor=Editeurs
jaxxdemo.component.swing=Composants Swing
@@ -176,52 +176,52 @@
jaxxdemo.component.swing.form.text=Texte
jaxxdemo.component.swing.layout=Layouts
jaxxdemo.component.swing.menu=Menus
-jaxxdemo.component.swing.window=Fen\u00EAtres
-jaxxdemo.config.category.directories=R\u00E9pertoires
-jaxxdemo.config.category.directories.description=R\u00E9pertoires de l'application
+jaxxdemo.component.swing.window=Fenêtres
+jaxxdemo.config.category.directories=Répertoires
+jaxxdemo.config.category.directories.description=Répertoires de l'application
jaxxdemo.config.category.other=Autre
jaxxdemo.config.category.other.description=Autres options
jaxxdemo.config.configFileName.description=Le nom du fichier de configuration
-jaxxdemo.config.ui.demo.path=Chemin de la d\u00E9mo par d\u00E9faut
-jaxxdemo.config.ui.fontSize=La taille de la police \u00E0 utiliser pour visualiser dans les sources
-jaxxdemo.config.ui.fullscreen=Pour afficher l'aplication en mode pleine \u00E9cran
-jaxxdemo.config.ui.keyOpenConfig=Pour changer le racourcie clavier pour ouvrir l'\u00E9cran de configuration
-jaxxdemo.config.ui.locale=La langue utilis\u00E9e par l'application
+jaxxdemo.config.ui.demo.path=Chemin de la démo par défaut
+jaxxdemo.config.ui.fontSize=La taille de la police à utiliser pour visualiser dans les sources
+jaxxdemo.config.ui.fullscreen=Pour afficher l'aplication en mode pleine écran
+jaxxdemo.config.ui.keyOpenConfig=Pour changer le racourcie clavier pour ouvrir l'écran de configuration
+jaxxdemo.config.ui.locale=La langue utilisée par l'application
jaxxdemo.config.ui.logLevel=Level de log
jaxxdemo.config.ui.logPatternLayout=Pattern des log
-jaxxdemo.datePickerEditor.dateResult=Affichage du r\u00E9sultat
+jaxxdemo.datePickerEditor.dateResult=Affichage du résultat
jaxxdemo.datePickerEditor.patternLayout=Pattern de date
jaxxdemo.datePickerEditor.showPopupButton=Afficher le boutton pour ouvrir la popup
-jaxxdemo.feature=Fonctionnalit\u00E9s
+jaxxdemo.feature=Fonctionnalités
jaxxdemo.feature.databinding=Data binding
jaxxdemo.feature.nav=API JAXX pour les arbres
jaxxdemo.feature.validation=Validation
-jaxxdemo.fileEditor.acceptAllFileFilterUsed=Acc\u00E8pte tout les FileFilter
-jaxxdemo.fileEditor.directoryEnabled=Activer la s\u00E9lection des files
-jaxxdemo.fileEditor.extsDescLbl=Description des extensions (s\u00E9par\u00E9es par des virgules, ex \: Texte (*.txt), Images (*.png))
+jaxxdemo.fileEditor.acceptAllFileFilterUsed=Accèpte tout les FileFilter
+jaxxdemo.fileEditor.directoryEnabled=Activer la sélection des files
+jaxxdemo.fileEditor.extsDescLbl=Description des extensions (séparées par des virgules, ex \: Texte (*.txt), Images (*.png))
jaxxdemo.fileEditor.extsLbl=Extensions (separated by comma, ex \: txt, png)
-jaxxdemo.fileEditor.fileEnabled=Activer la s\u00E9lection des fichiers
-jaxxdemo.fileEditor.titleLbl=Titre de la fen\u00EAtre de s\u00E9lection de fichier
+jaxxdemo.fileEditor.fileEnabled=Activer la sélection des fichiers
+jaxxdemo.fileEditor.titleLbl=Titre de la fenêtre de sélection de fichier
jaxxdemo.fun=Fun
jaxxdemo.i18neditor.configuration=Configuration
jaxxdemo.i18neditor.popup.title=Titre de la popup
jaxxdemo.i18neditor.popupBorderText=Titre de la popup
-jaxxdemo.i18neditor.selected.locale=Langue s\u00E9lectionn\u00E9e
+jaxxdemo.i18neditor.selected.locale=Langue sélectionnée
jaxxdemo.i18neditor.showIcon=Afficher les icones
jaxxdemo.i18neditor.showPopupIcon=Afficher les icones dans la popup
jaxxdemo.i18neditor.showPopupText=Afficher les textes dans la popup
jaxxdemo.i18neditor.showText=Afficher le text
-jaxxdemo.init.closed=JAXX Demo a \u00E9t\u00E9 ferm\u00E9 \u00E0 %1$s
-jaxxdemo.init.context.done=Initialisation du contexte termin\u00E9e en %1$s.
-jaxxdemo.init.ui.done=Initialisation de l'interface graphique termin\u00E9e.
+jaxxdemo.init.closed=JAXX Demo a été fermé à %1$s
+jaxxdemo.init.context.done=Initialisation du contexte terminée en %1$s.
+jaxxdemo.init.ui.done=Initialisation de l'interface graphique terminée.
jaxxdemo.listSelector.addToolTipLbl=Tooltip du boutton ajouter
jaxxdemo.listSelector.removeToolTipLbl=Tooltip du boutton enlever
jaxxdemo.menu.file=Fichier
jaxxdemo.menu.file.locale=Langues
jaxxdemo.menu.help=Aide
jaxxdemo.menu.showLogs=Afficher les logs
-jaxxdemo.message.config.loaded=Configuration de JAXX Demo v. %1$s charg\u00E9e.
-jaxxdemo.message.goto.site=Acc\u00E9der au site de JAXX Demo (%1$s)
+jaxxdemo.message.config.loaded=Configuration de JAXX Demo v. %1$s chargée.
+jaxxdemo.message.goto.site=Accéder au site de JAXX Demo (%1$s)
jaxxdemo.navigation.actor.title=Acteur
jaxxdemo.navigation.actors.title=Acteurs
jaxxdemo.navigation.movie.title=Film
@@ -229,25 +229,25 @@
jaxxdemo.numbereditor.applyNumberPattern=Appliquer le pattern
jaxxdemo.numbereditor.autoPopup=Affichage automatique popup
jaxxdemo.numbereditor.configuration=Configuration
-jaxxdemo.numbereditor.model=R\u00E9sultat
-jaxxdemo.numbereditor.model.float=Valeur d\u00E9cimale \: %1$s
-jaxxdemo.numbereditor.model.int=Valeur enti\u00E8re \: %1$s
-jaxxdemo.numbereditor.model.numberPattern=Format de l'\u00E9diteur \: %s
+jaxxdemo.numbereditor.model=Résultat
+jaxxdemo.numbereditor.model.float=Valeur décimale \: %1$s
+jaxxdemo.numbereditor.model.int=Valeur entière \: %1$s
+jaxxdemo.numbereditor.model.numberPattern=Format de l'éditeur \: %s
jaxxdemo.numbereditor.numberPattern.configuration=Pattern du nombre
jaxxdemo.numbereditor.showPopupButton=Afficher le boutton de popup
jaxxdemo.numbereditor.showReset=Afficher le boutton de reset
-jaxxdemo.numbereditor.useFloat=Utiliser les d\u00E9cimales
+jaxxdemo.numbereditor.useFloat=Utiliser les décimales
jaxxdemo.numbereditor.useSign=Utiliser le signe
jaxxdemo.timeeditor.editor=Editeur de temps
jaxxdemo.timeeditor.label=Label
-jaxxdemo.timeeditor.model=R\u00E9sultat
-jaxxdemo.timeeditor.value=Heure s\u00E9lectionn\u00E9e \: %1$tH\:%1$tM
+jaxxdemo.timeeditor.model=Résultat
+jaxxdemo.timeeditor.value=Heure sélectionnée \: %1$tH\:%1$tM
jaxxdemo.title.about=A propos de JAXX Demo...
jaxxdemo.title.showLog=Logs de JAXX Demo
jaxxdemo.tree.tabtitle=Arbre
jaxxdemo.treeTable.tabtitle=Arbre tableau
-jaxxdemo.warning.nimbus.landf=Le look and Feel Nimbus n'a pas \u00E9t\u00E9 trouv\u00E9, il faut au moins la version 1.6u10 de java.
-jaxxdemo.warning.no.ui=Aucun environnement graphique d\u00E9tect\u00E9
+jaxxdemo.warning.nimbus.landf=Le look and Feel Nimbus n'a pas été trouvé, il faut au moins la version 1.6u10 de java.
+jaxxdemo.warning.no.ui=Aucun environnement graphique détecté
model0.f0=
model0.f1=
model0.file...=
Modified: trunk/jaxx-runtime/src/main/java/jaxx/runtime/SwingUtil.java
===================================================================
--- trunk/jaxx-runtime/src/main/java/jaxx/runtime/SwingUtil.java 2012-07-07 19:38:58 UTC (rev 2393)
+++ trunk/jaxx-runtime/src/main/java/jaxx/runtime/SwingUtil.java 2012-07-09 12:19:20 UTC (rev 2394)
@@ -26,7 +26,7 @@
import jaxx.runtime.swing.Item;
import jaxx.runtime.swing.JAXXComboBox;
-import jaxx.runtime.swing.renderer.BooleanCellEditor;
+import jaxx.runtime.swing.editor.BooleanCellEditor;
import jaxx.runtime.swing.renderer.BooleanCellRenderer;
import jaxx.runtime.swing.renderer.EmptyNumberTableCellRenderer;
import jaxx.runtime.swing.renderer.EnumTableCellRenderer;
Copied: trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/editor/BooleanCellEditor.java (from rev 2386, trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/renderer/BooleanCellEditor.java)
===================================================================
--- trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/editor/BooleanCellEditor.java (rev 0)
+++ trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/editor/BooleanCellEditor.java 2012-07-09 12:19:20 UTC (rev 2394)
@@ -0,0 +1,83 @@
+/*
+ * #%L
+ * JAXX :: Runtime
+ *
+ * $Id: BooleanCellRenderer.java 2334 2012-06-15 10:02:35Z sletellier $
+ * $HeadURL: http://svn.nuiton.org/svn/jaxx/trunk/jaxx-runtime/src/main/java/jaxx/runtim… $
+ * %%
+ * Copyright (C) 2008 - 2010 CodeLutin
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Lesser Public License for more details.
+ *
+ * You should have received a copy of the GNU General Lesser Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/lgpl-3.0.html>.
+ * #L%
+ */
+package jaxx.runtime.swing.editor;
+
+import java.awt.Component;
+import javax.swing.AbstractCellEditor;
+import javax.swing.Icon;
+import javax.swing.JCheckBox;
+import javax.swing.JComponent;
+import javax.swing.JLabel;
+import javax.swing.JTable;
+import javax.swing.table.TableCellEditor;
+import javax.swing.table.TableCellRenderer;
+import org.jdesktop.swingx.JXTable;
+
+/**
+ * @author tchemit <chemit(a)codelutin.com>
+ * @since 1.5
+ */
+public class BooleanCellEditor extends AbstractCellEditor implements TableCellRenderer, TableCellEditor {
+
+ private static final long serialVersionUID = 1L;
+
+ protected TableCellRenderer rendererDelegate;
+ protected TableCellEditor editorDelegate;
+
+ protected Icon icon;
+
+ public BooleanCellEditor(TableCellRenderer delegate) {
+ this(delegate, null);
+ }
+
+ public BooleanCellEditor(TableCellRenderer delegate, Icon icon) {
+ this.rendererDelegate = delegate;
+ this.editorDelegate = new JXTable.BooleanEditor();
+ this.icon = icon;
+ }
+
+ @Override
+ public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
+ JComponent rendered = (JComponent) rendererDelegate.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
+ if (rendered instanceof JCheckBox) {
+ JCheckBox checkBox = (JCheckBox)rendered;
+ checkBox.setHorizontalAlignment(JLabel.CENTER);
+ checkBox.setVerticalTextPosition(JLabel.TOP);
+ checkBox.setBorderPainted(true);
+ checkBox.setIcon(icon);
+ }
+ return rendered;
+ }
+
+ @Override
+ public Component getTableCellEditorComponent(JTable table, Object value, boolean isSelected, int row, int column) {
+ return editorDelegate.getTableCellEditorComponent(table, value, isSelected, row, column);
+ }
+
+ @Override
+ public Object getCellEditorValue() {
+ return editorDelegate.getCellEditorValue();
+ }
+}
Deleted: trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/renderer/BooleanCellEditor.java
===================================================================
--- trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/renderer/BooleanCellEditor.java 2012-07-07 19:38:58 UTC (rev 2393)
+++ trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/renderer/BooleanCellEditor.java 2012-07-09 12:19:20 UTC (rev 2394)
@@ -1,83 +0,0 @@
-/*
- * #%L
- * JAXX :: Runtime
- *
- * $Id: BooleanCellRenderer.java 2334 2012-06-15 10:02:35Z sletellier $
- * $HeadURL: http://svn.nuiton.org/svn/jaxx/trunk/jaxx-runtime/src/main/java/jaxx/runtim… $
- * %%
- * Copyright (C) 2008 - 2010 CodeLutin
- * %%
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation, either version 3 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Lesser Public License for more details.
- *
- * You should have received a copy of the GNU General Lesser Public
- * License along with this program. If not, see
- * <http://www.gnu.org/licenses/lgpl-3.0.html>.
- * #L%
- */
-package jaxx.runtime.swing.renderer;
-
-import java.awt.Component;
-import javax.swing.AbstractCellEditor;
-import javax.swing.Icon;
-import javax.swing.JCheckBox;
-import javax.swing.JComponent;
-import javax.swing.JLabel;
-import javax.swing.JTable;
-import javax.swing.table.TableCellEditor;
-import javax.swing.table.TableCellRenderer;
-import org.jdesktop.swingx.JXTable;
-
-/**
- * @author tchemit <chemit(a)codelutin.com>
- * @since 1.5
- */
-public class BooleanCellEditor extends AbstractCellEditor implements TableCellRenderer, TableCellEditor {
-
- private static final long serialVersionUID = 1L;
-
- protected TableCellRenderer rendererDelegate;
- protected TableCellEditor editorDelegate;
-
- protected Icon icon;
-
- public BooleanCellEditor(TableCellRenderer delegate) {
- this(delegate, null);
- }
-
- public BooleanCellEditor(TableCellRenderer delegate, Icon icon) {
- this.rendererDelegate = delegate;
- this.editorDelegate = new JXTable.BooleanEditor();
- this.icon = icon;
- }
-
- @Override
- public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
- JComponent rendered = (JComponent) rendererDelegate.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
- if (rendered instanceof JCheckBox) {
- JCheckBox checkBox = (JCheckBox)rendered;
- checkBox.setHorizontalAlignment(JLabel.CENTER);
- checkBox.setVerticalTextPosition(JLabel.TOP);
- checkBox.setBorderPainted(true);
- checkBox.setIcon(icon);
- }
- return rendered;
- }
-
- @Override
- public Component getTableCellEditorComponent(JTable table, Object value, boolean isSelected, int row, int column) {
- return editorDelegate.getTableCellEditorComponent(table, value, isSelected, row, column);
- }
-
- @Override
- public Object getCellEditorValue() {
- return editorDelegate.getCellEditorValue();
- }
-}
1
0
r2393 - in trunk: . jaxx-runtime/src/main/java/jaxx/runtime/swing/application jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/config
by tchemit@users.nuiton.org 07 Jul '12
by tchemit@users.nuiton.org 07 Jul '12
07 Jul '12
Author: tchemit
Date: 2012-07-07 21:38:58 +0200 (Sat, 07 Jul 2012)
New Revision: 2393
Url: http://nuiton.org/repositories/revision/jaxx/2393
Log:
updates to mavenpom 3.3.4
Modified:
trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/application/ApplicationRunner.java
trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/config/ConfigTableEditor.java
trunk/pom.xml
Modified: trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/application/ApplicationRunner.java
===================================================================
--- trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/application/ApplicationRunner.java 2012-07-06 12:44:21 UTC (rev 2392)
+++ trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/application/ApplicationRunner.java 2012-07-07 19:38:58 UTC (rev 2393)
@@ -128,7 +128,7 @@
*/
protected abstract void onError(Exception e);
- protected ApplicationRunner(String[] args) {
+ protected ApplicationRunner(String... args) {
runner = this;
this.args = args;
@@ -211,14 +211,14 @@
}
public final void close() {
- boolean reload = isReload();
+ boolean doReload = isReload();
try {
// fermeture du runner
- onClose(reload);
+ onClose(doReload);
- if (reload) {
+ if (doReload) {
// redemarrage du runner
@@ -234,7 +234,7 @@
} catch (Exception e) {
onError(e);
} finally {
- if (!reload) {
+ if (!doReload) {
if (log.isDebugEnabled()) {
log.debug("Will shutdown application ...");
}
@@ -247,5 +247,4 @@
}
}
-
}
Modified: trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/config/ConfigTableEditor.java
===================================================================
--- trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/config/ConfigTableEditor.java 2012-07-06 12:44:21 UTC (rev 2392)
+++ trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/config/ConfigTableEditor.java 2012-07-07 19:38:58 UTC (rev 2393)
@@ -141,6 +141,8 @@
protected static class FileCellEditorWithExtDetector extends FileCellEditor {
+ private static final long serialVersionUID = 1L;
+
@Override
public Component getTableCellEditorComponent(JTable table, Object value, boolean isSelected, int row, int column) {
Modified: trunk/pom.xml
===================================================================
--- trunk/pom.xml 2012-07-06 12:44:21 UTC (rev 2392)
+++ trunk/pom.xml 2012-07-07 19:38:58 UTC (rev 2393)
@@ -34,7 +34,7 @@
<parent>
<groupId>org.nuiton</groupId>
<artifactId>mavenpom4redmineAndCentral</artifactId>
- <version>3.3.4-SNAPSHOT</version>
+ <version>3.3.4</version>
</parent>
<artifactId>jaxx</artifactId>
1
0
r2392 - trunk/jaxx-demo/src/main/java/jaxx/demo/component/jaxx/editor
by sletellier@users.nuiton.org 06 Jul '12
by sletellier@users.nuiton.org 06 Jul '12
06 Jul '12
Author: sletellier
Date: 2012-07-06 14:44:21 +0200 (Fri, 06 Jul 2012)
New Revision: 2392
Url: http://nuiton.org/repositories/revision/jaxx/2392
Log:
Fix layout
Modified:
trunk/jaxx-demo/src/main/java/jaxx/demo/component/jaxx/editor/ListSelectorDemo.jaxx
Modified: trunk/jaxx-demo/src/main/java/jaxx/demo/component/jaxx/editor/ListSelectorDemo.jaxx
===================================================================
--- trunk/jaxx-demo/src/main/java/jaxx/demo/component/jaxx/editor/ListSelectorDemo.jaxx 2012-07-06 12:02:51 UTC (rev 2391)
+++ trunk/jaxx-demo/src/main/java/jaxx/demo/component/jaxx/editor/ListSelectorDemo.jaxx 2012-07-06 12:44:21 UTC (rev 2392)
@@ -32,6 +32,7 @@
jaxx.demo.entities.DemoDecoratorProvider
jaxx.runtime.swing.renderer.DecoratorProviderListCellRenderer
java.util.Collection
+ jaxx.runtime.swing.model.GenericListModel
</import>
<ListCellRenderer id='listCellRenderer' initializer='new DecoratorProviderListCellRenderer(new DemoDecoratorProvider())'/>
@@ -74,7 +75,7 @@
</cell>
</row>
<row>
- <cell fill='horizontal' weightx='1' columns='2'>
+ <cell fill='both' weightx='1' weighty='0.5' columns='2'>
<JScrollPane>
<ComboToListSelector id='comboToListSelector'
genericType='Movie'
@@ -88,7 +89,7 @@
</cell>
</row>
<row>
- <cell fill='horizontal' weightx='1' columns='2'>
+ <cell fill='both' weightx='1' weighty='0.5' columns='2'>
<JScrollPane>
<ListToListSelector id='listToListSelector'
genericType='People'
1
0
r2391 - in trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor: cell config
by sletellier@users.nuiton.org 06 Jul '12
by sletellier@users.nuiton.org 06 Jul '12
06 Jul '12
Author: sletellier
Date: 2012-07-06 14:02:51 +0200 (Fri, 06 Jul 2012)
New Revision: 2391
Url: http://nuiton.org/repositories/revision/jaxx/2391
Log:
- Allow to use custom FileEditor
- FireStopEditing on actionPerform on FileCellEditor
- Use custom FileCellEditor to detect ext in ApplicationConfig ui
Modified:
trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/cell/FileCellEditor.java
trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/config/ConfigTableEditor.java
Modified: trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/cell/FileCellEditor.java
===================================================================
--- trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/cell/FileCellEditor.java 2012-07-06 11:31:51 UTC (rev 2390)
+++ trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/cell/FileCellEditor.java 2012-07-06 12:02:51 UTC (rev 2391)
@@ -24,6 +24,8 @@
package jaxx.runtime.swing.editor.cell;
import java.awt.Component;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
import java.io.File;
import javax.swing.AbstractCellEditor;
import javax.swing.JTable;
@@ -39,12 +41,28 @@
protected FileEditor fileEditor;
public FileCellEditor() {
- fileEditor = new FileEditor();
+ setFileEditor(new FileEditor());
}
+ public FileCellEditor(FileEditor editor) {
+ setFileEditor(editor);
+ }
+
+ public void setFileEditor(FileEditor fileEditor) {
+ this.fileEditor = fileEditor;
+ fileEditor.addActionListener(new ActionListener() {
+
+ @Override
+ public void actionPerformed(ActionEvent e) {
+ fireEditingStopped();
+ }
+ });
+ }
+
@Override
public Component getTableCellEditorComponent(JTable table, Object value, boolean isSelected, int row, int column) {
- fileEditor.setSelectedFile((File)value);
+ File file = (File) value;
+ fileEditor.setSelectedFile(file);
return fileEditor;
}
Modified: trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/config/ConfigTableEditor.java
===================================================================
--- trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/config/ConfigTableEditor.java 2012-07-06 11:31:51 UTC (rev 2390)
+++ trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/config/ConfigTableEditor.java 2012-07-06 12:02:51 UTC (rev 2391)
@@ -25,6 +25,7 @@
package jaxx.runtime.swing.editor.config;
+import com.google.common.io.Files;
import java.awt.Component;
import java.io.File;
import java.util.EventObject;
@@ -38,8 +39,10 @@
import jaxx.runtime.swing.editor.ClassCellEditor;
import jaxx.runtime.swing.editor.EnumEditor;
import jaxx.runtime.swing.editor.LocaleEditor;
+import jaxx.runtime.swing.editor.cell.FileCellEditor;
import jaxx.runtime.swing.editor.config.model.ConfigTableModel;
import jaxx.runtime.swing.editor.config.model.OptionModel;
+import org.apache.commons.lang3.StringUtils;
/**
* L'éditeur des valeurs des propriétés d'une configuration
@@ -117,7 +120,7 @@
editor = new ClassCellEditor();
} else if (type.equals(File.class)){
- editor = JAXXWidgetUtil.newFileTableCellEditor();
+ editor = new FileCellEditorWithExtDetector();
} else if (type.equals(KeyStroke.class)){
editor = JAXXWidgetUtil.newKeyStrokeTableCellEditor();
@@ -136,6 +139,20 @@
return editor;
}
+ protected static class FileCellEditorWithExtDetector extends FileCellEditor {
+
+ @Override
+ public Component getTableCellEditorComponent(JTable table, Object value, boolean isSelected, int row, int column) {
+
+ String fileExtension = Files.getFileExtension(((File)value).getName());
+ if (StringUtils.isNotEmpty(fileExtension)) {
+ fileEditor.setExts(fileExtension);
+ fileEditor.setAcceptAllFileFilterUsed(true);
+ }
+ return super.getTableCellEditorComponent(table, value, isSelected, row, column);
+ }
+ }
+
protected boolean hasDelegate() {
return delegate != null;
}
1
0
r2390 - in trunk: jaxx-runtime/src/main/java/jaxx/runtime/swing/model jaxx-widgets/src/main/java/jaxx/runtime/swing/editor jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/cell
by sletellier@users.nuiton.org 06 Jul '12
by sletellier@users.nuiton.org 06 Jul '12
06 Jul '12
Author: sletellier
Date: 2012-07-06 13:31:51 +0200 (Fri, 06 Jul 2012)
New Revision: 2390
Url: http://nuiton.org/repositories/revision/jaxx/2390
Log:
refs #2173 : fireStopEditing on actionPerformed
Modified:
trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/model/GenericListModel.java
trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/KeyStrokeEditor.java
trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/cell/KeyStrokeCellEditor.java
Modified: trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/model/GenericListModel.java
===================================================================
--- trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/model/GenericListModel.java 2012-07-06 11:20:36 UTC (rev 2389)
+++ trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/model/GenericListModel.java 2012-07-06 11:31:51 UTC (rev 2390)
@@ -128,20 +128,6 @@
return selectedValues.get(0);
}
- protected void fireContentsChanged(Object source, int index0, int index1) {
- Object[] listeners = getListModel().getListDataListeners();
- ListDataEvent e = null;
-
- for (int i = listeners.length - 2; i >= 0; i -= 2) {
- if (listeners[i] == ListDataListener.class) {
- if (e == null) {
- e = new ListDataEvent(source, ListDataEvent.CONTENTS_CHANGED, index0, index1);
- }
- ((ListDataListener)listeners[i+1]).contentsChanged(e);
- }
- }
- }
-
@Override
public int getSize() {
return getListModel().size();
@@ -162,4 +148,17 @@
getListModel().removeListDataListener(l);
}
+ protected void fireContentsChanged(Object source, int index0, int index1) {
+ Object[] listeners = getListModel().getListDataListeners();
+ ListDataEvent e = null;
+
+ for (int i = listeners.length - 2; i >= 0; i -= 2) {
+ if (listeners[i] == ListDataListener.class) {
+ if (e == null) {
+ e = new ListDataEvent(source, ListDataEvent.CONTENTS_CHANGED, index0, index1);
+ }
+ ((ListDataListener)listeners[i+1]).contentsChanged(e);
+ }
+ }
+ }
}
\ No newline at end of file
Modified: trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/KeyStrokeEditor.java
===================================================================
--- trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/KeyStrokeEditor.java 2012-07-06 11:20:36 UTC (rev 2389)
+++ trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/KeyStrokeEditor.java 2012-07-06 11:31:51 UTC (rev 2390)
@@ -71,6 +71,7 @@
KeyStroke oldValue = getKeyStroke();
this.keyStroke = keyStroke;
firePropertyChange("keyStroke", oldValue, keyStroke);
+ fireActionPerformed();
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
Modified: trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/cell/KeyStrokeCellEditor.java
===================================================================
--- trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/cell/KeyStrokeCellEditor.java 2012-07-06 11:20:36 UTC (rev 2389)
+++ trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/cell/KeyStrokeCellEditor.java 2012-07-06 11:31:51 UTC (rev 2390)
@@ -24,6 +24,8 @@
package jaxx.runtime.swing.editor.cell;
import java.awt.Component;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
import javax.swing.AbstractCellEditor;
import javax.swing.JTable;
import javax.swing.KeyStroke;
@@ -40,6 +42,13 @@
public KeyStrokeCellEditor() {
keyStrokeEditor = new KeyStrokeEditor();
+ keyStrokeEditor.addActionListener(new ActionListener() {
+
+ @Override
+ public void actionPerformed(ActionEvent e) {
+ fireEditingStopped();
+ }
+ });
}
@Override
1
0
r2389 - trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/model
by sletellier@users.nuiton.org 06 Jul '12
by sletellier@users.nuiton.org 06 Jul '12
06 Jul '12
Author: sletellier
Date: 2012-07-06 13:20:36 +0200 (Fri, 06 Jul 2012)
New Revision: 2389
Url: http://nuiton.org/repositories/revision/jaxx/2389
Log:
FireContentChanged like DefaultComboBoxModel
Modified:
trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/model/GenericListModel.java
Modified: trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/model/GenericListModel.java
===================================================================
--- trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/model/GenericListModel.java 2012-07-06 10:29:24 UTC (rev 2388)
+++ trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/model/GenericListModel.java 2012-07-06 11:20:36 UTC (rev 2389)
@@ -28,6 +28,7 @@
import java.util.List;
import javax.swing.ComboBoxModel;
import javax.swing.DefaultListModel;
+import javax.swing.event.ListDataEvent;
import javax.swing.event.ListDataListener;
/**
@@ -114,6 +115,7 @@
List<B> newValues = getSelectedValues();
fireSelectionAdded(newValues);
+ fireContentsChanged(this, -1, -1);
firePropertyChange(PROPERTY_SELECTED_VALUE, oldValue, newValues);
}
@@ -126,6 +128,20 @@
return selectedValues.get(0);
}
+ protected void fireContentsChanged(Object source, int index0, int index1) {
+ Object[] listeners = getListModel().getListDataListeners();
+ ListDataEvent e = null;
+
+ for (int i = listeners.length - 2; i >= 0; i -= 2) {
+ if (listeners[i] == ListDataListener.class) {
+ if (e == null) {
+ e = new ListDataEvent(source, ListDataEvent.CONTENTS_CHANGED, index0, index1);
+ }
+ ((ListDataListener)listeners[i+1]).contentsChanged(e);
+ }
+ }
+ }
+
@Override
public int getSize() {
return getListModel().size();
1
0
r2388 - trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/model
by sletellier@users.nuiton.org 06 Jul '12
by sletellier@users.nuiton.org 06 Jul '12
06 Jul '12
Author: sletellier
Date: 2012-07-06 12:29:24 +0200 (Fri, 06 Jul 2012)
New Revision: 2388
Url: http://nuiton.org/repositories/revision/jaxx/2388
Log:
Really fixes #2159 : Create GenericListSelectionModel extracted from GenericListModel
Added:
trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/model/AbstractGenericListSelectionModel.java
Modified:
trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/model/GenericListSelectionModel.java
Added: trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/model/AbstractGenericListSelectionModel.java
===================================================================
--- trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/model/AbstractGenericListSelectionModel.java (rev 0)
+++ trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/model/AbstractGenericListSelectionModel.java 2012-07-06 10:29:24 UTC (rev 2388)
@@ -0,0 +1,275 @@
+/*
+ * #%L
+ * JAXX :: Runtime
+ * $Id:$
+ * $HeadURL:$
+ * %%
+ * Copyright (C) 2008 - 2012 CodeLutin
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Lesser Public License for more details.
+ *
+ * You should have received a copy of the GNU General Lesser Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/lgpl-3.0.html>.
+ * #L%
+ */
+package jaxx.runtime.swing.model;
+
+import com.google.common.collect.Lists;
+import java.beans.PropertyChangeListener;
+import java.beans.PropertyChangeSupport;
+import java.util.Collection;
+import java.util.List;
+import javax.swing.DefaultListSelectionModel;
+import javax.swing.event.EventListenerList;
+
+/**
+ * @author sletellier <letellier(a)codelutin.com>
+ */
+public abstract class AbstractGenericListSelectionModel<B> extends DefaultListSelectionModel {
+
+ public static final String PROPERTY_SELECTED_VALUE = "selectedValues";
+
+ protected EventListenerList listenerList = new EventListenerList();
+ protected final PropertyChangeSupport pcs = new PropertyChangeSupport(this);
+
+ protected List<B> selectedValues;
+
+ public AbstractGenericListSelectionModel() {
+ this.selectedValues = Lists.newArrayList();
+ }
+
+ public B getSelectedValue() {
+ return selectedValues.get(0);
+ }
+
+ public List<B> getSelectedValues() {
+ return Lists.newArrayList(selectedValues);
+ }
+
+ public void setSelectedValues(List<B> selectedValues) {
+ this.selectedValues = selectedValues;
+ }
+
+ protected void unSelectItems(Collection<B> values) {
+ Collection<B> oldValue = Lists.newArrayList(selectedValues);
+ for (B value : values) {
+ int index = selectedValues.indexOf(value);
+ removeSelectionIntervalWithoutFire(index, index);
+ }
+ fireSelectionRemoved(values);
+ firePropertyChange(PROPERTY_SELECTED_VALUE, oldValue, selectedValues);
+ }
+
+ protected void unSelectItem(B value) {
+ Collection<B> oldValue = Lists.newArrayList(selectedValues);
+ int index = selectedValues.indexOf(value);
+ removeSelectionIntervalWithoutFire(index, index);
+
+ fireSelectionRemoved(Lists.newArrayList(value));
+ firePropertyChange(PROPERTY_SELECTED_VALUE, oldValue, selectedValues);
+ }
+
+ public void addSelectedItem(B toSelect) {
+ Collection<B> oldValue = Lists.newArrayList(selectedValues);
+ selectedValues.add(toSelect);
+ int index = selectedValues.indexOf(toSelect);
+ super.addSelectionInterval(index, index);
+
+ fireSelectionAdded(Lists.newArrayList(toSelect));
+ firePropertyChange(PROPERTY_SELECTED_VALUE, oldValue, selectedValues);
+ }
+
+ public boolean hasSelectedIndex() {
+ return !selectedValues.isEmpty();
+ }
+
+ @Override
+ public void addSelectionInterval(int index0, int index1) {
+ Collection<B> oldValue = Lists.newArrayList(selectedValues);
+
+ addSelectionIntervalWithFire(index0, index1);
+ super.addSelectionInterval(index0, index1);
+
+ Collection<B> newValue = Lists.newArrayList(selectedValues);
+ newValue.removeAll(oldValue);
+ fireSelectionAdded(newValue);
+ firePropertyChange(PROPERTY_SELECTED_VALUE, oldValue, selectedValues);
+ }
+
+ @Override
+ public void setSelectionInterval(int index0, int index1) {
+ Collection<B> oldValue = Lists.newArrayList(selectedValues);
+ selectedValues.clear();
+ addSelectionIntervalWithFire(index0, index1);
+ super.setSelectionInterval(index0, index1);
+
+ Collection<B> newValue = Lists.newArrayList(selectedValues);
+ newValue.removeAll(oldValue);
+ fireSelectionAdded(newValue);
+ firePropertyChange(PROPERTY_SELECTED_VALUE, oldValue, selectedValues);
+ }
+
+ @Override
+ public void removeSelectionInterval(int index0, int index1) {
+ Collection<B> oldValue = Lists.newArrayList(selectedValues);
+ removeSelectionIntervalWithoutFire(index0, index1);
+
+ Collection<B> newValue = Lists.newArrayList(selectedValues);
+ newValue.removeAll(oldValue);
+ fireSelectionRemoved(newValue);
+ firePropertyChange(PROPERTY_SELECTED_VALUE, oldValue, selectedValues);
+ }
+
+ protected void removeSelectionIntervalWithoutFire(int index0, int index1) {
+ if (index0 > index1) {
+ int tmp = index1;
+ index1 = index0;
+ index0 = tmp;
+ }
+ for (int i=index0;i<=index1;i++) {
+ if (selectedValues.size() > i && i != -1) {
+ selectedValues.remove(i);
+ }
+ }
+ super.removeSelectionInterval(index0, index1);
+ }
+
+ protected void addSelectionIntervalWithFire(int index0, int index1) {
+ if (index0 > index1) {
+ int tmp = index1;
+ index1 = index0;
+ index0 = tmp;
+ }
+ for (int i=index0;i<=index1;i++) {
+
+ if (getSize() > i && i != -1) {
+ B value = getValueAt(i);
+ selectedValues.add(value);
+ }
+ }
+ }
+
+ public abstract int getSize();
+
+ public abstract B getValueAt(int i);
+
+ @Override
+ public void clearSelection() {
+ Collection<B> oldValue = Lists.newArrayList(selectedValues);
+ selectedValues.clear();
+ super.clearSelection();
+
+ fireSelectionRemoved(oldValue);
+ firePropertyChange(PROPERTY_SELECTED_VALUE, oldValue, selectedValues);
+ }
+
+ @Override
+ public int getSelectionMode() {
+ return MULTIPLE_INTERVAL_SELECTION;
+ }
+
+ protected void fireValuesAdded(Collection<B> values) {
+ if (values.isEmpty()) {
+ return;
+ }
+ Object[] listeners = listenerList.getListenerList();
+ GenericListEvent<B> e = null;
+
+ for (int i = listeners.length - 2; i >= 0; i -= 2) {
+ if (listeners[i] == GenericListListener.class) {
+ if (e == null) {
+ e = new GenericListEvent<B>(this, values);
+ }
+ ((GenericListListener)listeners[i+1]).valuesAdded(e);
+ }
+ }
+ }
+
+ protected void fireValuesRemoved(Collection<B> values) {
+ if (values.isEmpty()) {
+ return;
+ }
+ Object[] listeners = listenerList.getListenerList();
+ GenericListEvent<B> e = null;
+
+ for (int i = listeners.length - 2; i >= 0; i -= 2) {
+ if (listeners[i] == GenericListListener.class) {
+ if (e == null) {
+ e = new GenericListEvent<B>(this, values);
+ }
+ ((GenericListListener)listeners[i+1]).valuesRemoved(e);
+ }
+ }
+ }
+
+ protected void fireSelectionAdded(Collection<B> selectedValues) {
+ if (selectedValues.isEmpty()) {
+ return;
+ }
+ Object[] listeners = listenerList.getListenerList();
+ GenericListEvent<B> e = null;
+
+ for (int i = listeners.length - 2; i >= 0; i -= 2) {
+ if (listeners[i] == GenericListListener.class) {
+ if (e == null) {
+ e = new GenericListEvent<B>(this, selectedValues);
+ }
+ ((GenericListListener)listeners[i+1]).selectionAdded(e);
+ }
+ }
+ }
+
+ protected void fireSelectionRemoved(Collection<B> selectedValues) {
+ if (selectedValues.isEmpty()) {
+ return;
+ }
+ Object[] listeners = listenerList.getListenerList();
+ GenericListEvent<B> e = null;
+
+ for (int i = listeners.length - 2; i >= 0; i -= 2) {
+ if (listeners[i] == GenericListListener.class) {
+ if (e == null) {
+ e = new GenericListEvent<B>(this, selectedValues);
+ }
+ ((GenericListListener)listeners[i+1]).selectionAdded(e);
+ }
+ }
+ }
+
+ public void addGenericListListener(GenericListListener l) {
+ listenerList.add(GenericListListener.class, l);
+ }
+
+ public void removeGenericListListener(GenericListListener l) {
+ listenerList.remove(GenericListListener.class, l);
+ }
+
+ public void addPropertyChangeListener(PropertyChangeListener listener) {
+ pcs.addPropertyChangeListener(listener);
+ }
+
+ public void addPropertyChangeListener(String propertyName, PropertyChangeListener listener) {
+ pcs.addPropertyChangeListener(propertyName, listener);
+ }
+
+ public void removePropertyChangeListener(PropertyChangeListener listener) {
+ pcs.removePropertyChangeListener(listener);
+ }
+
+ public void removePropertyChangeListener(String propertyName, PropertyChangeListener listener) {
+ pcs.removePropertyChangeListener(propertyName, listener);
+ }
+
+ protected void firePropertyChange(String propertyName, Object oldValue, Object newValue) {
+ pcs.firePropertyChange(propertyName, oldValue, newValue);
+ }
+}
Modified: trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/model/GenericListSelectionModel.java
===================================================================
--- trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/model/GenericListSelectionModel.java 2012-07-06 10:11:43 UTC (rev 2387)
+++ trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/model/GenericListSelectionModel.java 2012-07-06 10:29:24 UTC (rev 2388)
@@ -23,30 +23,17 @@
*/
package jaxx.runtime.swing.model;
-import com.google.common.collect.Lists;
-import java.beans.PropertyChangeListener;
-import java.beans.PropertyChangeSupport;
-import java.util.Collection;
-import java.util.List;
import javax.swing.DefaultListModel;
-import javax.swing.DefaultListSelectionModel;
-import javax.swing.event.EventListenerList;
/**
* @author sletellier <letellier(a)codelutin.com>
*/
-public class GenericListSelectionModel<B> extends DefaultListSelectionModel {
+public class GenericListSelectionModel<B> extends AbstractGenericListSelectionModel<B> {
- public static final String PROPERTY_SELECTED_VALUE = "selectedValues";
-
- protected EventListenerList listenerList = new EventListenerList();
- protected final PropertyChangeSupport pcs = new PropertyChangeSupport(this);
-
- protected List<B> selectedValues;
protected DefaultListModel listModel;
public GenericListSelectionModel(DefaultListModel listModel) {
- this.selectedValues = Lists.newArrayList();
+ super();
this.listModel = listModel;
}
@@ -54,225 +41,13 @@
return listModel;
}
- public B getSelectedValue() {
- return selectedValues.get(0);
- }
-
- public List<B> getSelectedValues() {
- return Lists.newArrayList(selectedValues);
- }
-
- public void setSelectedValues(List<B> selectedValues) {
- this.selectedValues = selectedValues;
- }
-
- protected void unSelectItems(Collection<B> values) {
- Collection<B> oldValue = Lists.newArrayList(selectedValues);
- for (B value : values) {
- int index = selectedValues.indexOf(value);
- removeSelectionIntervalWithoutFire(index, index);
- }
- fireSelectionRemoved(values);
- firePropertyChange(PROPERTY_SELECTED_VALUE, oldValue, selectedValues);
- }
-
- protected void unSelectItem(B value) {
- Collection<B> oldValue = Lists.newArrayList(selectedValues);
- int index = selectedValues.indexOf(value);
- removeSelectionIntervalWithoutFire(index, index);
-
- fireSelectionRemoved(Lists.newArrayList(value));
- firePropertyChange(PROPERTY_SELECTED_VALUE, oldValue, selectedValues);
- }
-
- public void addSelectedItem(B toSelect) {
- Collection<B> oldValue = Lists.newArrayList(selectedValues);
- selectedValues.add(toSelect);
- int index = selectedValues.indexOf(toSelect);
- super.addSelectionInterval(index, index);
-
- fireSelectionAdded(Lists.newArrayList(toSelect));
- firePropertyChange(PROPERTY_SELECTED_VALUE, oldValue, selectedValues);
- }
-
- public boolean hasSelectedIndex() {
- return !selectedValues.isEmpty();
- }
-
@Override
- public void addSelectionInterval(int index0, int index1) {
- Collection<B> oldValue = Lists.newArrayList(selectedValues);
-
- addSelectionIntervalWithFire(index0, index1);
- super.addSelectionInterval(index0, index1);
-
- Collection<B> newValue = Lists.newArrayList(selectedValues);
- newValue.removeAll(oldValue);
- fireSelectionAdded(newValue);
- firePropertyChange(PROPERTY_SELECTED_VALUE, oldValue, selectedValues);
+ public int getSize() {
+ return listModel.size();
}
@Override
- public void setSelectionInterval(int index0, int index1) {
- Collection<B> oldValue = Lists.newArrayList(selectedValues);
- selectedValues.clear();
- addSelectionIntervalWithFire(index0, index1);
- super.setSelectionInterval(index0, index1);
-
- Collection<B> newValue = Lists.newArrayList(selectedValues);
- newValue.removeAll(oldValue);
- fireSelectionAdded(newValue);
- firePropertyChange(PROPERTY_SELECTED_VALUE, oldValue, selectedValues);
+ public B getValueAt(int i) {
+ return (B)listModel.getElementAt(i);
}
-
- @Override
- public void removeSelectionInterval(int index0, int index1) {
- Collection<B> oldValue = Lists.newArrayList(selectedValues);
- removeSelectionIntervalWithoutFire(index0, index1);
-
- Collection<B> newValue = Lists.newArrayList(selectedValues);
- newValue.removeAll(oldValue);
- fireSelectionRemoved(newValue);
- firePropertyChange(PROPERTY_SELECTED_VALUE, oldValue, selectedValues);
- }
-
- protected void removeSelectionIntervalWithoutFire(int index0, int index1) {
- if (index0 > index1) {
- int tmp = index1;
- index1 = index0;
- index0 = tmp;
- }
- for (int i=index0;i<=index1;i++) {
- if (selectedValues.size() > i && i != -1) {
- selectedValues.remove(i);
- }
- }
- super.removeSelectionInterval(index0, index1);
- }
-
- protected void addSelectionIntervalWithFire(int index0, int index1) {
- if (index0 > index1) {
- int tmp = index1;
- index1 = index0;
- index0 = tmp;
- }
- for (int i=index0;i<=index1;i++) {
-
- if (listModel.size() > i && i != -1) {
- B value = (B)listModel.getElementAt(i);
- selectedValues.add(value);
- }
- }
- }
-
- @Override
- public void clearSelection() {
- Collection<B> oldValue = Lists.newArrayList(selectedValues);
- selectedValues.clear();
- super.clearSelection();
-
- fireSelectionRemoved(oldValue);
- firePropertyChange(PROPERTY_SELECTED_VALUE, oldValue, selectedValues);
- }
-
- @Override
- public int getSelectionMode() {
- return MULTIPLE_INTERVAL_SELECTION;
- }
-
- protected void fireValuesAdded(Collection<B> values) {
- if (values.isEmpty()) {
- return;
- }
- Object[] listeners = listenerList.getListenerList();
- GenericListEvent<B> e = null;
-
- for (int i = listeners.length - 2; i >= 0; i -= 2) {
- if (listeners[i] == GenericListListener.class) {
- if (e == null) {
- e = new GenericListEvent<B>(this, values);
- }
- ((GenericListListener)listeners[i+1]).valuesAdded(e);
- }
- }
- }
-
- protected void fireValuesRemoved(Collection<B> values) {
- if (values.isEmpty()) {
- return;
- }
- Object[] listeners = listenerList.getListenerList();
- GenericListEvent<B> e = null;
-
- for (int i = listeners.length - 2; i >= 0; i -= 2) {
- if (listeners[i] == GenericListListener.class) {
- if (e == null) {
- e = new GenericListEvent<B>(this, values);
- }
- ((GenericListListener)listeners[i+1]).valuesRemoved(e);
- }
- }
- }
-
- protected void fireSelectionAdded(Collection<B> selectedValues) {
- if (selectedValues.isEmpty()) {
- return;
- }
- Object[] listeners = listenerList.getListenerList();
- GenericListEvent<B> e = null;
-
- for (int i = listeners.length - 2; i >= 0; i -= 2) {
- if (listeners[i] == GenericListListener.class) {
- if (e == null) {
- e = new GenericListEvent<B>(this, selectedValues);
- }
- ((GenericListListener)listeners[i+1]).selectionAdded(e);
- }
- }
- }
-
- protected void fireSelectionRemoved(Collection<B> selectedValues) {
- if (selectedValues.isEmpty()) {
- return;
- }
- Object[] listeners = listenerList.getListenerList();
- GenericListEvent<B> e = null;
-
- for (int i = listeners.length - 2; i >= 0; i -= 2) {
- if (listeners[i] == GenericListListener.class) {
- if (e == null) {
- e = new GenericListEvent<B>(this, selectedValues);
- }
- ((GenericListListener)listeners[i+1]).selectionAdded(e);
- }
- }
- }
-
- public void addGenericListListener(GenericListListener l) {
- listenerList.add(GenericListListener.class, l);
- }
-
- public void removeGenericListListener(GenericListListener l) {
- listenerList.remove(GenericListListener.class, l);
- }
-
- public void addPropertyChangeListener(PropertyChangeListener listener) {
- pcs.addPropertyChangeListener(listener);
- }
-
- public void addPropertyChangeListener(String propertyName, PropertyChangeListener listener) {
- pcs.addPropertyChangeListener(propertyName, listener);
- }
-
- public void removePropertyChangeListener(PropertyChangeListener listener) {
- pcs.removePropertyChangeListener(listener);
- }
-
- public void removePropertyChangeListener(String propertyName, PropertyChangeListener listener) {
- pcs.removePropertyChangeListener(propertyName, listener);
- }
-
- protected void firePropertyChange(String propertyName, Object oldValue, Object newValue) {
- pcs.firePropertyChange(propertyName, oldValue, newValue);
- }
}
1
0
r2387 - in trunk: . jaxx-demo/src/main/java/jaxx/demo jaxx-demo/src/main/resources/i18n jaxx-runtime/src/main/java/jaxx/runtime/swing/model jaxx-widgets/src/main/java/jaxx/runtime/swing jaxx-widgets/src/main/java/jaxx/runtime/swing/editor jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/cell jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/config
by sletellier@users.nuiton.org 06 Jul '12
by sletellier@users.nuiton.org 06 Jul '12
06 Jul '12
Author: sletellier
Date: 2012-07-06 12:11:43 +0200 (Fri, 06 Jul 2012)
New Revision: 2387
Url: http://nuiton.org/repositories/revision/jaxx/2387
Log:
- fixes #2173 : Add keyStroke editor to input shortcut key in config ui
- Up to nuiton-util 2.5.1-SNAPSHOT
Added:
trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/KeyStrokeEditor.java
trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/cell/KeyStrokeCellEditor.java
Modified:
trunk/jaxx-demo/src/main/java/jaxx/demo/DemoConfig.java
trunk/jaxx-demo/src/main/java/jaxx/demo/DemoUIHandler.java
trunk/jaxx-demo/src/main/resources/i18n/jaxx-demo_en_GB.properties
trunk/jaxx-demo/src/main/resources/i18n/jaxx-demo_es_ES.properties
trunk/jaxx-demo/src/main/resources/i18n/jaxx-demo_fr_FR.properties
trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/model/GenericListSelectionModel.java
trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/JAXXWidgetUtil.java
trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/FileEditorHandler.java
trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/config/ConfigTableEditor.java
trunk/pom.xml
Modified: trunk/jaxx-demo/src/main/java/jaxx/demo/DemoConfig.java
===================================================================
--- trunk/jaxx-demo/src/main/java/jaxx/demo/DemoConfig.java 2012-07-06 08:42:54 UTC (rev 2386)
+++ trunk/jaxx-demo/src/main/java/jaxx/demo/DemoConfig.java 2012-07-06 10:11:43 UTC (rev 2387)
@@ -30,6 +30,7 @@
import java.io.InputStream;
import java.util.Locale;
import java.util.Properties;
+import javax.swing.KeyStroke;
import jaxx.demo.feature.nav.NavDemo;
import jaxx.runtime.JAXXUtil;
import org.apache.commons.logging.Log;
@@ -69,6 +70,8 @@
public static final String PROPERTY_LOG_PATTERN_LAYOUT = "logPatternLayout";
+ public static final String PROPERTY_KEY_OPEN_CONFIG = "keyOpenConfig";
+
public DemoConfig() {
setConfigFileName(Option.CONFIG_FILE.defaultValue);
@@ -148,6 +151,10 @@
return result;
}
+ public KeyStroke getKeyOpenConfig() {
+ return getOptionAsKeyStroke(Option.KEY_OPEN_CONFIG.key);
+ }
+
public void setFullscreen(boolean fullscreen) {
Object oldValue = null;
setOption(Option.FULL_SCREEN.key, fullscreen + "");
@@ -180,6 +187,12 @@
firePropertyChange(PROPERTY_LOG_PATTERN_LAYOUT, oldValue, logPatternLayout);
}
+ public void setKeyOpenConfig(KeyStroke keyStroke) {
+ KeyStroke oldValue = getKeyOpenConfig();
+ setOption(Option.KEY_OPEN_CONFIG.key, keyStroke.toString());
+ firePropertyChange(PROPERTY_KEY_OPEN_CONFIG, oldValue, keyStroke);
+ }
+
/**
* Save configuration, in user home directory using the
* {@link #getConfigFileName}. Default, env and commande line note saved
@@ -264,6 +277,13 @@
String.class,
false,
false),
+ KEY_OPEN_CONFIG(
+ "ui." + PROPERTY_KEY_OPEN_CONFIG,
+ _("jaxxdemo.config.ui.keyOpenConfig"),
+ "ctrl alt pressed S",
+ KeyStroke.class,
+ false,
+ false),
DEMO_PATH(
"ui.demo.path",
_("jaxxdemo.config.ui.demo.path"),
Modified: trunk/jaxx-demo/src/main/java/jaxx/demo/DemoUIHandler.java
===================================================================
--- trunk/jaxx-demo/src/main/java/jaxx/demo/DemoUIHandler.java 2012-07-06 08:42:54 UTC (rev 2386)
+++ trunk/jaxx-demo/src/main/java/jaxx/demo/DemoUIHandler.java 2012-07-06 10:11:43 UTC (rev 2387)
@@ -44,6 +44,25 @@
*/
package jaxx.demo;
+import java.awt.Component;
+import java.awt.Desktop;
+import java.awt.event.ActionEvent;
+import java.beans.PropertyChangeEvent;
+import java.beans.PropertyChangeListener;
+import java.lang.reflect.Constructor;
+import java.net.URL;
+import java.util.Arrays;
+import java.util.Locale;
+import javax.swing.AbstractAction;
+import javax.swing.InputMap;
+import javax.swing.JComponent;
+import javax.swing.JPanel;
+import javax.swing.JTree;
+import javax.swing.KeyStroke;
+import javax.swing.SwingUtilities;
+import javax.swing.event.TreeSelectionEvent;
+import javax.swing.event.TreeSelectionListener;
+import javax.swing.tree.TreePath;
import jaxx.demo.tree.DemoNode;
import jaxx.demo.tree.DemoTreeHelper;
import jaxx.runtime.JAXXContext;
@@ -52,29 +71,16 @@
import jaxx.runtime.context.DefaultApplicationContext;
import jaxx.runtime.context.JAXXContextEntryDef;
import jaxx.runtime.context.JAXXInitialContext;
-import jaxx.runtime.swing.log.JAXXLog4jUI;
-import org.nuiton.util.decorator.DecoratorProvider;
import jaxx.runtime.swing.AboutPanel;
import jaxx.runtime.swing.ErrorDialogUI;
import jaxx.runtime.swing.editor.config.ConfigUIHelper;
+import jaxx.runtime.swing.log.JAXXLog4jUI;
import jaxx.runtime.swing.renderer.DecoratorProviderListCellRenderer;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.nuiton.i18n.I18n;
+import org.nuiton.util.decorator.DecoratorProvider;
-import javax.swing.JPanel;
-import javax.swing.JTree;
-import javax.swing.SwingUtilities;
-import javax.swing.event.TreeSelectionEvent;
-import javax.swing.event.TreeSelectionListener;
-import javax.swing.tree.TreePath;
-import java.awt.Component;
-import java.awt.Desktop;
-import java.lang.reflect.Constructor;
-import java.net.URL;
-import java.util.Arrays;
-import java.util.Locale;
-
import static org.nuiton.i18n.I18n._;
import static org.nuiton.i18n.I18n.n_;
@@ -92,6 +98,8 @@
static final JAXXContextEntryDef<DemoUI> MAIN_UI_ENTRY_DEF =
JAXXUtil.newContextEntryDef("mainui", DemoUI.class);
+ public static final String OPEN_CONFIG_ACTION = "openConfig";
+
/**
* Methode pour initialiser l'ui principale sans l'afficher.
*
@@ -138,6 +146,9 @@
// instanciate ui
DemoUI ui = new DemoUI(context);
+ // add key strokes
+ addKeyStrokes(ui, config);
+
// keep it in root context
MAIN_UI_ENTRY_DEF.setContextValue(rootContext, ui);
@@ -150,6 +161,34 @@
return ui;
}
+ protected void addKeyStrokes(final DemoUI ui, DemoConfig config) {
+
+ // Use WHEN_IN_FOCUSED_WINDOW to don't have focus check for binding keys
+ JPanel mainPane = ui.getMainPane();
+ mainPane.getActionMap().put(OPEN_CONFIG_ACTION, new AbstractAction() {
+
+ @Override
+ public void actionPerformed(ActionEvent e) {
+ showConfig(ui);
+ }
+ });
+ final InputMap inputMap = mainPane.getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW);
+ config.addPropertyChangeListener(DemoConfig.PROPERTY_KEY_OPEN_CONFIG, new PropertyChangeListener() {
+
+ @Override
+ public void propertyChange(PropertyChangeEvent evt) {
+ KeyStroke oldValue = (KeyStroke) evt.getOldValue();
+ inputMap.remove(oldValue);
+ setShowConfigInputMap(inputMap, (KeyStroke) evt.getNewValue());
+ }
+ });
+ setShowConfigInputMap(inputMap, config.getKeyOpenConfig());
+ }
+
+ protected void setShowConfigInputMap(InputMap inputMap, KeyStroke keyStroke) {
+ inputMap.put(keyStroke, OPEN_CONFIG_ACTION);
+ }
+
public void initUI(final DemoUI ui) {
// Creation of selection listener to open ui when tree selection change
@@ -450,6 +489,10 @@
helper.setOptionPropertyName(DemoConfig.PROPERTY_LOCALE);
helper.setOptionCallBack("ui");
+ helper.addOption(DemoConfig.Option.KEY_OPEN_CONFIG);
+ helper.setOptionPropertyName(DemoConfig.PROPERTY_KEY_OPEN_CONFIG);
+// helper.setOptionCallBack("keymap");
+
helper.addOption(DemoConfig.Option.LOG_LEVEL);
helper.setOptionPropertyName(DemoConfig.PROPERTY_LOG_LEVEL);
helper.setOptionCallBack("log");
Modified: trunk/jaxx-demo/src/main/resources/i18n/jaxx-demo_en_GB.properties
===================================================================
--- trunk/jaxx-demo/src/main/resources/i18n/jaxx-demo_en_GB.properties 2012-07-06 08:42:54 UTC (rev 2386)
+++ trunk/jaxx-demo/src/main/resources/i18n/jaxx-demo_en_GB.properties 2012-07-06 10:11:43 UTC (rev 2387)
@@ -185,6 +185,7 @@
jaxxdemo.config.ui.demo.path=Path of demo to select when starting application
jaxxdemo.config.ui.fontSize=default font size to use in sources
jaxxdemo.config.ui.fullscreen=To change the screen mode (true for full screen)
+jaxxdemo.config.ui.keyOpenConfig=To change key for open config ui
jaxxdemo.config.ui.locale=Language used in application
jaxxdemo.config.ui.logLevel=Log level
jaxxdemo.config.ui.logPatternLayout=Log pattern
Modified: trunk/jaxx-demo/src/main/resources/i18n/jaxx-demo_es_ES.properties
===================================================================
--- trunk/jaxx-demo/src/main/resources/i18n/jaxx-demo_es_ES.properties 2012-07-06 08:42:54 UTC (rev 2386)
+++ trunk/jaxx-demo/src/main/resources/i18n/jaxx-demo_es_ES.properties 2012-07-06 10:11:43 UTC (rev 2387)
@@ -21,7 +21,7 @@
Blue=Bleu
Blue\:=bleu \:
Bold=En gras
-Button\ label\:=Libellé de l'action
+Button\ label\:=Libell\u00E9 de l'action
C=C
CE=CE
Cancel=Annuler
@@ -35,12 +35,12 @@
Editable=Editable
Email\ Address\:=Courriel
Email\:=Courriel
-Enabled=Activé
+Enabled=Activ\u00E9
EnumEditor\ (country)\ \:=Editeur de pays
EnumEditor\ (language)\ \:=Editeur de langue
Fancy\ Button=Bouton 'Fancy'
-First\ Name\:=Prénom
-FirstName\:=Prénom \:
+First\ Name\:=Pr\u00E9nom
+FirstName\:=Pr\u00E9nom \:
Font\ size=Taille de la police
Font\ size\:\ =
Fool\ me\ once=
@@ -49,7 +49,7 @@
Green\:=Vert \:
Greet=
Help=
-Inc\ (+)=Incrémenter (+)
+Inc\ (+)=Incr\u00E9menter (+)
Italic=Italique
JAXX\ Demo=
JMenu\ demo=
@@ -70,26 +70,26 @@
Red\:=rouge \:
Reset=Reinitialiser
Show\ Background=Voir le fond
-Show\ password\ dialog=Voir l'éditeur de mot de passe
+Show\ password\ dialog=Voir l'\u00E9diteur de mot de passe
Sign\ on=Signer
Simple\ Button=Bouton simple
Size\:=Taille \:
Sources=Sources
Spacing\:=Espacement \:
-Start=Démarrer
-Stop=Arrêter
-Supported\ Swing\ components\:=Composants Swing supportés
+Start=D\u00E9marrer
+Stop=Arr\u00EAter
+Supported\ Swing\ components\:=Composants Swing support\u00E9s
Text2\:=Text 2
Text\:=Texte \:
Total\:\ =
-Underline=souligné
+Underline=soulign\u00E9
Upper\ case\ text\:=Texte en majuscule
Use\ the\ spinner\ to=Utiliser la jauge pour
Username\:=Utilisateur \:
-Vegetable=Légumes
+Vegetable=L\u00E9gumes
View=Vue
Welcome\ to\ the\ JAXX\ framework\!=Bienvenu dans le framework JAXX
-Working\ directory\:=Répertoire de travail
+Working\ directory\:=R\u00E9pertoire de travail
Yellow=Jaune
You\ entered\:\ =
Your\ name\:=Votre nom \:
@@ -98,8 +98,8 @@
between\ these\ lines=
button\ A=Bouton A
button\ B=Bouton B
-button\ C\ (full\ block)=Bouton C (blocage complêt)
-button\ D\ (full\ block\ 2)=Bouton D (blocage complêt)
+button\ C\ (full\ block)=Bouton C (blocage compl\u00EAt)
+button\ D\ (full\ block\ 2)=Bouton D (blocage compl\u00EAt)
cancel=Annuler
close=Fermer
close2=Fermer 2
@@ -143,12 +143,12 @@
jaxxdemo.action.configuration.tip=Modifier la configuration
jaxxdemo.action.exit=Quitter
jaxxdemo.action.exit.tip=Quitter JAXX Demo
-jaxxdemo.action.fullscreen=Plein écran
-jaxxdemo.action.fullscreen.tip=Passer en mode pleine écran
+jaxxdemo.action.fullscreen=Plein \u00E9cran
+jaxxdemo.action.fullscreen.tip=Passer en mode pleine \u00E9cran
jaxxdemo.action.help=Aide
jaxxdemo.action.help.tip=Affichier l'aide
-jaxxdemo.action.locale.fr=Français
-jaxxdemo.action.locale.fr.tip=Changer la langue en français
+jaxxdemo.action.locale.fr=Fran\u00E7ais
+jaxxdemo.action.locale.fr.tip=Changer la langue en fran\u00E7ais
jaxxdemo.action.locale.uk=Anglais
jaxxdemo.action.locale.uk.tip=Changer la langue en anglais
jaxxdemo.action.normalscreen=Ecran normal
@@ -156,10 +156,10 @@
jaxxdemo.action.remove=Supprimer
jaxxdemo.action.show=Voir
jaxxdemo.action.site=Site internet
-jaxxdemo.action.site.tip=Accéder au site de l'application sur internet
+jaxxdemo.action.site.tip=Acc\u00E9der au site de l'application sur internet
jaxxdemo.common.actors=Acteurs
jaxxdemo.common.age=Age
-jaxxdemo.common.firstName=Prénom
+jaxxdemo.common.firstName=Pr\u00E9nom
jaxxdemo.common.id=Identifiant
jaxxdemo.common.image=Image
jaxxdemo.common.lastName=Nom
@@ -167,7 +167,7 @@
jaxxdemo.common.movies=Films
jaxxdemo.common.people=Acteur
jaxxdemo.common.title=Titre
-jaxxdemo.common.year=Année
+jaxxdemo.common.year=Ann\u00E9e
jaxxdemo.component.jaxx=Composants JAXX
jaxxdemo.component.jaxx.editor=Editeurs
jaxxdemo.component.swing=Composants Swing
@@ -176,51 +176,52 @@
jaxxdemo.component.swing.form.text=Texte
jaxxdemo.component.swing.layout=Layouts
jaxxdemo.component.swing.menu=Menus
-jaxxdemo.component.swing.window=Fenêtres
-jaxxdemo.config.category.directories=Répertoires
-jaxxdemo.config.category.directories.description=Répertoires de l'application
+jaxxdemo.component.swing.window=Fen\u00EAtres
+jaxxdemo.config.category.directories=R\u00E9pertoires
+jaxxdemo.config.category.directories.description=R\u00E9pertoires de l'application
jaxxdemo.config.category.other=Autre
jaxxdemo.config.category.other.description=Autres options
jaxxdemo.config.configFileName.description=Le nom du fichier de configuration
-jaxxdemo.config.ui.demo.path=Chemin de la démo par défaut
-jaxxdemo.config.ui.fontSize=La taille de la police à utiliser pour visualiser dans les sources
-jaxxdemo.config.ui.fullscreen=Pour afficher l'aplication en mode pleine écran
-jaxxdemo.config.ui.locale=La langue utilisée par l'application
+jaxxdemo.config.ui.demo.path=Chemin de la d\u00E9mo par d\u00E9faut
+jaxxdemo.config.ui.fontSize=La taille de la police \u00E0 utiliser pour visualiser dans les sources
+jaxxdemo.config.ui.fullscreen=Pour afficher l'aplication en mode pleine \u00E9cran
+jaxxdemo.config.ui.keyOpenConfig=Pour changer le racourcie clavier pour ouvrir l'\u00E9cran de configuration
+jaxxdemo.config.ui.locale=La langue utilis\u00E9e par l'application
jaxxdemo.config.ui.logLevel=Level de log
jaxxdemo.config.ui.logPatternLayout=Pattern des log
-jaxxdemo.datePickerEditor.dateResult=Affichage du résultat
+jaxxdemo.datePickerEditor.dateResult=Affichage du r\u00E9sultat
jaxxdemo.datePickerEditor.patternLayout=Pattern de date
jaxxdemo.datePickerEditor.showPopupButton=Afficher le boutton pour ouvrir la popup
-jaxxdemo.feature=Fonctionnalités
+jaxxdemo.feature=Fonctionnalit\u00E9s
jaxxdemo.feature.databinding=Data binding
jaxxdemo.feature.nav=API JAXX pour les arbres
jaxxdemo.feature.validation=Validation
-jaxxdemo.fileEditor.acceptAllFileFilterUsed=Accèpte tout les FileFilter
-jaxxdemo.fileEditor.directoryEnabled=Activer la sélection des files
-jaxxdemo.fileEditor.extsDescLbl=Description des extensions (séparées par des virgules, ex \: Texte (*.txt), Images (*.png))
+jaxxdemo.fileEditor.acceptAllFileFilterUsed=Acc\u00E8pte tout les FileFilter
+jaxxdemo.fileEditor.directoryEnabled=Activer la s\u00E9lection des files
+jaxxdemo.fileEditor.extsDescLbl=Description des extensions (s\u00E9par\u00E9es par des virgules, ex \: Texte (*.txt), Images (*.png))
jaxxdemo.fileEditor.extsLbl=Extensions (separated by comma, ex \: txt, png)
-jaxxdemo.fileEditor.fileEnabled=Activer la sélection des fichiers
+jaxxdemo.fileEditor.fileEnabled=Activer la s\u00E9lection des fichiers
jaxxdemo.fileEditor.titleLbl=Titre du dialog d'ouverture de fichier
jaxxdemo.fun=Fun
jaxxdemo.i18neditor.configuration=Configuration
jaxxdemo.i18neditor.popup.title=Titre de la popup
jaxxdemo.i18neditor.popupBorderText=Titre de la popup
-jaxxdemo.i18neditor.selected.locale=Langue sélectionnée
+jaxxdemo.i18neditor.selected.locale=Langue s\u00E9lectionn\u00E9e
jaxxdemo.i18neditor.showIcon=Afficher les icones
jaxxdemo.i18neditor.showPopupIcon=Afficher les icones dans la popup
jaxxdemo.i18neditor.showPopupText=Afficher les textes dans la popup
jaxxdemo.i18neditor.showText=Afficher le text
-jaxxdemo.init.closed=JAXX Demo a été fermé à %1$s
-jaxxdemo.init.context.done=Initialisation du contexte terminée en %1$s.
-jaxxdemo.init.ui.done=Initialisation de l'interface graphique terminée.
+jaxxdemo.init.closed=JAXX Demo a \u00E9t\u00E9 ferm\u00E9 \u00E0 %1$s
+jaxxdemo.init.context.done=Initialisation du contexte termin\u00E9e en %1$s.
+jaxxdemo.init.ui.done=Initialisation de l'interface graphique termin\u00E9e.
jaxxdemo.listSelector.addToolTipLbl=Add button toolTip
jaxxdemo.listSelector.removeToolTipLbl=Remove button toolTip
jaxxdemo.menu.file=Fichier
jaxxdemo.menu.file.locale=Langues
jaxxdemo.menu.help=Aide
jaxxdemo.menu.showLogs=Afficher les logs
-jaxxdemo.message.config.loaded=Configuration de JAXX Demo v. %1$s chargée.
-jaxxdemo.message.goto.site=Accéder au site de JAXX Demo (%1$s)
+jaxxdemo.message.config.loaded=Configuration de JAXX Demo v. %1$s charg\u00E9e.
+jaxxdemo.message.goto.site=Acc\u00E9der au site de JAXX Demo (%1$s)
jaxxdemo.navigation.actor.title=Acteur
jaxxdemo.navigation.actors.title=Acteurs
jaxxdemo.navigation.movie.title=Film
@@ -228,25 +229,25 @@
jaxxdemo.numbereditor.applyNumberPattern=Appliquer le pattern
jaxxdemo.numbereditor.autoPopup=Affichage automatique popup
jaxxdemo.numbereditor.configuration=Configuration
-jaxxdemo.numbereditor.model=Résultat
-jaxxdemo.numbereditor.model.float=Valeur décimale \: %1$s
-jaxxdemo.numbereditor.model.int=Valeur entière \: %1$s
-jaxxdemo.numbereditor.model.numberPattern=Format de l'éditeur \: %s
+jaxxdemo.numbereditor.model=R\u00E9sultat
+jaxxdemo.numbereditor.model.float=Valeur d\u00E9cimale \: %1$s
+jaxxdemo.numbereditor.model.int=Valeur enti\u00E8re \: %1$s
+jaxxdemo.numbereditor.model.numberPattern=Format de l'\u00E9diteur \: %s
jaxxdemo.numbereditor.numberPattern.configuration=Pattern du nombre
jaxxdemo.numbereditor.showPopupButton=Afficher le boutton de popup
jaxxdemo.numbereditor.showReset=Afficher le boutton de reset
-jaxxdemo.numbereditor.useFloat=Utiliser les décimales
+jaxxdemo.numbereditor.useFloat=Utiliser les d\u00E9cimales
jaxxdemo.numbereditor.useSign=Utiliser le signe
jaxxdemo.timeeditor.editor=Editeur de temps
jaxxdemo.timeeditor.label=Label
-jaxxdemo.timeeditor.model=Résultat
-jaxxdemo.timeeditor.value=Heure sélectionnée \: %1$tH\:%1$tM
+jaxxdemo.timeeditor.model=R\u00E9sultat
+jaxxdemo.timeeditor.value=Heure s\u00E9lectionn\u00E9e \: %1$tH\:%1$tM
jaxxdemo.title.about=A propos de JAXX Demo...
jaxxdemo.title.showLog=Logs de JAXX Demo
jaxxdemo.tree.tabtitle=Arbre
jaxxdemo.treeTable.tabtitle=Arbre tableau
-jaxxdemo.warning.nimbus.landf=Le look and Feel Nimbus n'a pas été trouvé, il faut au moins la version 1.6u10 de java.
-jaxxdemo.warning.no.ui=Aucun environnement graphique détecté
+jaxxdemo.warning.nimbus.landf=Le look and Feel Nimbus n'a pas \u00E9t\u00E9 trouv\u00E9, il faut au moins la version 1.6u10 de java.
+jaxxdemo.warning.no.ui=Aucun environnement graphique d\u00E9tect\u00E9
model0.f0=
model0.f1=
model0.file...=
Modified: trunk/jaxx-demo/src/main/resources/i18n/jaxx-demo_fr_FR.properties
===================================================================
--- trunk/jaxx-demo/src/main/resources/i18n/jaxx-demo_fr_FR.properties 2012-07-06 08:42:54 UTC (rev 2386)
+++ trunk/jaxx-demo/src/main/resources/i18n/jaxx-demo_fr_FR.properties 2012-07-06 10:11:43 UTC (rev 2387)
@@ -21,7 +21,7 @@
Blue=Bleu
Blue\:=bleu \:
Bold=En gras
-Button\ label\:=Libellé de l'action
+Button\ label\:=Libell\u00E9 de l'action
C=C
CE=CE
Cancel=Annuler
@@ -35,12 +35,12 @@
Editable=Editable
Email\ Address\:=Courriel
Email\:=Courriel
-Enabled=Activé
+Enabled=Activ\u00E9
EnumEditor\ (country)\ \:=Editeur de pays
EnumEditor\ (language)\ \:=Editeur de langue
Fancy\ Button=Bouton 'Fancy'
-First\ Name\:=Prénom
-FirstName\:=Prénom \:
+First\ Name\:=Pr\u00E9nom
+FirstName\:=Pr\u00E9nom \:
Font\ size=Taille de la police
Font\ size\:\ =
Fool\ me\ once=
@@ -49,7 +49,7 @@
Green\:=Vert \:
Greet=
Help=
-Inc\ (+)=Incrémenter (+)
+Inc\ (+)=Incr\u00E9menter (+)
Italic=Italique
JAXX\ Demo=
JMenu\ demo=
@@ -70,26 +70,26 @@
Red\:=rouge \:
Reset=Reinitialiser
Show\ Background=Voir le fond
-Show\ password\ dialog=Voir l'éditeur de mot de passe
+Show\ password\ dialog=Voir l'\u00E9diteur de mot de passe
Sign\ on=Signer
Simple\ Button=Bouton simple
Size\:=Taille \:
Sources=Sources
Spacing\:=Espacement \:
-Start=Démarrer
-Stop=Arrêter
-Supported\ Swing\ components\:=Composants Swing supportés
+Start=D\u00E9marrer
+Stop=Arr\u00EAter
+Supported\ Swing\ components\:=Composants Swing support\u00E9s
Text2\:=Text 2
Text\:=Texte \:
Total\:\ =
-Underline=souligné
+Underline=soulign\u00E9
Upper\ case\ text\:=Texte en majuscule
Use\ the\ spinner\ to=Utiliser la jauge pour
Username\:=Utilisateur \:
-Vegetable=Légumes
+Vegetable=L\u00E9gumes
View=Vue
Welcome\ to\ the\ JAXX\ framework\!=Bienvenu dans le framework JAXX
-Working\ directory\:=Répertoire de travail
+Working\ directory\:=R\u00E9pertoire de travail
Yellow=Jaune
You\ entered\:\ =
Your\ name\:=Votre nom \:
@@ -98,8 +98,8 @@
between\ these\ lines=
button\ A=Bouton A
button\ B=Bouton B
-button\ C\ (full\ block)=Bouton C (blocage complêt)
-button\ D\ (full\ block\ 2)=Bouton D (blocage complêt)
+button\ C\ (full\ block)=Bouton C (blocage compl\u00EAt)
+button\ D\ (full\ block\ 2)=Bouton D (blocage compl\u00EAt)
cancel=Annuler
close=Fermer
close2=Fermer 2
@@ -143,12 +143,12 @@
jaxxdemo.action.configuration.tip=Modifier la configuration
jaxxdemo.action.exit=Quitter
jaxxdemo.action.exit.tip=Quitter JAXX Demo
-jaxxdemo.action.fullscreen=Plein écran
-jaxxdemo.action.fullscreen.tip=Passer en mode pleine écran
+jaxxdemo.action.fullscreen=Plein \u00E9cran
+jaxxdemo.action.fullscreen.tip=Passer en mode pleine \u00E9cran
jaxxdemo.action.help=Aide
jaxxdemo.action.help.tip=Affichier l'aide
-jaxxdemo.action.locale.fr=Français
-jaxxdemo.action.locale.fr.tip=Changer la langue en français
+jaxxdemo.action.locale.fr=Fran\u00E7ais
+jaxxdemo.action.locale.fr.tip=Changer la langue en fran\u00E7ais
jaxxdemo.action.locale.uk=Anglais
jaxxdemo.action.locale.uk.tip=Changer la langue en anglais
jaxxdemo.action.normalscreen=Ecran normal
@@ -156,10 +156,10 @@
jaxxdemo.action.remove=Supprimer
jaxxdemo.action.show=Voir
jaxxdemo.action.site=Site internet
-jaxxdemo.action.site.tip=Accéder au site de l'application sur internet
+jaxxdemo.action.site.tip=Acc\u00E9der au site de l'application sur internet
jaxxdemo.common.actors=Acteurs
jaxxdemo.common.age=Age
-jaxxdemo.common.firstName=Prénom
+jaxxdemo.common.firstName=Pr\u00E9nom
jaxxdemo.common.id=Identifiant
jaxxdemo.common.image=Image
jaxxdemo.common.lastName=Nom
@@ -167,7 +167,7 @@
jaxxdemo.common.movies=Films
jaxxdemo.common.people=Acteur
jaxxdemo.common.title=Titre
-jaxxdemo.common.year=Année
+jaxxdemo.common.year=Ann\u00E9e
jaxxdemo.component.jaxx=Composants JAXX
jaxxdemo.component.jaxx.editor=Editeurs
jaxxdemo.component.swing=Composants Swing
@@ -176,51 +176,52 @@
jaxxdemo.component.swing.form.text=Texte
jaxxdemo.component.swing.layout=Layouts
jaxxdemo.component.swing.menu=Menus
-jaxxdemo.component.swing.window=Fenêtres
-jaxxdemo.config.category.directories=Répertoires
-jaxxdemo.config.category.directories.description=Répertoires de l'application
+jaxxdemo.component.swing.window=Fen\u00EAtres
+jaxxdemo.config.category.directories=R\u00E9pertoires
+jaxxdemo.config.category.directories.description=R\u00E9pertoires de l'application
jaxxdemo.config.category.other=Autre
jaxxdemo.config.category.other.description=Autres options
jaxxdemo.config.configFileName.description=Le nom du fichier de configuration
-jaxxdemo.config.ui.demo.path=Chemin de la démo par défaut
-jaxxdemo.config.ui.fontSize=La taille de la police à utiliser pour visualiser dans les sources
-jaxxdemo.config.ui.fullscreen=Pour afficher l'aplication en mode pleine écran
-jaxxdemo.config.ui.locale=La langue utilisée par l'application
+jaxxdemo.config.ui.demo.path=Chemin de la d\u00E9mo par d\u00E9faut
+jaxxdemo.config.ui.fontSize=La taille de la police \u00E0 utiliser pour visualiser dans les sources
+jaxxdemo.config.ui.fullscreen=Pour afficher l'aplication en mode pleine \u00E9cran
+jaxxdemo.config.ui.keyOpenConfig=Pour changer le racourcie clavier pour ouvrir l'\u00E9cran de configuration
+jaxxdemo.config.ui.locale=La langue utilis\u00E9e par l'application
jaxxdemo.config.ui.logLevel=Level de log
jaxxdemo.config.ui.logPatternLayout=Pattern des log
-jaxxdemo.datePickerEditor.dateResult=Affichage du résultat
+jaxxdemo.datePickerEditor.dateResult=Affichage du r\u00E9sultat
jaxxdemo.datePickerEditor.patternLayout=Pattern de date
jaxxdemo.datePickerEditor.showPopupButton=Afficher le boutton pour ouvrir la popup
-jaxxdemo.feature=Fonctionnalités
+jaxxdemo.feature=Fonctionnalit\u00E9s
jaxxdemo.feature.databinding=Data binding
jaxxdemo.feature.nav=API JAXX pour les arbres
jaxxdemo.feature.validation=Validation
-jaxxdemo.fileEditor.acceptAllFileFilterUsed=Accèpte tout les FileFilter
-jaxxdemo.fileEditor.directoryEnabled=Activer la sélection des files
-jaxxdemo.fileEditor.extsDescLbl=Description des extensions (séparées par des virgules, ex \: Texte (*.txt), Images (*.png))
+jaxxdemo.fileEditor.acceptAllFileFilterUsed=Acc\u00E8pte tout les FileFilter
+jaxxdemo.fileEditor.directoryEnabled=Activer la s\u00E9lection des files
+jaxxdemo.fileEditor.extsDescLbl=Description des extensions (s\u00E9par\u00E9es par des virgules, ex \: Texte (*.txt), Images (*.png))
jaxxdemo.fileEditor.extsLbl=Extensions (separated by comma, ex \: txt, png)
-jaxxdemo.fileEditor.fileEnabled=Activer la sélection des fichiers
-jaxxdemo.fileEditor.titleLbl=Titre de la fenêtre de sélection de fichier
+jaxxdemo.fileEditor.fileEnabled=Activer la s\u00E9lection des fichiers
+jaxxdemo.fileEditor.titleLbl=Titre de la fen\u00EAtre de s\u00E9lection de fichier
jaxxdemo.fun=Fun
jaxxdemo.i18neditor.configuration=Configuration
jaxxdemo.i18neditor.popup.title=Titre de la popup
jaxxdemo.i18neditor.popupBorderText=Titre de la popup
-jaxxdemo.i18neditor.selected.locale=Langue sélectionnée
+jaxxdemo.i18neditor.selected.locale=Langue s\u00E9lectionn\u00E9e
jaxxdemo.i18neditor.showIcon=Afficher les icones
jaxxdemo.i18neditor.showPopupIcon=Afficher les icones dans la popup
jaxxdemo.i18neditor.showPopupText=Afficher les textes dans la popup
jaxxdemo.i18neditor.showText=Afficher le text
-jaxxdemo.init.closed=JAXX Demo a été fermé à %1$s
-jaxxdemo.init.context.done=Initialisation du contexte terminée en %1$s.
-jaxxdemo.init.ui.done=Initialisation de l'interface graphique terminée.
+jaxxdemo.init.closed=JAXX Demo a \u00E9t\u00E9 ferm\u00E9 \u00E0 %1$s
+jaxxdemo.init.context.done=Initialisation du contexte termin\u00E9e en %1$s.
+jaxxdemo.init.ui.done=Initialisation de l'interface graphique termin\u00E9e.
jaxxdemo.listSelector.addToolTipLbl=Tooltip du boutton ajouter
jaxxdemo.listSelector.removeToolTipLbl=Tooltip du boutton enlever
jaxxdemo.menu.file=Fichier
jaxxdemo.menu.file.locale=Langues
jaxxdemo.menu.help=Aide
jaxxdemo.menu.showLogs=Afficher les logs
-jaxxdemo.message.config.loaded=Configuration de JAXX Demo v. %1$s chargée.
-jaxxdemo.message.goto.site=Accéder au site de JAXX Demo (%1$s)
+jaxxdemo.message.config.loaded=Configuration de JAXX Demo v. %1$s charg\u00E9e.
+jaxxdemo.message.goto.site=Acc\u00E9der au site de JAXX Demo (%1$s)
jaxxdemo.navigation.actor.title=Acteur
jaxxdemo.navigation.actors.title=Acteurs
jaxxdemo.navigation.movie.title=Film
@@ -228,25 +229,25 @@
jaxxdemo.numbereditor.applyNumberPattern=Appliquer le pattern
jaxxdemo.numbereditor.autoPopup=Affichage automatique popup
jaxxdemo.numbereditor.configuration=Configuration
-jaxxdemo.numbereditor.model=Résultat
-jaxxdemo.numbereditor.model.float=Valeur décimale \: %1$s
-jaxxdemo.numbereditor.model.int=Valeur entière \: %1$s
-jaxxdemo.numbereditor.model.numberPattern=Format de l'éditeur \: %s
+jaxxdemo.numbereditor.model=R\u00E9sultat
+jaxxdemo.numbereditor.model.float=Valeur d\u00E9cimale \: %1$s
+jaxxdemo.numbereditor.model.int=Valeur enti\u00E8re \: %1$s
+jaxxdemo.numbereditor.model.numberPattern=Format de l'\u00E9diteur \: %s
jaxxdemo.numbereditor.numberPattern.configuration=Pattern du nombre
jaxxdemo.numbereditor.showPopupButton=Afficher le boutton de popup
jaxxdemo.numbereditor.showReset=Afficher le boutton de reset
-jaxxdemo.numbereditor.useFloat=Utiliser les décimales
+jaxxdemo.numbereditor.useFloat=Utiliser les d\u00E9cimales
jaxxdemo.numbereditor.useSign=Utiliser le signe
jaxxdemo.timeeditor.editor=Editeur de temps
jaxxdemo.timeeditor.label=Label
-jaxxdemo.timeeditor.model=Résultat
-jaxxdemo.timeeditor.value=Heure sélectionnée \: %1$tH\:%1$tM
+jaxxdemo.timeeditor.model=R\u00E9sultat
+jaxxdemo.timeeditor.value=Heure s\u00E9lectionn\u00E9e \: %1$tH\:%1$tM
jaxxdemo.title.about=A propos de JAXX Demo...
jaxxdemo.title.showLog=Logs de JAXX Demo
jaxxdemo.tree.tabtitle=Arbre
jaxxdemo.treeTable.tabtitle=Arbre tableau
-jaxxdemo.warning.nimbus.landf=Le look and Feel Nimbus n'a pas été trouvé, il faut au moins la version 1.6u10 de java.
-jaxxdemo.warning.no.ui=Aucun environnement graphique détecté
+jaxxdemo.warning.nimbus.landf=Le look and Feel Nimbus n'a pas \u00E9t\u00E9 trouv\u00E9, il faut au moins la version 1.6u10 de java.
+jaxxdemo.warning.no.ui=Aucun environnement graphique d\u00E9tect\u00E9
model0.f0=
model0.f1=
model0.file...=
Modified: trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/model/GenericListSelectionModel.java
===================================================================
--- trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/model/GenericListSelectionModel.java 2012-07-06 08:42:54 UTC (rev 2386)
+++ trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/model/GenericListSelectionModel.java 2012-07-06 10:11:43 UTC (rev 2387)
@@ -1,3 +1,26 @@
+/*
+ * #%L
+ * JAXX :: Runtime
+ * $Id:$
+ * $HeadURL:$
+ * %%
+ * Copyright (C) 2008 - 2012 CodeLutin
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Lesser Public License for more details.
+ *
+ * You should have received a copy of the GNU General Lesser Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/lgpl-3.0.html>.
+ * #L%
+ */
package jaxx.runtime.swing.model;
import com.google.common.collect.Lists;
Modified: trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/JAXXWidgetUtil.java
===================================================================
--- trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/JAXXWidgetUtil.java 2012-07-06 08:42:54 UTC (rev 2386)
+++ trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/JAXXWidgetUtil.java 2012-07-06 10:11:43 UTC (rev 2387)
@@ -28,6 +28,7 @@
import jaxx.runtime.SwingUtil;
import jaxx.runtime.swing.editor.cell.DateCellEditor;
import jaxx.runtime.swing.editor.cell.FileCellEditor;
+import jaxx.runtime.swing.editor.cell.KeyStrokeCellEditor;
import jaxx.runtime.swing.editor.cell.NumberCellEditor;
import jaxx.runtime.swing.renderer.DateCellRenderer;
@@ -52,6 +53,10 @@
return new FileCellEditor();
}
+ public static TableCellEditor newKeyStrokeTableCellEditor() {
+ return new KeyStrokeCellEditor();
+ }
+
public static <E extends Number> NumberCellEditor<E> newNumberTableCellEditor(Class<E> type, boolean useSign) {
return new NumberCellEditor<E>(type, useSign);
}
Modified: trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/FileEditorHandler.java
===================================================================
--- trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/FileEditorHandler.java 2012-07-06 08:42:54 UTC (rev 2386)
+++ trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/FileEditorHandler.java 2012-07-06 10:11:43 UTC (rev 2387)
@@ -53,7 +53,6 @@
String startPath = view.getStartPath();
if (startFile == null && StringUtils.isNotEmpty(startPath)) {
-
// else filed start path
startFile = new File(startPath);
} else if (startFile == null) {
Added: trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/KeyStrokeEditor.java
===================================================================
--- trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/KeyStrokeEditor.java (rev 0)
+++ trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/KeyStrokeEditor.java 2012-07-06 10:11:43 UTC (rev 2387)
@@ -0,0 +1,81 @@
+/*
+ * #%L
+ * JAXX :: Widgets
+ * $Id:$
+ * $HeadURL:$
+ * %%
+ * Copyright (C) 2008 - 2012 CodeLutin
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Lesser Public License for more details.
+ *
+ * You should have received a copy of the GNU General Lesser Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/lgpl-3.0.html>.
+ * #L%
+ */
+package jaxx.runtime.swing.editor;
+
+import java.awt.event.KeyEvent;
+import javax.swing.JTextField;
+import javax.swing.KeyStroke;
+import javax.swing.SwingUtilities;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
+/**
+ * Custom text field to disable default key events
+ *
+ * @author sletellier <letellier(a)codelutin.com>
+ */
+public class KeyStrokeEditor extends JTextField {
+
+ private static final Log log = LogFactory.getLog(KeyStrokeEditor.class);
+
+ protected KeyStroke keyStroke;
+
+ public KeyStrokeEditor() {
+ enableEvents(KeyEvent.KEY_EVENT_MASK);
+ setFocusTraversalKeysEnabled(false);
+ }
+
+ @Override
+ protected void processKeyEvent(KeyEvent e) {
+ if (e.getID() == KeyEvent.KEY_PRESSED) {
+ int keyCode = e.getKeyCode();
+ if (keyCode == KeyEvent.VK_SHIFT ||
+ keyCode == KeyEvent.VK_ALT ||
+ keyCode == KeyEvent.VK_CONTROL ||
+ keyCode == KeyEvent.VK_ALT_GRAPH ||
+ keyCode == KeyEvent.VK_META) {
+
+ return;
+ }
+
+ setKeyStroke(KeyStroke.getKeyStroke(keyCode, e.getModifiers()));
+ }
+ }
+
+ public KeyStroke getKeyStroke() {
+ return keyStroke;
+ }
+
+ public void setKeyStroke(KeyStroke keyStroke) {
+ KeyStroke oldValue = getKeyStroke();
+ this.keyStroke = keyStroke;
+ firePropertyChange("keyStroke", oldValue, keyStroke);
+ SwingUtilities.invokeLater(new Runnable() {
+ @Override
+ public void run() {
+ setText(getKeyStroke().toString());
+ }
+ });
+ }
+}
Added: trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/cell/KeyStrokeCellEditor.java
===================================================================
--- trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/cell/KeyStrokeCellEditor.java (rev 0)
+++ trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/cell/KeyStrokeCellEditor.java 2012-07-06 10:11:43 UTC (rev 2387)
@@ -0,0 +1,55 @@
+/*
+ * #%L
+ * JAXX :: Widgets
+ * $Id:$
+ * $HeadURL:$
+ * %%
+ * Copyright (C) 2008 - 2012 CodeLutin
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Lesser Public License for more details.
+ *
+ * You should have received a copy of the GNU General Lesser Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/lgpl-3.0.html>.
+ * #L%
+ */
+package jaxx.runtime.swing.editor.cell;
+
+import java.awt.Component;
+import javax.swing.AbstractCellEditor;
+import javax.swing.JTable;
+import javax.swing.KeyStroke;
+import javax.swing.table.TableCellEditor;
+import jaxx.runtime.swing.editor.KeyStrokeEditor;
+
+/**
+ * @author sletellier <letellier(a)codelutin.com>
+ */
+public class KeyStrokeCellEditor extends AbstractCellEditor
+ implements TableCellEditor {
+
+ protected KeyStrokeEditor keyStrokeEditor;
+
+ public KeyStrokeCellEditor() {
+ keyStrokeEditor = new KeyStrokeEditor();
+ }
+
+ @Override
+ public Component getTableCellEditorComponent(JTable table, Object value, boolean isSelected, int row, int column) {
+ keyStrokeEditor.setKeyStroke((KeyStroke) value);
+ return keyStrokeEditor;
+ }
+
+ @Override
+ public Object getCellEditorValue() {
+ return keyStrokeEditor.getKeyStroke();
+ }
+}
Modified: trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/config/ConfigTableEditor.java
===================================================================
--- trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/config/ConfigTableEditor.java 2012-07-06 08:42:54 UTC (rev 2386)
+++ trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/config/ConfigTableEditor.java 2012-07-06 10:11:43 UTC (rev 2387)
@@ -31,6 +31,7 @@
import java.util.Locale;
import javax.swing.DefaultCellEditor;
import javax.swing.JTable;
+import javax.swing.KeyStroke;
import javax.swing.event.CellEditorListener;
import javax.swing.table.TableCellEditor;
import jaxx.runtime.swing.JAXXWidgetUtil;
@@ -111,23 +112,23 @@
if (type.isEnum()) {
// add a EnumEditor to table
editor = new DefaultCellEditor(EnumEditor.newEditor((Class<Enum>) type));
- table.setDefaultEditor(type, editor);
} else if (type.equals(Class.class)) {
editor = new ClassCellEditor();
- table.setDefaultEditor(type, editor);
} else if (type.equals(File.class)){
editor = JAXXWidgetUtil.newFileTableCellEditor();
- table.setDefaultEditor(type, editor);
+ } else if (type.equals(KeyStroke.class)){
+ editor = JAXXWidgetUtil.newKeyStrokeTableCellEditor();
+
} else if (type.equals(Locale.class)) {
editor = new DefaultCellEditor(LocaleEditor.newEditor());
- table.setDefaultEditor(Locale.class, editor);
} else {
editor = table.getDefaultEditor(String.class);
}
+ table.setDefaultEditor(type, editor);
}
if (editor == null) {
throw new IllegalStateException("could not find a editor for type +" + type);
Modified: trunk/pom.xml
===================================================================
--- trunk/pom.xml 2012-07-06 08:42:54 UTC (rev 2386)
+++ trunk/pom.xml 2012-07-06 10:11:43 UTC (rev 2387)
@@ -107,7 +107,7 @@
<!-- pour un muli module on doit fixer le projectId -->
<projectId>jaxx</projectId>
- <nuitonUtilsVersion>2.5</nuitonUtilsVersion>
+ <nuitonUtilsVersion>2.5.1-SNAPSHOT</nuitonUtilsVersion>
<nuitonI18nVersion>2.4.1</nuitonI18nVersion>
<eugeneVersion>2.4.2</eugeneVersion>
<xworkVersion>2.3.1.2</xworkVersion>
1
0
r2386 - trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor
by sletellier@users.nuiton.org 06 Jul '12
by sletellier@users.nuiton.org 06 Jul '12
06 Jul '12
Author: sletellier
Date: 2012-07-06 10:42:54 +0200 (Fri, 06 Jul 2012)
New Revision: 2386
Url: http://nuiton.org/repositories/revision/jaxx/2386
Log:
really fixes #2171 : FileEditor dont keep input path
Modified:
trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/FileEditor.jaxx
trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/FileEditorHandler.java
Modified: trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/FileEditor.jaxx
===================================================================
--- trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/FileEditor.jaxx 2012-07-06 08:24:11 UTC (rev 2385)
+++ trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/FileEditor.jaxx 2012-07-06 08:42:54 UTC (rev 2386)
@@ -24,7 +24,6 @@
<BaseActionPanel layout='{new BorderLayout()}'>
<import>
java.io.File
- java.beans.PropertyChangeListener
jaxx.runtime.swing.BaseActionPanel
org.apache.commons.lang3.StringUtils
</import>
@@ -50,6 +49,10 @@
public void setSelectedFile(File selectedFile) {
this.selectedFile = selectedFile;
+ if (selectedFile != null) {
+ setStartPath(selectedFile.getAbsolutePath());
+ fireActionEvent();
+ }
}
public File getSelectedFile() {
@@ -67,7 +70,7 @@
constraints='BorderLayout.CENTER'
enabled='{isEnabled()}'
text='{getStartPath()}'
- onKeyReleased='handler.setSelectedFile(pathField.getText())'/>
+ onKeyReleased='setSelectedFile(null);setStartPath(pathField.getText())'/>
<JButton id='boutonXslLocation'
constraints='BorderLayout.EAST'
Modified: trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/FileEditorHandler.java
===================================================================
--- trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/FileEditorHandler.java 2012-07-06 08:24:11 UTC (rev 2385)
+++ trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/FileEditorHandler.java 2012-07-06 08:42:54 UTC (rev 2386)
@@ -56,7 +56,7 @@
// else filed start path
startFile = new File(startPath);
- } else {
+ } else if (startFile == null) {
// else start with user home
startFile = lastSelectedPath;
1
0
r2385 - trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor
by sletellier@users.nuiton.org 06 Jul '12
by sletellier@users.nuiton.org 06 Jul '12
06 Jul '12
Author: sletellier
Date: 2012-07-06 10:24:11 +0200 (Fri, 06 Jul 2012)
New Revision: 2385
Url: http://nuiton.org/repositories/revision/jaxx/2385
Log:
fixes #2171 : FileEditor dont keep input path
Modified:
trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/FileEditor.jaxx
trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/FileEditorHandler.java
Modified: trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/FileEditor.jaxx
===================================================================
--- trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/FileEditor.jaxx 2012-07-05 16:08:24 UTC (rev 2384)
+++ trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/FileEditor.jaxx 2012-07-06 08:24:11 UTC (rev 2385)
@@ -24,9 +24,9 @@
<BaseActionPanel layout='{new BorderLayout()}'>
<import>
java.io.File
- java.beans.PropertyChangeEvent
java.beans.PropertyChangeListener
jaxx.runtime.swing.BaseActionPanel
+ org.apache.commons.lang3.StringUtils
</import>
<FileEditorHandler id='handler' constructorParams='this'/>
@@ -37,8 +37,6 @@
<Boolean id='fileEnabled' javaBean='Boolean.TRUE'/>
- <File id='selectedFile' javaBean='null'/>
-
<String id='startPath' javaBean='null'/>
<String id='title' javaBean='null'/>
@@ -48,26 +46,28 @@
<String id='extsDescription' javaBean='null'/>
<script><![CDATA[
- protected void $afterCompleteSetup() {
+ protected File selectedFile;
- addPropertyChangeListener(PROPERTY_SELECTED_FILE, new PropertyChangeListener() {
+ public void setSelectedFile(File selectedFile) {
+ this.selectedFile = selectedFile;
+ }
- @Override
- public void propertyChange(PropertyChangeEvent evt) {
- if (selectedFile != null) {
- pathField.setText(selectedFile.getAbsolutePath());
- fireActionEvent();
- }
+ public File getSelectedFile() {
+ if (selectedFile == null) {
+ if (StringUtils.isNotEmpty(startPath)) {
+ selectedFile = new File(startPath);
}
- });
+ }
+ return selectedFile;
}
+
]]></script>
<JTextField id='pathField'
constraints='BorderLayout.CENTER'
enabled='{isEnabled()}'
text='{getStartPath()}'
- onFocusLost='setSelectedFile(new File(pathField.getText()))'/>
+ onKeyReleased='handler.setSelectedFile(pathField.getText())'/>
<JButton id='boutonXslLocation'
constraints='BorderLayout.EAST'
Modified: trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/FileEditorHandler.java
===================================================================
--- trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/FileEditorHandler.java 2012-07-05 16:08:24 UTC (rev 2384)
+++ trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/editor/FileEditorHandler.java 2012-07-06 08:24:11 UTC (rev 2385)
@@ -27,6 +27,7 @@
import java.io.File;
import javax.swing.JFileChooser;
import javax.swing.filechooser.FileFilter;
+import org.apache.commons.lang3.StringUtils;
/**
* @author sletellier <letellier(a)codelutin.com>
@@ -34,10 +35,15 @@
public class FileEditorHandler {
public static final String SEPARATOR_REGEX = "\\s*,\\s*";
+ public static File lastSelectedPath;
+
protected FileEditor view;
public FileEditorHandler(FileEditor view) {
this.view = view;
+ if (lastSelectedPath == null) {
+ lastSelectedPath = new File(System.getProperty("user.home"));
+ }
}
public void openLocation() {
@@ -45,7 +51,7 @@
// use last selected file
File startFile = view.getSelectedFile();
String startPath = view.getStartPath();
- if (startFile == null && startPath != null) {
+ if (startFile == null && StringUtils.isNotEmpty(startPath)) {
// else filed start path
@@ -53,7 +59,7 @@
} else {
// else start with user home
- startFile = new File(System.getProperty("user.home"));
+ startFile = lastSelectedPath;
}
JFileChooser fc = new JFileChooser(startFile);
@@ -118,10 +124,26 @@
// get selected to display in ui
File file = fc.getSelectedFile();
- view.setSelectedFile(file);
+ setSelectedFile(file);
}
}
+ public void setSelectedFile(String path) {
+ setSelectedFile(new File(path));
+ }
+
+ public void setSelectedFile(File file) {
+ view.setSelectedFile(file);
+ view.setStartPath(file.getPath());
+ File dir = file;
+ if (dir.exists()) {
+ if (!dir.isDirectory()) {
+ dir = dir.getParentFile();
+ }
+ lastSelectedPath = dir;
+ }
+ }
+
public static class ExtentionFileFiler extends FileFilter {
protected String ext;
protected String desciption;
1
0