Java JFileChooser createFileChooser(File presetFile, final String... postfixes)

Here you can find the source of createFileChooser(File presetFile, final String... postfixes)

Description

create File Chooser

License

Open Source License

Declaration

private static JFileChooser createFileChooser(File presetFile,
            final String... postfixes) 

Method Source Code

//package com.java2s;
/*******************************************************************************
 * HELIUM V, Open Source ERP software for sustained success
 * at small and medium-sized enterprises.
 * Copyright (C) 2004 - 2015 HELIUM V IT-Solutions GmbH
 * //from  ww  w .ja v  a 2  s .  co m
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU Affero General Public License as published 
 * by the Free Software Foundation, either version 3 of theLicense, or 
 * (at your option) any later version.
 * 
 * According to sec. 7 of the GNU Affero General Public License, version 3, 
 * the terms of the AGPL are supplemented with the following terms:
 * 
 * "HELIUM V" and "HELIUM 5" are registered trademarks of 
 * HELIUM V IT-Solutions GmbH. The licensing of the program under the 
 * AGPL does not imply a trademark license. Therefore any rights, title and
 * interest in our trademarks remain entirely with us. If you want to propagate
 * modified versions of the Program under the name "HELIUM V" or "HELIUM 5",
 * you may only do so if you have a written permission by HELIUM V IT-Solutions 
 * GmbH (to acquire a permission please contact HELIUM V IT-Solutions
 * at trademark@heliumv.com).
 * 
 * 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 Affero General Public License for more details.
 * 
 * You should have received a copy of the GNU Affero General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 * 
 * Contact: developers@heliumv.com
 ******************************************************************************/

import java.io.File;

import javax.swing.JFileChooser;

import javax.swing.filechooser.FileFilter;

public class Main {
    private static JFileChooser createFileChooser(File presetFile,
            final String... postfixes) {
        JFileChooser fc = new JFileChooser();
        if (presetFile != null)
            fc.setSelectedFile(presetFile);
        fc.setAcceptAllFileFilterUsed(postfixes == null
                || postfixes.length == 0);

        if (postfixes == null)
            return fc;

        for (final String postfix : postfixes) {
            if (postfix == null)
                fc.setAcceptAllFileFilterUsed(true);
            fc.addChoosableFileFilter(new FileFilter() {

                @Override
                public String getDescription() {
                    return (postfix == null ? "" : postfix);
                }

                @Override
                public boolean accept(File f) {
                    if (f.isDirectory())
                        return true;
                    if (postfix != null && !f.getName().endsWith(postfix)) {
                        return false;
                    }
                    return true;
                }
            });
        }
        return fc;
    }
}

Related

  1. cleanFileSelector(JFileChooser filterUpdates)
  2. cleanFileSelector(JFileChooser filterUpdates)
  3. configureFileChooser(JFileChooser fchooser, boolean directoryOnly, File selectedFile)
  4. correctSelectedFileExtension(JFileChooser chooser)
  5. createChooser(String lastPath, final boolean checkOverrideFile)
  6. createFileChooser(String initDir)
  7. createFileChooser(String title, File dir, String filter)
  8. createJFileChooser(String name)
  9. createJFileChooserWithExistenceChecking()