Examples of JWaitDialog


Examples of shared.dialog.JWaitDialog

    }

    private void doBatch(final JBatchData data)
    {
        data.m_targetFolder = JPathHelper.addSeparator(data.m_targetFolder);
        final JWaitDialog waitDialog = new JWaitDialog(this, Main.getString("wait_scan_caption"), null);
        final ArrayList<File> fileArray = new ArrayList<File>();
        waitDialog.setIndeterminate(true);
        Thread thread = new Thread(new Runnable()
        {
            public void run()
            {
                doBatchCollect(data.m_srcFolder, data, fileArray);
                SwingUtilities.invokeLater(new Runnable()
                {
                    public void run()
                    {
                        waitDialog.stop();
                    }
                });
            }
        });
        thread.start();
        waitDialog.start();

        final JWaitDialog waitDialog_convert = new JWaitDialog(this, Main.getString("wait_convert_caption"), Main.getString("cancel"));
        waitDialog_convert.setRange(0, fileArray.size());
        thread = new Thread(new Runnable()
        {
            public void run()
            {
                int count = 0;
                String template = Main.getString("wait_convert");
                for (File file : fileArray)
                {
                    if (waitDialog_convert.wasCancelled())
                        break;
                    String path = file.getPath();
                    String newFile = data.m_targetFolder + path.substring(data.m_srcFolder.length()+1, path.length());
                    newFile = newFile.substring(0, newFile.length() - JPathHelper.getFileExtension(newFile).length());
                    newFile += data.getTargetExtension();
                    String fileName = JPathHelper.getBaseFileName(newFile);
                    String dirName = JPathHelper.addSeparator(JPathHelper.getFolder(newFile));
                    String extName = JPathHelper.getFileExtension(newFile);
                    newFile = dirName + data.m_targetTemplate.replaceAll("%1", fileName) + "." + extName;
                    File targetFile = new File(newFile);
                    File srcFile = new File(path);
                    if (!srcFile.equals(targetFile))
                    {
                        boolean flag = false;
                        File targetDir = new File(JPathHelper.getFolder(targetFile));
                        if (targetDir.exists() ? true : targetDir.mkdirs())
                        {
                            try
                            {
                                JIfdData ifd = new JIfdData(srcFile);
                                BufferedImage bi = ImageIO.read(srcFile);
                                switch (data.m_targetFormat)
                                {
                                    case JBatchData.JPG_FORMAT:
                                        m_imgView.saveJPG(targetFile, bi, ifd, data.m_scaleFactor, data.m_quality, data.m_bOptimizedHuffmanTable);
                                        break;
                                    case JBatchData.PNG_FORMAT:
                                        m_imgView.savePNG(targetFile, bi, ifd, data.m_scaleFactor);
                                        break;
                                    case JBatchData.BMP_FORMAT:
                                        m_imgView.saveBMP(targetFile, bi, ifd, data.m_scaleFactor);
                                        break;
                                }
                            }
                            catch(IOException ex)
                            {}
                        }
                        else if (Main.m_settings.isDebug())
                            System.err.println("Unable to ceate directory: " + targetDir);
                    }
                    else if (Main.m_settings.isDebug())
                        System.err.println("Source and target are identical: " + targetFile);
                    final int _count = count++;
                    final String str = String.format(template, fileName + "." + extName);
                    SwingUtilities.invokeLater(new Runnable()
                    {
                        public void run()
                        {
                            waitDialog_convert.notify(new ProgNotify(ProgNotify.RUN, _count, str));
                        }
                    });
                }
                SwingUtilities.invokeLater(new Runnable()
                {
                    public void run()
                    {
                        waitDialog_convert.stop();
                    }
                });
            }
        });
        thread.start();
        waitDialog_convert.start();
    }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.