[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