Logo Search packages:      
Sourcecode: acetoneiso version File versions  Download package

foldertoiso.h

//This file is part of AcetoneISO. Copyright 2006,2007,2008,2009 Marco Di Antonio and Fabrizio Di Marco (acetoneiso@gmail.com)
//
//    AcetoneISO is free software: you can redistribute it and/or modify
//    it under the terms of the GNU General Public License as published by
//    the Free Software Foundation, either version 3 of the License, or
//    (at your option) any later version.
//
//    AcetoneISO 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 Public License for more details.
//
//    You should have received a copy of the GNU General Public License
//    along with AcetoneISO.  If not, see <http://www.gnu.org/licenses/>. 
void acetoneiso::foldertoiso()
{
QFile mkisofs;
mkisofs.setFileName("/usr/bin/genisoimage");

QDir Home = QDir::home();
QFile file(Home.path() + "/.acetoneiso/acetoneiso.conf");
   file.open(QIODevice::ReadOnly);//lo apro in sola lettura
   QString str1 = (leggiRigo( 1, &file ));

if (mkisofs.exists())
      {
   
    QDir Home = QDir::home();
       QString folder = QFileDialog::getExistingDirectory(this, tr("AcetoneISO::Select Folder to be Converted"),
                                                 Home.path());
            if (folder.isEmpty() )
            {
              return;
            }
            
            QDir fol (folder);
            QString iso;
            iso = fol.dirName();
            //iso.prepend("iso_");

            QString fileName = QFileDialog::getSaveFileName(this, tr("AcetoneISO::Save ISO"),
                                                             Home.path() + "/" + iso,
                                                            tr("Images (*.iso)"));
                  
            if ( fileName.isNull() )
            {
            return;
            }
                  
            //fileName.append(".iso");
                        
            if(str1.contains("standard", Qt::CaseInsensitive)) {
              
              showProgressDisplay();
              MKisofs = new QProcess();
              MKisofs->setReadChannel(QProcess::StandardOutput);
              MKisofs->setProcessChannelMode(QProcess::MergedChannels);
              connect(MKisofs, SIGNAL(readyReadStandardOutput()), SLOT(updateProgressDisplay_MKisofs() )); 
              connect(MKisofs, SIGNAL(finished(int, QProcess::ExitStatus)), this, SLOT(printOut(int, QProcess::ExitStatus)));
              
              MKisofs->start("genisoimage",QStringList() << "-R" << "-J" << "-o" << fileName << folder  );
              
                  
            }
            else {
                  
            bool ok;
            QString text = QInputDialog::getText(this, tr("ISO ID"),
            tr("Please insert an ID for the ISO"), QLineEdit::Normal,
            tr(""), &ok);

            if (!ok){
             }
            else{
              showProgressDisplay();
              MKisofs = new QProcess();
              MKisofs->setReadChannel(QProcess::StandardOutput);
              MKisofs->setProcessChannelMode(QProcess::MergedChannels);
              connect(MKisofs, SIGNAL(readyReadStandardOutput()), SLOT(updateProgressDisplay_MKisofs() )); 
              connect(MKisofs, SIGNAL(finished(int, QProcess::ExitStatus)), this, SLOT(printOut(int, QProcess::ExitStatus)));
              
            MKisofs->start("genisoimage",QStringList()  << "-R" << "-J" << "-V" << text << "-o" << fileName << folder  );
                          
             }

            }
                  
            
      }
else {
QMessageBox::warning(this, "AcetoneISO::Warning!",tr("no genisoimage found in /usr/bin"));
}

file.close();
}


Generated by  Doxygen 1.6.0   Back to index