[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-core-devel
Subject:    Review Request: Pluggable KFileDialog/KAbstractFileModule
From:       "Sebastian Trueg" <trueg () kde ! org>
Date:       2009-08-26 9:37:05
Message-ID: 20090826093705.23934.64436 () localhost
[Download RAW message or body]


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://reviewboard.kde.org/r/1407/
-----------------------------------------------------------

Review request for kdelibs.


Summary
-------

KIO already loads the widget used in the KFileDialog dynamically from libkfilemodule. \
The base class is KAbstractFileModule. However, the loaded lib/plugin is fixed. This \
small patch changes the situation making it really pluggable by using the standard \
KService procedure of loading plugins. It allows to easily change the file dialog \
implementation by creating a plugin of type "KIO/FileModule" and adding its name to \
the "kfilemodulerc" config file. The reason for this is that in the GSoC Alessandro \
Sivieri developed a replacement for the file dialog based on Nepomuk. He tried to \
patch it into kdelibs but it was a mess due to all the dependencies. With this \
approach implementations can easily be switched.

Open issues:
* the patch uses KService::serviceByDesktopName but also contains commented code \
                using KServiceTypeTrader. I am not sure which is preferable.
* I left in the legacy code of loading the filemodule from libkfilemodule. I suppose \
this should be removed.


Diffs
-----

  trunk/KDE/kdelibs/kfile/CMakeLists.txt 1013393 
  trunk/KDE/kdelibs/kfile/kfilemodule.desktop PRE-CREATION 
  trunk/KDE/kdelibs/kfile/kfilemodule.h 1013393 
  trunk/KDE/kdelibs/kfile/kfilemodule.cpp 1013393 
  trunk/KDE/kdelibs/kio/CMakeLists.txt 1013393 
  trunk/KDE/kdelibs/kio/kfile/kfiledialog.cpp 1013393 

Diff: http://reviewboard.kde.org/r/1407/diff


Testing
-------


Thanks,

Sebastian


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic