コード例 #1
0
ZipArch::ZipArch( ArkWidget *_gui, const QString & _fileName )
    : Arch(  _gui, _fileName )
{
    m_archiver_program = "zip";
    m_unarchiver_program = "unzip";
    verifyCompressUtilityIsAvailable( m_archiver_program );
    verifyUncompressUtilityIsAvailable( m_unarchiver_program );

    m_headerString = "----";
    m_repairYear = 9;
    m_fixMonth = 7;
    m_fixDay = 8;
    m_fixTime = 10;
    m_dateCol = 5;
    m_numCols = 7;

    m_archCols.append( new ArchColumns( 1, QRegExp( "[0-9]+" ) ) );
    m_archCols.append( new ArchColumns( 2, QRegExp( "[^\\s]+" ) ) );
    m_archCols.append( new ArchColumns( 3, QRegExp( "[0-9]+" ) ) );
    m_archCols.append( new ArchColumns( 4, QRegExp( "[0-9.]+%" ) ) );
    m_archCols.append( new ArchColumns( 7, QRegExp( "[01][0-9]" ), 2 ) );
    m_archCols.append( new ArchColumns( 8, QRegExp( "[0-3][0-9]" ), 2 ) );
    m_archCols.append( new ArchColumns( 9, QRegExp( "[0-9][0-9]" ), 2 ) );
    m_archCols.append( new ArchColumns( 10, QRegExp( "[0-9:]+" ), 6 ) );
    m_archCols.append( new ArchColumns( 6, QRegExp( "[a-fA-F0-9]+ {2}" ) ) );
    m_archCols.append( new ArchColumns( 0, QRegExp( "[^\\n]+" ), 4096 ) );

}
コード例 #2
0
ファイル: sevenzip.cpp プロジェクト: Fat-Zer/tdeutils
SevenZipArch::SevenZipArch( ArkWidget *gui, const TQString &filename )
  : Arch( gui, filename ), m_nameColumnPos( -1 )
{
  // Check if 7z is available
  bool have_7z = !TDEGlobal::dirs()->findExe( "7z" ).isNull();
  // Check if 7za is available
  bool have_7za = !TDEGlobal::dirs()->findExe( "7za" ).isNull();

  if ( have_7z )
    m_archiver_program = m_unarchiver_program = "7z";  // Use 7z
  else if ( have_7za )
    m_archiver_program = m_unarchiver_program = "7za"; // Try 7za
  else
    m_archiver_program = m_unarchiver_program = "7zr";

  verifyCompressUtilityIsAvailable( m_archiver_program );
  verifyUncompressUtilityIsAvailable( m_unarchiver_program );

  m_headerString = "------------------";

  m_repairYear = 5; m_fixMonth = 6; m_fixDay = 7; m_fixTime = 8;
  m_dateCol = 3;
  m_numCols = 5;

  m_archCols.append( new ArchColumns( 5, TQRegExp( "[0-2][0-9][0-9][0-9]" ), 4 ) ); // Year
  m_archCols.append( new ArchColumns( 6, TQRegExp( "[01][0-9]" ), 2 ) ); // Month
  m_archCols.append( new ArchColumns( 7, TQRegExp( "[0-3][0-9]" ), 2 ) ); // Day
  m_archCols.append( new ArchColumns( 8, TQRegExp( "[0-9:]+" ), 8 ) ); // Time
  m_archCols.append( new ArchColumns( 4, TQRegExp( "[^\\s]+" ) ) ); // Attributes
  m_archCols.append( new ArchColumns( 1, TQRegExp( "[0-9]+" ) ) ); // Size
  m_archCols.append( new ArchColumns( 2, TQRegExp( "[0-9]+" ), 64, true ) ); // Compressed Size
}
コード例 #3
0
ファイル: lha.cpp プロジェクト: serghei/kde3-kdeutils
LhaArch::LhaArch( ArkWidget *_gui, const QString & _fileName )
  : Arch( _gui, _fileName )
{
  m_archiver_program = "lha";
  verifyCompressUtilityIsAvailable( m_archiver_program );

  m_headerString = "----";
}
コード例 #4
0
ファイル: zoo.cpp プロジェクト: serghei/kde3-kdeutils
ZooArch::ZooArch( ArkWidget *gui, const QString & fileName )
  : Arch( gui, fileName )
{
  m_archiver_program = m_unarchiver_program = "zoo";
  verifyCompressUtilityIsAvailable( m_archiver_program );
  verifyUncompressUtilityIsAvailable( m_unarchiver_program );

  m_headerString = "----";
}
コード例 #5
0
ファイル: tar.cpp プロジェクト: serghei/kde3-kdeutils
TarArch::TarArch( ArkWidget *_gui,
                  const QString & _filename, const QString & _openAsMimeType)
  : Arch( _gui, _filename), m_tmpDir( 0 ), createTmpInProgress(false),
    updateInProgress(false), deleteInProgress(false), fd(0),
    m_pTmpProc( 0 ), m_pTmpProc2( 0 ), failed( false ), 
    m_dotslash( false ), m_listingThread( 0 )
{
    m_filesToAdd = m_filesToRemove = QStringList();
    m_archiver_program = m_unarchiver_program = ArkSettings::tarExe();
    verifyCompressUtilityIsAvailable( m_archiver_program );
    verifyUncompressUtilityIsAvailable( m_unarchiver_program );

    m_fileMimeType = _openAsMimeType;
    if ( m_fileMimeType.isNull() )
        m_fileMimeType = KMimeType::findByPath( _filename )->name();

    kdDebug(1601) << "TarArch::TarArch:  mimetype is " << m_fileMimeType << endl;

    if ( m_fileMimeType == "application/x-tbz2" )
    {
        // ark treats .tar.bz2 as x-tbz, instead of duplicating the mimetype
        // let's just alias it to the one we already handle.
        m_fileMimeType = "application/x-tbz";
    }

    if ( m_fileMimeType == "application/x-tar" )
    {
        compressed = false;
    }
    else
    {
        compressed = true;
        m_tmpDir = new KTempDir( _gui->tmpDir()
                                 + QString::fromLatin1( "temp_tar" ) );
        m_tmpDir->setAutoDelete( true );
        m_tmpDir->qDir()->cd( m_tmpDir->name() );
        // build the temp file name
        KTempFile *pTempFile = new KTempFile( m_tmpDir->name(),
                QString::fromLatin1(".tar") );

        tmpfile = pTempFile->name();
        delete pTempFile;

        kdDebug(1601) << "Tmpfile will be " << tmpfile << "\n" << endl;
    }
}