kdeutils/ark

Henrique Pinto stampede at coltec.ufmg.br
Sun Oct 17 02:29:14 CEST 2004


CVS commit by pinto: 

Support for 7-Zip archives.

FEATURE: 48267

In order to deal with 7-Zip archives using Ark, one needs to install p7zip from http://p7zip.sf.net. This needs testing. Ark CVS HEAD is compatible with KDE libs 3.3, so you need not to install an unstable KDE to help in testing. If you can help, please contact me for details.

Please note that adding files to 7-Zip archives seems to be really slow (though much of this slowness might be due to the fact that my only pc is an old K6-2, but anyway it seems to be slower than other archive formats), but nothing can be done on Ark's side to improve this.

Known bugs:
	Timestamps show the wrong year
	Some errors do not trigger Error MessageBoxes.

CCMAIL: kde-quality at kde.org


  A            sevenzip.cpp   1.1 [GPL (v2+)]
  A            sevenzip.h   1.1 [GPL (v2+)]
  M +8 -8      Makefile.am   1.97
  M +2 -0      arch.cpp   1.62
  M +3 -2      arch.h   1.54
  M +2 -0      archiveformatinfo.cpp   1.9


--- kdeutils/ark/Makefile.am  #1.96:1.97
@@ -25,11 +25,11 @@
 libarkpart_la_COMPILE_FIRST = settings.h
 
-libarkpart_la_SOURCES = ark_part.cpp arkfactory.cpp \
-                zip.cpp tar.cpp filelistview.cpp arch.cpp selectDlg.cpp \
-                lha.cpp shellOutputDlg.cpp compressedfile.cpp \
-                zoo.cpp rar.cpp ar.cpp \
-                arkutils.cpp archiveformatdlg.cpp arkwidget.cpp searchbar.cpp \
-                extractdlg.cpp addition.ui  extraction.ui  folders.ui  general.ui \
-                arkviewer.cpp
+libarkpart_la_SOURCES = ark_part.cpp arkfactory.cpp zip.cpp tar.cpp \
+                        filelistview.cpp arch.cpp selectDlg.cpp lha.cpp \
+                        shellOutputDlg.cpp compressedfile.cpp zoo.cpp rar.cpp \
+                        ar.cpp arkutils.cpp archiveformatdlg.cpp \
+                        arkwidget.cpp searchbar.cpp extractdlg.cpp \
+                        addition.ui  extraction.ui  folders.ui  general.ui \
+                        arkviewer.cpp sevenzip.cpp
 
 # this option you can leave out. Just, if you use "make dist", you need it
@@ -41,5 +41,5 @@
                  arkfactory.h arkutils.h archiveformatinfo.h \
                  archiveformatdlg.h searchbar.h extractdlg.h settings.h \
-                 arkviewer.h
+                 arkviewer.h sevenzip.h
 
 METASOURCES = AUTO

--- kdeutils/ark/arch.cpp  #1.61:1.62
@@ -56,4 +56,5 @@
 #include "rar.h"
 #include "ar.h"
+#include "sevenzip.h"
 
 
@@ -374,4 +375,5 @@ Arch *Arch::archFactory(ArchType aType,
         case RAR_FORMAT: return new RarArch(parent, filename);
         case AA_FORMAT: return new ArArch(parent, filename);
+        case SEVENZIP_FORMAT: return new SevenZipArch(parent, filename);
         case UNKNOWN_FORMAT:
         default: return 0;

--- kdeutils/ark/arch.h  #1.53:1.54
@@ -67,6 +67,7 @@ class FileListView;
 class ArkWidget;
 
-enum ArchType {UNKNOWN_FORMAT, ZIP_FORMAT, TAR_FORMAT, AA_FORMAT,
-               LHA_FORMAT, RAR_FORMAT, ZOO_FORMAT, COMPRESSED_FORMAT};
+enum ArchType { UNKNOWN_FORMAT, ZIP_FORMAT, TAR_FORMAT, AA_FORMAT,
+                LHA_FORMAT, RAR_FORMAT, ZOO_FORMAT, COMPRESSED_FORMAT,
+                SEVENZIP_FORMAT };
 
 

--- kdeutils/ark/archiveformatinfo.cpp  #1.8:1.9
@@ -74,4 +74,6 @@ void ArchiveFormatInfo::buildFormatInfos
   addFormatInfo( AA_FORMAT, "application/x-deb", ".deb" );
   addFormatInfo( AA_FORMAT, "application/x-archive",".a" );
+  
+  addFormatInfo( SEVENZIP_FORMAT, "application/x-7z", ".7z" );
 }
 




More information about the kde-quality mailing list