Author: tchemit Date: 2009-03-05 16:21:27 +0000 (Thu, 05 Mar 2009) New Revision: 1402 Modified: lutinutil/trunk/changelog.txt lutinutil/trunk/src/main/java/org/codelutin/util/FileUtil.java Log: improve FileUtil methods : now can specify the component's invoker (fix some focus bugs in fullscreen mode) Modified: lutinutil/trunk/changelog.txt =================================================================== --- lutinutil/trunk/changelog.txt 2009-02-26 17:01:02 UTC (rev 1401) +++ lutinutil/trunk/changelog.txt 2009-03-05 16:21:27 UTC (rev 1402) @@ -1,3 +1,5 @@ +ver 1.0.4 chemit 200903?? + * 20090305 [chemit] - improve FileUtil methods : now can specify the component's invoker (fix some focus bugs in fullscreen mode) ver 1.0.3 chemit 20090218 * 20090218 [chemit] - use lutinproject 3.4 * 20090209 [chemit] - add inputStreamToFile method in FileUtil + javadoc on this class Modified: lutinutil/trunk/src/main/java/org/codelutin/util/FileUtil.java =================================================================== --- lutinutil/trunk/src/main/java/org/codelutin/util/FileUtil.java 2009-02-26 17:01:02 UTC (rev 1401) +++ lutinutil/trunk/src/main/java/org/codelutin/util/FileUtil.java 2009-03-05 16:21:27 UTC (rev 1402) @@ -100,7 +100,35 @@ * @return le fichier accepté, ou null si rien n'est chois ou l'utilisateur a annulé * @see #getFile(javax.swing.filechooser.FileFilter[]) */ - static public File getFile(String... patternOrDescriptionFilters) { + static public File getFile(String... patternOrDescriptionFilters) { + File result; + result = getFile(null, patternOrDescriptionFilters); + return result; + } + + /** + * Retourne le nom du fichier entre dans la boite de dialogue. + * Si le bouton annuler est utilisé, ou qu'il y a une erreur retourne null. + * + * @param filters les filtres a ajouter + * @return le fichier accepté, ou null si rien n'est chois ou l'utilisateur a annulé + */ + static public File getFile(javax.swing.filechooser.FileFilter... filters) { + File result = getFile(null, filters); + return result; + } + + /** + * Retourne le nom du fichier entre dans la boite de dialogue. + * Si le bouton annuler est utilisé, ou qu'il y a une erreur retourne null. + * + * @param parent le component parent du dialog + * @param patternOrDescriptionFilters les filtres a utiliser, les chaines doivent etre données + * par deux, le pattern du filtre + la description du filtre + * @return le fichier accepté, ou null si rien n'est chois ou l'utilisateur a annulé + * @see #getFile(javax.swing.filechooser.FileFilter[]) + */ + static public File getFile(java.awt.Component parent, String... patternOrDescriptionFilters) { if (patternOrDescriptionFilters.length % 2 != 0) { throw new IllegalArgumentException("Arguments must be (pattern, description) couple"); } @@ -111,18 +139,20 @@ filters[i] = new PatternChooserFilter(pattern, description); } File result; - result = getFile(filters); + result = getFile(parent, filters); return result; } + /** * Retourne le nom du fichier entre dans la boite de dialogue. * Si le bouton annuler est utilisé, ou qu'il y a une erreur retourne null. * + * @param parent le component parent du dialog * @param filters les filtres a ajouter * @return le fichier accepté, ou null si rien n'est chois ou l'utilisateur a annulé */ - static public File getFile(javax.swing.filechooser.FileFilter... filters) { + static public File getFile(java.awt.Component parent, javax.swing.filechooser.FileFilter... filters) { try { JFileChooser chooser = new JFileChooser(currentDirectory); @@ -137,7 +167,7 @@ } } chooser.setFileSelectionMode(JFileChooser.FILES_ONLY); - int returnVal = chooser.showDialog(null, "Ok"); + int returnVal = chooser.showDialog(parent, "Ok"); if (returnVal == JFileChooser.APPROVE_OPTION) { File theFile = chooser.getSelectedFile(); if (theFile != null) { @@ -153,6 +183,15 @@ } /** + * @return le nom du repertoire entre dans la boite de dialogue. + * Si le bouton annuler est utilisé, ou qu'il y a une erreur retourne + * null. + */ + static public String getDirectory() { + return getDirectory(null,"Ok", "Ok"); + } + + /** * @param title le nom de la boite de dialogue * @param approvalText le texte de l'action d'acceptation du répertoire dans le file chooser * @return le nom du repertoire entre dans la boite de dialogue. @@ -160,12 +199,25 @@ * null. */ static public String getDirectory(String title, String approvalText) { + String result = getDirectory(null, title, approvalText); + return result; + } + + /** + * @param parent le component parent du dialog + * @param title le nom de la boite de dialogue + * @param approvalText le texte de l'action d'acceptation du répertoire dans le file chooser + * @return le nom du repertoire entre dans la boite de dialogue. + * Si le bouton annuler est utilisé, ou qu'il y a une erreur retourne + * null. + */ + static public String getDirectory(java.awt.Component parent, String title, String approvalText) { try { JFileChooser chooser = new JFileChooser(currentDirectory); chooser.setDialogType(JFileChooser.CUSTOM_DIALOG); chooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY); chooser.setDialogTitle(title); - int returnVal = chooser.showDialog(null, approvalText); + int returnVal = chooser.showDialog(parent, approvalText); if (returnVal == JFileChooser.APPROVE_OPTION) { File theFile = chooser.getSelectedFile(); if (theFile != null) { @@ -184,15 +236,6 @@ } /** - * @return le nom du repertoire entre dans la boite de dialogue. - * Si le bouton annuler est utilisé, ou qu'il y a une erreur retourne - * null. - */ - static public String getDirectory() { - return getDirectory("Ok", "Ok"); - } - - /** * Permet de convertir un fichier en un tableau de byte * * @param file le fichier source à convertire