[Differential] [Request, 550 lines] D3039: Turn extraction/compression options into classes

elvisangelaccio (Elvis Angelaccio) noreply at phabricator.kde.org
Wed Oct 12 15:31:25 UTC 2016


elvisangelaccio created this revision.
elvisangelaccio added a reviewer: rthomsen.
Restricted Application added a subscriber: kde-utils-devel.
Restricted Application added a project: Ark.

REVISION SUMMARY
  Currently they both are QHash typedefs, which means they are the same thing for the
  compiler. For this reason if we pass a CompressionOptions object where an
  ExtractionOptions object was expected, the code compiles file even if this is a
  major design flaw. Currently we have at least a couple of such bugs, so let's fix
  them all by using proper types.
  
  While at it:
  
  - The default value for the `PreservePaths` option was false, now is true because it's the more common case.
  - The `RemoveRootNode` option was redundant, it was only used together with the `DragAndDrop` one.
  - The `FollowExtractionDialogSettings` was only set but never read, so we can drop it.

TEST PLAN
  Tests still pass.

REPOSITORY
  rARK Ark

BRANCH
  options

REVISION DETAIL
  https://phabricator.kde.org/D3039

AFFECTED FILES
  autotests/kerfuffle/adddialogtest.cpp
  autotests/kerfuffle/addtest.cpp
  autotests/kerfuffle/copytest.cpp
  autotests/kerfuffle/extracttest.cpp
  autotests/kerfuffle/jobstest.cpp
  autotests/kerfuffle/jsonarchiveinterface.cpp
  autotests/kerfuffle/movetest.cpp
  autotests/plugins/cliunarchiverplugin/cliunarchivertest.cpp
  kerfuffle/CMakeLists.txt
  kerfuffle/adddialog.h
  kerfuffle/addtoarchive.cpp
  kerfuffle/archive_kerfuffle.cpp
  kerfuffle/archive_kerfuffle.h
  kerfuffle/cliinterface.cpp
  kerfuffle/cliinterface.h
  kerfuffle/compressionoptionswidget.cpp
  kerfuffle/compressionoptionswidget.h
  kerfuffle/jobs.cpp
  kerfuffle/options.cpp
  kerfuffle/options.h
  part/archivemodel.cpp
  part/archivemodel.h
  part/part.cpp
  part/part.h
  plugins/cliunarchiverplugin/cliplugin.cpp
  plugins/clizipplugin/cliplugin.cpp
  plugins/libarchive/libarchiveplugin.cpp
  plugins/libarchive/readwritelibarchiveplugin.cpp

EMAIL PREFERENCES
  https://phabricator.kde.org/settings/panel/emailpreferences/

To: elvisangelaccio, rthomsen
Cc: kde-utils-devel, tctara
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-utils-devel/attachments/20161012/25146949/attachment.html>


More information about the Kde-utils-devel mailing list