Review Request 115611: KoFileDialogHelper => KoFileDialog refactor

Boudewijn Rempt boud at valdyas.org
Wed Feb 19 11:20:06 GMT 2014


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/115611/#review50209
-----------------------------------------------------------


I still need to find time to test it on windows, but I think it's a change in the right direction in any case, because of https://bugs.kde.org/show_bug.cgi?id=328975 -- for which we need to get the currently selected filter when the user didn't type an extension.

- Boudewijn Rempt


On Feb. 10, 2014, 12:46 a.m., Yue Liu wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/115611/
> -----------------------------------------------------------
> 
> (Updated Feb. 10, 2014, 12:46 a.m.)
> 
> 
> Review request for Calligra.
> 
> 
> Repository: calligra
> 
> 
> Description
> -------
> 
> When I'm porting Q/KFileDialog thing to KoFileDialogHelper I found there are some design issues so refactored KoFileDialogHelper.
> 
> Now it names as KoFileDialog and moved to kowidgets.
> 
> Some use cases of file dialog check return value of dialog.exec(), so static methods are abandoned and a getDialog() method is provided to do whatever you want to the QFileDialog object, using static methods also results in parameter list too long.
> 
> Some use cases just use name filters instead of mimetype, so filter setter refactored to 3 methods:
> setNameFilter(QString), setNameFilters(QStringList), setMimeTypeFilters(QStringList)
> 
> Qt 5.2 introduced QFileDialog::setMimeTypeFilters(QStringList) but its not available through static methods, another excuse to abandon static methods.
> 
> Added getXXX() methods as convenience for what static methods usually do.
> 
> 
> Diffs
> -----
> 
>   krita/gemini/desktopviewproxy.cpp 489a440 
>   krita/plugins/assistants/RulerAssistant/kis_ruler_assistant_tool.cc dc4faa2 
>   krita/plugins/extensions/dockers/flipbook/flipbookdocker_dock.cpp ad95ef6 
>   krita/plugins/extensions/dockers/lut/lutdocker_dock.cpp bd5a8e3 
>   krita/plugins/extensions/imagesplit/imagesplit.cpp 1928893 
>   krita/plugins/extensions/separate_channels/kis_channel_separator.cc d6d1769 
>   krita/ui/dialogs/kis_dlg_file_layer.cpp ec5aa52 
>   krita/ui/dialogs/kis_dlg_preferences.cc c02577f 
>   krita/ui/kis_image_manager.cc 8aeddd3 
>   krita/ui/kis_node_manager.cpp 25ca964 
>   krita/ui/widgets/KisFlipbookSelector.cpp 9384790 
>   krita/ui/widgets/kis_color_space_selector.cc 73bde3b 
>   libs/main/CMakeLists.txt ac708c8 
>   libs/main/KoDocument.cpp 70c838c 
>   libs/main/KoFileDialogHelper.h 4afafd4 
>   libs/main/KoFileDialogHelper.cpp 2483bc4 
>   libs/main/KoMainWindow.cpp 11a7248 
>   libs/main/KoOpenPane.cpp bf5b219 
>   libs/widgets/CMakeLists.txt 01f015b 
>   libs/widgets/KoEditColorSetDialog.cpp bf4eabe 
>   libs/widgets/KoFileDialog.h PRE-CREATION 
>   libs/widgets/KoFileDialog.cpp PRE-CREATION 
>   sheets/dialogs/CSVDialog.cpp 4e9d7ed 
> 
> Diff: https://git.reviewboard.kde.org/r/115611/diff/
> 
> 
> Testing
> -------
> 
> Works on OSX.
> 
> But I remember the reason static methods are used is related to some kfiledialog-related bugs on Windows, please test whether KFileDialog is still used when setting UseNativeDialog=true in kdeglobals on Windows.
> 
> 
> Thanks,
> 
> Yue Liu
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/calligra-devel/attachments/20140219/aca332c8/attachment.htm>


More information about the calligra-devel mailing list